Question

Comme on le voit dans RFC2289 (S / KEY), il y a une liste de mots qui doit être utilisé lors de la conversion de la chaîne hexadécimale dans un format lisible.

Comment puis-je aller sur le faire?

Le RFC mentionne:

  

Le mot de passe unique est donc   converti, et accepté comme un   séquence de six courtes (1 à 4 lettre)   Mots anglais. Chaque mot est choisi   à partir d'un dictionnaire de 2048 mots; à 11 heures   bits par mot, tous les mots de passe uniques   peut être codée.

     

En savoir plus:    http://www.faqs.org/rfcs/rfc1760.html#ixzz0fu7QvXfe

Est-ce que cela signifie convertir un hexagone en décimal puis en servir comme un index pour un tableau de mots. L'autre chose qu'il pourrait être utilise un codage de texte par exemple 1111 chien puissance égale dans le codage UTF-8

Merci d'avance pour votre aide!

Était-ce utile?

La solution

Il n'y a pas besoin de convertir en décimal. Si votre valeur hexadécimale est une chaîne, juste le convertir en un certain nombre (par exemple, avec Integer.valueOf(value, 16)). Ensuite, utilisez ce numéro pour rechercher le mot. Si vous pouvez stocker le dictionnaire tout en mémoire, utilisez le numéro que l'indice. Si vous ne pouvez pas le stocker dans la mémoire, l'utiliser pour contrôler la distance dans le fichier dictionnaire que vous regardez (si chaque article est sur une ligne distincte, lu que de nombreuses lignes dans le fichier). Si vous avez une base de données quelque part, utilisez le numéro comme clé et sélectionnez par clé de la table.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top