40 votes

Haut de Hachage et les Algorithmes de Cryptage?

Je sais que beaucoup de projets web utilisent encore l'ancienne MD5() ou SHA1() lors de la création de tables de hachage. Cependant, dans mes projets, j'ai été en utilisant SHA256 pour plus fort/plus hachages depuis la dernière fois que j'ai vérifié, il y avait une question à propos de laquelle les hachages ont été les meilleurs à utiliser. Donc j'ai choisi le standard du gouvernement (à l'époque).

Cependant, je me demandais si dans les deux dernières années, nous avons maintenant une plus recommandé de hachage algos?

Voici quelques algorithmes de hachage:

md4/5, sha, ripemd, whirlpool, tiger, snefru, gost, adler32, crc32, haval

Qui sont différents algorithmes de chiffrement tels que:

3DES, ARCFOUR, BLOWFISH, CAST_256, CRYPT, DES, DES_COMPAT, ENIGMA, GOST, IDEA, 
LOKI97, MARS, PANAMA, RIJNDAEL, RC6_256, SAFER64, SAFER128, SAFERPLUS,
SERPENT, SKIPJACK, TEAN, THREEWAY, TRIPLEDES, TWOFISH, WAKE, XTEA,

Comme une note de côté, je l'ai entendu RIJNDAEL gagné un concours et sera le remplacement DES dans certaines applications et blowfish a également eu quelques belles choses à dire à ce sujet.

55voto

Jordan Points 12780

Réponse rapide: Pour le chiffrement, l'utilisation AES/Rijndael avec une taille de clé de 256, pour utiliser le hachage SHA-256 ou plus.

Le chiffrement

AES est un standard de l'utilisation de la Rijndael de chiffrement, et est la plus largement acceptée algorithme de chiffrement. Il n'est pas nécessairement le plus sécurisé possible mathématiquement. Les seules attaques connues sur l'instant de côté sont les attaques par canaux, mais c'est la faute de la mise en œuvre ou de la plate-forme de cryptage sur.

Le Rijndael de chiffrement a été choisi parce qu'il semble être le plus performant de l'algorithme dans une variété de systèmes différents de tous les bits tailles testé, et il est également extrêmement sûr. Si vous avez le contrôle sur vos systèmes, en remplacement de gouvernement-norme de cryptage AES sera une grande étape.

D'autres hautement sécurisé sont les algorithmes de Twofish, Serpent et RC6.

Les algorithmes suivants sont dépassés et soit dépréciée en faveur d'une nouvelle chiffrement, ou sont une parodie de l'informatique: DES, Triple DES, Blowfish, et de MARS.

Le hachage

Mon hypothèse, c'est que vous êtes le hachage avec l'intention de la sécurité, puisque vous êtes en posant la question, plus précisément avec la sécurité à l'esprit.

Comme d'autres l'ont dit, Md4/MD5 sont relativement "facile" à casser, et le hachage SHA-1 a des faiblesses dans certaines situations. Le CRC est couramment utilisé pour la détection de l'erreur, donc peut-être pas le meilleur choix pour le hachage en soi.

Pour une table de hachage, fondamentalement, vous voulez juste choisir la taille du plus grand bloc possible, et d'utiliser un sel de valeur pour éviter l'arc-en-ciel attaques. SHA-256 et ci-dessus sont encore considérés comme très sûrs, bien que votre mise en œuvre est toujours le point faible avec le hachage.

5voto

Juri Robl Points 2238

Il y a un concours pour le nouveau SHA-3 cours au NIST. Il y a des entrées par une célèbre cryptographes comme Knudsen et Schneier.

Le gagnant est Keccak, qui est standardisée pour le moment. Les autres depuis le dernier groupe sont probablement de bons à utiliser trop. Vous pouvez rechercher les propriétés que vous souhaitez. Si vous souhaitez utiliser le gagnant, vous pouvez régler certains paramètres pour le rendre plus sûr et moins rapide (bien que ce ne sera pas SHA-3 ou plus).

2voto

Noah Lavine Points 675

Je ne sais pas à propos de la plupart de ceux-ci, mais DES par elle-même n'est pas sécurisé (voir L'article de Wikipedia). Triple DES peut-être, mais la norme de nos jours AES (anciennement connu sous le Rijndael), donc je voudrais aller avec la place.

Aussi, j'ai remarqué que vous n'incluez pas de RSA ou de la clé publique elliptique-courbe de cryptosystèmes dans votre liste. J'imagine que c'est parce que vous savez qu'ils ne sont pas adaptés pour ce que vous voulez, mais si vous n'avez pas pensé à eux, alors vous pourriez envisager de leur.

1voto

Seth Points 18568

Le but d'une valeur de hachage est de représenter uniquement certaines données par un nombre. Tous des algorithmes de hachage faire assez bien. Md4 peut être inversée en quelques heures sur un Pentium4. Md5 peut être inversé dans certaines situations. Toutefois, cela ne signifie pas que vous ne devriez pas utiliser l'un de ces algorithmes, il signifie simplement que vous devez être conscient de l'algorithme que vous utilisez et ce que vous l'utilisez pour.

Donc, la recommandation est la même comme elle l'a toujours été: utiliser l'algorithme approprié pour le type de données que vous hachage / chiffrement.

(Vous avez oublié d'inclure ROT13 dans la liste cryptage)

1voto

andand Points 7779

Les algorithmes de vous de la liste sont principalement destinés à des applications commerciales. Il y a un certain nombre d' autres, que la NSA a approuvé, pour des usages différents pour le gouvernement Fédéral AMÉRICAIN. Certains des algorithmes de Type 1 sont en fait classés (par exemple, BATON).

Aussi, l' AES (Advanced Encryption Standard) est en fait un subest du possible Rijndael modes. L'AES spécification exige de 128, 192 ou 256 bits de la clé de tailles et de taille de bloc de 128 bits. Rijndael peut également fonctionner sur des tailles de blocs de 192 ou 256 bits, qui ne font pas partie du standard AES.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X