Quelqu'un at-il des exemples de l' algorithme MD5 pour un microcontrôleur (de préférence un 8 bits)? Notre projet va utiliser un appareil Microchip série PIC18.
microcontroller
pic
J. Polfer
la source
la source
Voici l'implémentation MD5 de l'EtherNut (basé sur AVR)
la source
Je m'en tiendrai à une implémentation réputée et connue de MD5, et je resterais à l'écart des bibliothèques que vous trouverez auprès de fournisseurs tiers. Le RFC 1321 original qui décrivait MD5 a un exemple d'implémentation C.
Rappel: les faiblesses connues de MD5 sont les attaques par collision et non les attaques de préimage , il convient donc à certaines applications cryptographiques mais pas à d'autres. Si vous ne connaissez pas la différence, vous ne devriez pas l'utiliser, mais ne la jetez pas complètement. Voir http://www.vpnc.org/hash.html .
la source
Vous pouvez trouver une bonne description et un pseudocode pour l'algorithme MD5 wikipedia à http://en.wikipedia.org/wiki/MD5
Vous pouvez également envisager de publier cette question sur stackoverflow car elle est davantage orientée vers les questions de programmation.
la source
à partir de la page wikipedia sur MD5 :
et des chercheurs SSL sur la même page:
Je comprends que vous ne voulez probablement pas entendre cela, mais avez-vous vraiment besoin de MD5? Il ne devrait pas être utilisé à des fins cryptographiques car il est trop peu sûr (et il y a des cargaisons de tables arc-en-ciel disponibles). Si vous cherchez quelque chose pour simplement valider les données, regardez dans CRC (code ici ) qui est moins cher en termes de calcul. Si vous êtes l' utilisez à des fins cryptographiques bien, alors je suggère de passer à SHA ? Le seul problème est que la plupart des algorithmes sécurisés cryptographiquement ne fonctionnent pas particulièrement bien sur les microcontrôleurs. Je sais qu'il peut sembler que le MD5 est "assez bon", mais la manière d'ingénierie est de faire preuve de prudence.
la source