Red de conocimiento del abogados - Ley de patentes - ¿Cuál es el principio del descifrado MD5?

¿Cuál es el principio del descifrado MD5?

Presentación de la información básica del algoritmo de cifrado MD5. El nombre completo de MD5 es Message-Digest

Algoritmo

5. y RSA a principios de la década de 1990.

Datos

Seguridad

Inventado por MD2, MD3 y MD4.

Message-Digest generalmente se refiere a la transformación Hash de una cadena de bytes (Mensaje), que consiste en transformar una cadena de bytes de cualquier longitud en un entero grande de cierta longitud. Tenga en cuenta que uso la palabra "cadena de bytes" en lugar de "cadena" porque esta transformación solo tiene que ver con el valor del byte, no con el juego de caracteres o la codificación.

MD5 convierte una "cadena de bytes" de cualquier longitud en un entero grande de 128 bits y es un algoritmo de conversión de cadenas irreversible. En otras palabras, incluso si ve el programa fuente y la descripción del algoritmo. También es imposible convertir un valor MD5 a la cadena original. Desde un punto de vista matemático, se debe a que hay infinitas cadenas originales. Esto es un poco como una función matemática que no tiene una función inversa.

Una aplicación típica de MD5 es generar una huella digital en un mensaje (cadena de bytes) para evitar que sea "manipulado". Por ejemplo, escribe un párrafo en un archivo llamado readme.txt, genera un valor MD5 para este readme.txt y lo registra. Luego puede difundir este archivo a otros. Si otros modifican el archivo, cualquier contenido lo encontrará. cuando vuelves a calcular el MD5 de este archivo. Si existe una agencia de certificación de terceros, el uso de MD5 también puede evitar el "repudio" del autor del archivo. Esta es la llamada aplicación de firma digital.

MD5 también se usa ampliamente en tecnología de cifrado y descifrado. En muchos sistemas operativos, la contraseña del usuario se guarda en forma de valor MD5 (u otros algoritmos similares). Calcule la contraseña ingresada por el usuario en un valor MD5 y luego compárelo con el valor MD5 guardado en el sistema, pero el sistema no "sabe" cuál es la contraseña del usuario.

El método que utilizan algunos piratas informáticos para descifrar dichas contraseñas es un método llamado "ejecución de diccionario". Hay dos formas de obtener un diccionario: una es una colección diaria de tablas de cadenas utilizadas como contraseñas y la otra se genera mediante un método de permutación y combinación. Primero, use el programa MD5 para calcular los valores MD5 de estos elementos del diccionario. y luego use los valores MD5 del objetivo que se buscan en este diccionario.

Incluso suponiendo que la longitud máxima de la contraseña es 8 y que la contraseña solo puede contener letras y números, ***26 26 10=62 caracteres, el número de elementos en el diccionario formado por permutación es P(62, 1) P(62,2)....P(62,8), que ya es un número astronómico. Para almacenar este diccionario, se requiere un grupo de discos a nivel de terabytes, y este método también tiene un. requisito previo. Esto solo es posible si se puede obtener el valor MD5 de la contraseña de la cuenta de destino.

En muchas aplicaciones comunitarias y de comercio electrónico, la gestión de las cuentas de los usuarios es la función básica más utilizada.

Aunque muchos servidores de aplicaciones proporcionan estos componentes básicos, muchas aplicaciones se desarrollan para una mayor gestión. Para mayor flexibilidad, los desarrolladores aún prefieren usar bases de datos relacionales para administrar usuarios. El enfoque perezoso es que las contraseñas de los usuarios a menudo se almacenan directamente en la base de datos en texto sin formato o después de una transformación simple. Por lo tanto, estas contraseñas de usuario son muy importantes para los desarrolladores de software o sistemas. Se puede decir que no existe ninguna confidencialidad para los administradores. El propósito de este artículo es presentar la implementación de MD5 Java

Bean y, al mismo tiempo, dar un ejemplo del uso de MD5 para procesar los datos del usuario. Contraseña de la cuenta. Este método hace que la gestión Ni los programadores ni los programadores puedan ver las contraseñas del usuario, aunque sí pueden inicializarlas. Pero lo importante es proteger los hábitos de configuración de contraseñas de los usuarios