Bonjour,
Je suis en train de développer un «petit» projet personnel qui consiste en la programmation d'une bibliothèque pour la communication réseau via le protocole TCP. Toutefois, je bute sur le cas des «messages longs», c'est-à-dire des messages requêtes et des réponses dont la taille peut (aisément) excéder le kibioctet. Je considère qu'il est nécessaire de s'assurer de l'intégrité de l'information alors transmise. Voici comment je compte m'y prendre.
- Envoi du paquet de début de message long avec l'identifiant du message, la taille des données à transmettre et leur signature.
- Envoi de chaque paquet avec en en-tête la taille des données transmises (32 kio max.) et leur signature.
- Envoi du paquet de fin de message long.
Cette procédure utilisera un système d'acquittement et de renvoi pour éviter tout problème dû à la corruption des données lors de leur transmission. Par ailleurs, si les données sont cryptées, alors les signatures envoyées concerneront le chiffre et non pas les données originelles.
Le cœur de mon problème concerne la génération des signatures. Je souhaite utiliser une fonction de hachage, mais je ne sais pas si je peux me contenter d'une fonction «simple», comme le MD5 ou le SHA-0, ou si je dois utiliser une fonction «plus élaborée», comme le SHA-2 ou le SHA-3. Ce dilemme me turlupine et mon manque d'expérience en la matière m'empêche de le résoudre.
Merci d'avance pour votre aide.
Adishatz!
PS: Veuillez m'excuser si j'ai créé ce sujet dans la mauvaise rubrique.
Partager