Colección de citas famosas - Colección de poesías - Revisión de conocimientos relacionados con la criptozoología

Revisión de conocimientos relacionados con la criptozoología

La criptografía es la ciencia técnica que estudia la elaboración y descifrado de códigos.

La historia de la criptografía se remonta a miles de años. Hay registros del uso de la criptografía en la antigüedad y en la actualidad, tanto en el país como en el extranjero. Históricamente, las guerras han proporcionado en gran medida un entorno de aplicación para la criptografía. y la criptografía promovida Según la historia del desarrollo de la criptografía, la criptografía se puede dividir aproximadamente en tres etapas: cifrado manual, cifrado mecánico y cifrado por computadora. Los siguientes son algunos desarrollos importantes en la criptografía moderna.

En 1949, Claude Elwood Shannon, el fundador de la teoría de la información, publicó el artículo "Teoría de la comunicación de los sistemas secretos", que estableció la criptografía sobre una base matemática estricta y sentó las bases teóricas de la criptografía. desde entonces se ha convertido en una verdadera ciencia.

En 1976, los expertos en criptografía Bailey Whitfield Diffie y Martin Edward Hellman publicaron el artículo "New Directions in Cryptography", resolviendo el problema Para resolver el problema de la gestión de claves, la clave se divide en clave pública cifrada y se descifra. clave privada y se propone el algoritmo de intercambio de claves Diffie-Hellman.

En 1977, el Instituto Nacional de Estándares y Tecnología formuló el Estándar de cifrado de datos (Estándar de cifrado de datos) y lo promulgó como estándar nacional.

En 1977, Ron Rivest, Adi Shamir y Leonard Adleman del MIT propusieron RSA. El algoritmo de cifrado, RSA, está compuesto por las letras iniciales de sus apellidos escritas juntas.

En abril de 1997, ANSI en los Estados Unidos lanzó una solicitud para AES (estándar de cifrado avanzado) y estableció un grupo de trabajo AES para este propósito. Después de varios años de investigación, finalmente fue adoptado por Joan Daemen. de Bélgica y El algoritmo Rijndael fue diseñado por Vincent Rijmen y se convirtió en un estándar de cifrado efectivo el 26 de mayo de 2002.

Dividido por sistema de criptografía: La criptografía simétrica y la criptografía asimétrica corresponden a algoritmos de criptografía simétrica y algoritmos de criptografía asimétrica.

El algoritmo de resumen de mensajes también se llama algoritmo hash. Su núcleo radica en la naturaleza unidireccional de la función hash, es decir, el valor hash correspondiente se puede obtener a través de la función hash, pero el hash. El valor no se puede utilizar para inferir el valor hash. La información original es la raíz de la seguridad del algoritmo de resumen del mensaje. Generalmente usamos este algoritmo para juzgar la integridad de los datos.

Los algoritmos de resumen de mensajes comunes son MD (Message Digest), SHA (Secure Hash Algorithm), HMAC (Hash Message Authentication Code), etc., que a menudo se utilizan para verificar la integridad de los datos y son el núcleo. Algoritmos de algoritmos de firma digital.

Utilicemos la llamada de interfaz de WeChat Pay para analizar cómo se aplica el algoritmo de resumen. Primero, puede abrir los siguientes documentos relacionados de WeChat Pay:

Documento de interfaz de pedido unificado de WeChat Pay

Proceso de firma de pago de WeChat

El cifrado simétrico simplemente significa que el cifrado y el descifrado utilizan la misma clave, y el algoritmo de descifrado es la operación inversa del algoritmo de cifrado.

Los algoritmos de cifrado simétrico incluyen principalmente DES, variante del algoritmo DES DESede, algoritmo AES de reemplazo de DES, IDEA, PBE, etc.

Los algoritmos de cifrado asimétrico se denominan de clave dual o de clave pública. algoritmos de cifrado, a diferencia del algoritmo de cifrado simétrico, el algoritmo de cifrado simétrico solo tiene una clave y el algoritmo de cifrado asimétrico tiene una clave pública y una clave privada, una se usa para cifrar y la otra para descifrar.

En pocas palabras: para un par de clave pública A y clave privada B, si A cifra, solo B puede descifrar, y si B cifra, solo A puede descifrar.

El algoritmo de cifrado asimétrico se deriva del algoritmo DH (Diffie-Hellman, algoritmo de intercambio de claves) propuesto conjuntamente por W.Diffie y M.Hellman***. Este algoritmo sentó las bases para el algoritmo de cifrado asimétrico. Primero comprendamos el algoritmo de intercambio de claves DH y el algoritmo ECDH.

¿Por qué es necesario un algoritmo de intercambio de claves? Anteriormente mencionamos que el algoritmo de cifrado simétrico utiliza la misma clave para cifrar y descifrar. Podemos pensar en ello, ¿cómo podemos dar una clave de forma segura a la otra parte? Por ejemplo, a menudo usamos HTTPS. Todo el mundo dice que HTTPS es seguro después de estar cifrado. Entonces, ¿de dónde viene la clave de cifrado? Obviamente, cuando accedemos a una dirección https, no tenemos una clave de antemano. Durante el proceso de acceso, el cliente y el servidor negocian la clave a través del protocolo de enlace. Si el servidor transmite la clave directamente en la red, definitivamente lo hará. ser inseguro. Entonces, ¿qué pasó exactamente en este proceso? Escribiré en detalle más adelante cuando analice https específicamente. Primero comprendamos el algoritmo aquí.

La seguridad del algoritmo de intercambio de claves DH se basa en el problema del logaritmo discreto en campos finitos

El algoritmo de intercambio de claves ECDH se basa en el cifrado de curva elíptica

Desde arriba Como se puede ver en la figura, ambas partes que interactúan con el algoritmo de intercambio de claves DHamp ECDH revelarán una parte de la información a la otra parte, la llamada clave pública. Incluso si esta parte es obtenida por otros. No amenazará la clave final. Este es un punto crítico. Las claves públicas publicadas por las partes A y B son diferentes, pero las claves finales generadas son consistentes en ambos lados. Si está interesado, puede hacerlo. Verifique la fórmula del algoritmo detallado, porque no es necesario transmitir la clave final a la otra parte, por lo que la seguridad está garantizada en gran medida.

Algoritmo de cifrado asimétrico:

Los algoritmos de cifrado asimétrico típicos incluyen RSA, ECC y ElGamal. El algoritmo RSA se basa en el problema de la factorización de números grandes, mientras que los algoritmos ElGamal y ECC lo están. Basado en un problema de logaritmo discreto.

Del modelo de transmisión de mensajes anterior, podemos ver que el algoritmo de cifrado asimétrico sigue los principios de "cifrado de clave privada, descifrado de clave pública" y "cifrado de clave pública, descifrado de clave privada", pero hay uno Lo que hay que tener en cuenta es que la clave pública es pública, por lo que los escenarios en los que se utiliza deben considerarse en función de las características del algoritmo. Por ejemplo, dado que la clave pública es pública, ¿es apropiado utilizar la clave privada? cifrar datos confidenciales y pasarlos a un tercero? Obviamente no es adecuado, porque la clave pública es pública y otros pueden obtener la clave pública, lo que significa que los datos que usted cifra se pueden descifrar, por lo que es adecuado para escenarios como el cifrado de clave privada. La clave pública solo se usa para verificar. Contenido cifrado. Cualquiera puede verificarlo. En este escenario, no importa que otros atacantes vean el contenido cifrado. Incluso se dice que el contenido es originalmente público. Basta con que el destinatario utilice la clave pública. que el contenido no ha sido manipulado, por eso solemos llamarlo algoritmo de firma de clave privada, firma de verificación de clave pública", otro punto, "cifrado de clave pública, descifrado de clave privada", porque la clave privada solo está en nuestras manos. , entonces en teoría solo nosotros podemos descifrarlo, esto es seguro, certificado https Esto se reflejará durante los procesos de verificación y protocolo de enlace.

El algoritmo de firma digital puede considerarse como un algoritmo de resumen de mensajes con una clave, y esta clave incluye una clave pública y una clave privada. En otras palabras, el algoritmo de firma digital es una combinación de un algoritmo de cifrado asimétrico y un algoritmo de resumen de mensajes, y sigue el método de autenticación de firma de "firma de clave privada, verificación de clave pública".

Los algoritmos de firma digital son la base de la Infraestructura de Clave Pública (PKI) y de muchos mecanismos de seguridad de red (SSL/TLS, VPN, etc.).

El algoritmo de firma digital es necesario para poder verificar la integridad de los datos, autenticar la fuente de datos y desempeñar una función antirepudio.

Los algoritmos de firma digital incluyen principalmente RSA, DSA y ECDSA***. El algoritmo RSA se deriva del problema de factorización de enteros y los algoritmos DSA y ECDSA se derivan del problema de logaritmos discretos.

Tomemos como ejemplo el esquema de firma de la interfaz en Ant Financial Open Platform. Para obtener instrucciones detalladas, puede abrir el siguiente documento:

Área de firma de Ant Open Platform

.