¿Alguien tiene algún ejemplo del algoritmo MD5 para un microcontrolador (preferiblemente uno de 8 bits)? Nuestro proyecto va a utilizar un dispositivo de la serie Microchip PIC18.
¿Alguien tiene algún ejemplo del algoritmo MD5 para un microcontrolador (preferiblemente uno de 8 bits)? Nuestro proyecto va a utilizar un dispositivo de la serie Microchip PIC18.
Si está buscando una implementación en C, la pila TCP / IP de Microchip tiene una implementación de MD5 en el archivo Hashes.c
Aquí está la implementación de MD5 de EtherNut (basado en AVR)
Me quedaría con una implementación conocida de MD5 y me mantendría alejado de las bibliotecas que se encuentran en proveedores externos. El RFC 1321 original que describe MD5 tiene una implementación de C de muestra.
Recordatorio: las debilidades conocidas de MD5 son los ataques de colisión y no ataques de preimagen , por lo que es adecuado para algunas aplicaciones criptográficas pero no para otras. Si no sabes la diferencia, no deberías usarla, pero no la deseches por completo. Consulte enlace .
Puede encontrar una buena descripción y un pseudocódigo para la wikipedia algoritmo MD5 en enlace
También puede considerar publicar esta pregunta en stackoverflow ya que está más orientada a las preguntas de programación.
en la página de wikipedia en MD5 :
... se ha demostrado que MD5 no es resistente a las colisiones, por lo que MD5 no es adecuado para aplicaciones como certificados SSL o firmas digitales que dependen de esta propiedad.
y de los investigadores de SSL en la misma página:
También esperamos que se reconsidere el uso de MD5 en otras aplicaciones.
Entiendo que probablemente no quieras escuchar esto, pero ¿realmente necesitas MD5? No debe usarse con fines criptográficos, ya que es demasiado inseguro (y hay muchos barcos de tablas de arco iris disponibles). Si está buscando algo para validar los datos, consulte CRC (código aquí ) que es computacionalmente más barato. Si lo estás usándolo para propósitos criptográficos, entonces, ¿puedo sugerir que te mudes a SHA ? El único problema es que la mayoría de los algoritmos criptográficos seguros no se ejecutan particularmente bien en los microcontroladores. Sé que puede parecer que el MD5 es "suficientemente bueno", pero la forma de ingeniería es errar por el lado de la precaución.
Lea otras preguntas en las etiquetas microcontroller pic