8
votes

Envoi d'IV avec du texte en chiffrement, sûr?

Il y a eu de nombreuses questions concernant la génération IV, le cryptage et le partage du IV entre l'expéditeur et le récepteur, mais je souhaite faire un poste explicite concernant la meilleure façon d'envoyer le IV de l'expéditeur au destinataire.

de tous les messages que j'ai vus jusqu'à présent, je suis incertain quant à savoir s'il est prudent d'envoyer le IV dans "Plaintext" en le préparant sur le texte du chiffrement. La première question est-elle en sécurité?

Deuxièmement, il existe une manière plus sûre de partager un IV entre l'expéditeur et le récepteur lors de la communication en échangeant des messages?

acclamations


1 commentaires

Je sais que c'est une vieille question, mais si ma réponse était utile, pourriez-vous l'accepter comme répondu? Merci beaucoup.


3 Réponses :


1
votes

Oui, il est prudent de faire en texte brut avec la mise en garde qu'ils ne devraient pas être répétées.


0 commentaires

2
votes

Oui, c'est sûr. De nombreux protocoles tels que WEP et WPA transmettront le IV en texte brut. C'est généralement une exigence car il est impossible de déchiffrer le message sans connaître le IV. L'attaque de la WEP la plus courante consiste à capturer des milliers de IV, mais c'est parce que RC4 est vulnérable à un Attaque . Si vous utilisez un chiffre symétrique sécurisé, vous n'avez pas à vous inquiéter.

Une vulnérabilité connue que je connaisse concernant IV's est CWE-329 , ce qui nécessite que le IV soit aléatoire, et C'est pourquoi C'est un problème. Un autre problème potentiel est crypter 2 messages avec le même IV. Ceci est un problème, car un attaquant peut-être capable d'identifier un autre texte de texte en chiffrement en cryptant de nombreux messages connus, en faisant efficacement des suppositions quant à ce que le texte de chiffrement capturé peut-être sans connaître la clé.


0 commentaires

14
votes

Oui, il est prudent d'envoyer le IV dans le claire. Voici la «preuve» de pourquoi:

Prenez le mode CBC par exemple:

text alt

Vous pouvez voir que le chiffretext d'un bloc est xored avec le clairextel du bloc suivant. La raison pour laquelle nous avons besoin d'un IV est parce que sur le premier bloc, il n'y a pas de chiffres antérieur à utiliser. S'il y avait un risque de sécurité avec le SECRED SECRE SECRET, le risque de sécurité serait présent pour chaque bloc après, puisque le CIPHERText sert le même rôle que le IV.

Cela étant dit, vous devez vous assurer de votre Mac. En fonction de la manière dont vous effectuez des codes d'authentification de message, une personne altérée avec l'IV pourrait altérer le texte en texte résultant sur le déchiffrement. Le cryptage seul ne fournit pas d'intégrité des messages.

Aussi, pour la génération IV, cela dépend de vos besoins. Mais le plus souvent, votre IV doit être aléatoire et non prévisible.


4 commentaires

Merci Mattjf. Bonne explication. Sur une note connexe, quelle est la relation entre la taille du plaintre d'origine et le chiffretext suppléant? J'aurais probablement besoin de connaître les tailles si je vais extraire les pièces pertinentes.


Malheureusement, la réponse est que cela dépend. En fonction du chiffre et du mode que vous utilisez, il variera. CBC est le mode le plus populaire qui nécessite le IV et nécessite que le texte en clair soit rembourré à la taille du bloc. Donc, disons que vous voulez crypter 4 octets avec AES CBC. Vous auriez besoin de 16 octets pour le IV et que ces 4 octets doivent être rembourrés à 16 octets, pour un total de 32 octets. Vous pouvez utiliser le vol de CIPHERText pour empêcher l'expansion du bloc ou utiliser le mode CTR AES. Comment vous macez vos données? Vous devez vous assurer que personne ne peut altérer vos données cryptées.


Suite: Si vous pouvez donner aux primitives, vous êtes contraint d'utiliser, nous pouvons faire une meilleure recommandation. Mais, honnêtement, vous ne devriez pas concevoir des cryptosystèmes. Pouvez-vous utiliser une norme ou un protocole existant? Qu'est-ce que vous essayez exactement d'accomplir?


Heureux ça aide. Il n'est certainement pas intuitif et semble que l'IV devrait être protégé. Dans d'autres modes tels que CTR, il n'y a aucune exigence pour le IV même d'être aléatoire, de sorte que certains protocoles utilisent des éléments tels que les chômages ou les numéros de messages.