2016-06-05 4 views
0

Je souhaite être plus efficace dans la génération d'une clé aléatoire et d'une IV aléatoire pour le chiffrement. Mais est-il faisable et sûr d'utiliser la clé aléatoire comme IV?Pouvons-nous utiliser la clé comme IV pour AES?

+1

Je vote pour clore cette question hors-sujet parce qu'il ne s'agit pas de programmation. Il est également un double cross-site de [Problèmes avec l'utilisation de clé AES comme IV CBC-Mode] (http://crypto.stackexchange.com/questions/16161/problems-with-using-aes-key-as-iv- mode in-cbc). –

Répondre

1

Vous pourriez mais ce ne serait pas sécurisé.

La pratique habituelle consiste à utiliser une séquence d'octets aléatoires cryptographiquement sécurisés pour le iv et de préfixer le iv aux données cryptées. Cela permet à la fonction de décryptage d'avoir le même iv. En utilisant un iv aléatoire si le même message est chiffré avec la même clé, le texte chiffré sera différent, usia la clé autorisera le même texte chiffré. Avoir le même texte chiffré peut donner des informations cruciales.

L'efficacité de la négociation pour la sécurité n'est pas une bonne idée et s'il n'est pas prouvé que l'efficacité supplémentaire est requise par les tests de performance, c'est une optimisation prématurée.

Donald Knuth:

Le vrai problème est que les programmeurs ont passé beaucoup trop de temps à se préoccuper de l'efficacité dans les mauvais endroits et au mauvais moment; L'optimisation prématurée est la racine de tout mal (ou du moins de la plus grande partie) dans la programmation.

0

Vous doublez votre problème de sécurité. Un IV ordinaire peut être envoyé tel quel avec le message cyphertext, généralement ajouté à celui-ci. Si votre IV est la même que la clé, alors vous devez garder le IV aussi sûr que la clé, ce qui signifie que vous ne pouvez pas faire l'avant habituel. Vous devrez ajouter un processus d'échange IV à votre processus d'échange de clés.

Tout ce travail supplémentaire. Plus facile d'utiliser un CSPRNG standard pour produire votre IV et le préfixer.

+0

Vrai, mais il manque le point d'un IV, ce qui permet l'utilisation d'une seule touche pour de nombreux messages différents. Avec la clé = IV, vous devez changer une nouvelle clé pour chaque message de sécurité. Un IV est seulement bon pour un message; une clé peut être utilisée pour de nombreux messages, tant qu'ils ne sont pas trop grands. – rossum

+0

Oui et ce n'est pas le message de la réponse. La réponse est de garder quelque chose de plus secret alors qu'en fait il n'y a rien de plus. – zaph