Los algoritmos de clave asimétrica pertenecen al campo de la criptografía. Son algoritmos que pueden cifrar y descifrar información. Sus operaciones requieren una clave pública y una clave privada. La clave pública puede ser conocida por otros. La clave privada no debe ser conocida por nadie excepto el propietario. Las dos claves pueden cifrar y descifrar entre sí. Debido a que el cifrado y el descifrado utilizan dos claves diferentes, los algoritmos se llaman algoritmos de clave asimétrica.
Los algoritmos correspondientes son los algoritmos de clave simétrica, que utilizan claves criptográficas tanto para el cifrado del texto plano como para el descifrado del texto cifrado. Por ejemplo, utilizando los algoritmos de clave simétrica AES (Estándar de Cifrado Avanzado) para cifrar la palabra "Gate.io" se puede obtener la cadena alfabética U2FsdGVkX18fop1iGBPzNdnADZ57AJxOn+wEBSIUAG4. Asimismo, el texto cifrado también puede ser descifrado por los algoritmos de clave simétrica AES para obtener la cadena alfabética original Gate.io. En los primeros tiempos, los algoritmos de clave simétrica se utilizaban para enviar telegramas cifrados. Este proceso de descifrado es simple y rápido, pero después de que el método de cifrado se filtra, es fácil descifrar la información interceptada, y la seguridad no es alta.
La seguridad de los algoritmos de clave asimétrica es mayor que la de los algoritmos de clave simétrica, pero su eficiencia es menor que la de los algoritmos de clave simétrica debido a sus operaciones complejas. Vamos a entenderlos simplemente a través de un ejemplo: supongamos que Jim quiere enviar un mensaje a Bob usando algoritmos de clave asimétrica, Jim necesita seguir el siguiente proceso:
1. Tanto Jim como Bob necesitan generar un par de claves pública y privada;
2. La clave pública de Jim se envía a Bob, y la clave privada la guarda Jim; la clave pública de Bob se envía a Jim y la clave privada la guarda Bob;
3. Cuando Jim envía un mensaje a Bob, encripta el mensaje con la clave pública de Bob;
4. Después de que Bob recibe el mensaje, puede descifrarlo usando su clave privada.
Los algoritmos de clave asimétrica son los principales algoritmos criptográficos utilizados en blockchain. Sus escenarios de aplicación incluyen principalmente el cifrado de información, la firma digital, la autenticación de inicio de sesión y el certificado digital. Su valor en blockchain es la clave pública y la clave privada para identificar la identidad del remitente y el receptor.
Encriptación de información: garantizar la seguridad de la información. El remitente tiene una clave pública, y no importa que otros también lo sepan, porque la información enviada por otros no tiene impacto en el destinatario. La clave que posee el destinatario es la privada y el destinatario es el único que puede desbloquear la información encriptada. La tecnología de encriptación de transacciones de Bitcoin pertenece a este escenario.
Firma digital: garantizar la atribución de la información. Para demostrar que la información no ha sido falsificada y que realmente ha sido enviada por el propietario de la información, la firma digital se adjunta en la parte posterior de la información original. Al igual que una firma manuscrita, es única y concisa.
Autenticación de inicio de sesión: el cliente cifra la información de inicio de sesión con la clave privada y la envía al servidor, que descifra y autentica la información de inicio de sesión con la clave pública del cliente después de recibirla.
Certificado digital: asegurar la legitimidad de la clave pública. Para que el remitente verifique que la clave pública obtenida de Internet es verdadera, se genera una organización de terceros CA (Autoridad de Certificación) para garantizar la legitimidad de la clave pública. Al publicar información, el propietario del texto original de la información necesita traer su propia firma digital y certificado digital, lo que puede garantizar que la información no sea manipulada.
Los algoritmos de clave asimétrica utilizados en la cadena de bloques de Bitcoin son algoritmos criptográficos de curva elíptica. También son algoritmos de clave asimétrica comúnmente utilizados en blockchain en la actualidad, denominados ECDSA, en los cuales EC es la abreviatura de "curva elíptica" y DSA es la abreviatura de "algoritmo de firma digital".
Al determinar los parámetros de la curva elíptica, el sistema Bitcoin utiliza un parámetro de curva llamado SECP256k1. De esta manera, el sistema obtiene aleatoriamente una clave privada de 32 bytes en funcionamiento, y luego obtiene la clave pública a través del algoritmo de firma digital de curva elíptica (usando la curva SECP256k1), y luego opera múltiples algoritmos de hash para obtener el hash de la clave pública, y forma la dirección de cuenta final en combinación con el número de versión.
Por ejemplo, dos números primos (152, 891) se generan aleatoriamente para formar una "clave privada" de seis dígitos 152891, y la regla para generar una "clave pública" es que estos dos números primos se multiplican (152x891=135432). En este momento, las personas en la red pueden obtener esta "clave pública". Cuando desee que estos datos sean modificados solo por usted, puede agregar una nota a los datos "‘clave pública’ 135432": solo los tres dígitos de la izquierda de la clave privada multiplicados por los tres dígitos de la derecha dan como resultado la clave pública y pueden ser modificados.
Si un hacker en la red desea alterar datos sin consentimiento, incluso si sabe que la "clave privada" genera la "clave pública" multiplicando dos números primos, no sabe cuáles son los dos números primos. Por lo tanto, para encontrar la clave privada de la "clave pública" 135423, solo puede intentar uno por uno de la manera más directa: 001 x 02, …, 998 x 999, etc. Este proceso es difícil cuando el número primo es grande.
Un ejemplo de este tipo es relativamente simple. Una computadora puede calcular la "clave privada" del ejemplo anterior directamente a partir de la "clave pública". Sin embargo, el algoritmo de curva elíptica utilizado por el sistema Bitcoin para generar la "clave pública" a partir de la "clave privada" es difícil de descifrar con la tecnología existente. Debido a que su número primo es muy grande. Además, el proceso de descifrado de la clave privada en el sistema Bitcoin se realiza mediante un lenguaje de ejecución de pila de notación polaca inversa.
curva elíptica
La clave privada puede deducir la clave pública y el hash de la clave pública, pero la clave pública y el hash de la clave pública no pueden deducir la clave privada. Por lo tanto, la clave privada debe ser bien custodiada por el usuario. Una vez que se pierde la clave privada, no se pueden recuperar los activos en la cuenta.
Los algoritmos asimétricos son la base de la operación de blockchain. Además del algoritmo criptográfico de curva elíptica utilizado en blockchains como Bitcoin y Ethereum, también son comunes en blockchains los siguientes diferentes algoritmos criptográficos.
Algoritmo RSA (Rivest Shamir Adleman): debido a su dificultad para ser descifrado, se utiliza ampliamente en el campo de la encriptación digital y la firma digital. En el algoritmo RSA, tanto las claves públicas como privadas pueden usarse para encriptar información. Si se utiliza la clave pública para encriptar (para evitar el robo de información), se utilizará la clave privada para desencriptar. Si se utiliza la clave privada para encriptar (para evitar la manipulación de información), se utilizará la clave pública para desencriptar (firma digital). Teóricamente, cuanto mayor sea el número de bits de clave en el algoritmo RSA, más difícil será descifrarlo (no se excluye la computación cuántica). Por lo tanto, la clave comúnmente utilizada en la industria no es inferior a 2048 bits.
Algoritmo de firma digital DSA: este algoritmo no puede cifrar ni descifrar información, y se utiliza principalmente para firmar y autenticar información cifrada. La seguridad es tan alta como la del algoritmo RSA, pero la velocidad de procesamiento es más rápida.
Algoritmo criptográfico de curva elíptica ECC: el proceso de encriptación se deriva de la curva elíptica en matemáticas. En comparación con el algoritmo RSA, el algoritmo ECC tiene una velocidad de encriptación y desencriptación más rápida y una intensidad de seguridad por unidad más alta. Con la misma longitud de clave, el algoritmo ECC tiene la seguridad más alta.
La criptografía es una de las tecnologías básicas que respaldan el funcionamiento de los sistemas de blockchain. Se ha convertido en una parte indispensable de la seguridad informática moderna y un componente clave del creciente ecosistema de criptomonedas. Con el continuo desarrollo de la criptografía, los Algoritmos de Clave Simétrica y los Algoritmos de Clave Asimétrica jugarán un papel más importante en resistir varias amenazas en la futura seguridad informática y la validación de la seguridad de las criptomonedas.
مشاركة
المحتوى
Los algoritmos de clave asimétrica pertenecen al campo de la criptografía. Son algoritmos que pueden cifrar y descifrar información. Sus operaciones requieren una clave pública y una clave privada. La clave pública puede ser conocida por otros. La clave privada no debe ser conocida por nadie excepto el propietario. Las dos claves pueden cifrar y descifrar entre sí. Debido a que el cifrado y el descifrado utilizan dos claves diferentes, los algoritmos se llaman algoritmos de clave asimétrica.
Los algoritmos correspondientes son los algoritmos de clave simétrica, que utilizan claves criptográficas tanto para el cifrado del texto plano como para el descifrado del texto cifrado. Por ejemplo, utilizando los algoritmos de clave simétrica AES (Estándar de Cifrado Avanzado) para cifrar la palabra "Gate.io" se puede obtener la cadena alfabética U2FsdGVkX18fop1iGBPzNdnADZ57AJxOn+wEBSIUAG4. Asimismo, el texto cifrado también puede ser descifrado por los algoritmos de clave simétrica AES para obtener la cadena alfabética original Gate.io. En los primeros tiempos, los algoritmos de clave simétrica se utilizaban para enviar telegramas cifrados. Este proceso de descifrado es simple y rápido, pero después de que el método de cifrado se filtra, es fácil descifrar la información interceptada, y la seguridad no es alta.
La seguridad de los algoritmos de clave asimétrica es mayor que la de los algoritmos de clave simétrica, pero su eficiencia es menor que la de los algoritmos de clave simétrica debido a sus operaciones complejas. Vamos a entenderlos simplemente a través de un ejemplo: supongamos que Jim quiere enviar un mensaje a Bob usando algoritmos de clave asimétrica, Jim necesita seguir el siguiente proceso:
1. Tanto Jim como Bob necesitan generar un par de claves pública y privada;
2. La clave pública de Jim se envía a Bob, y la clave privada la guarda Jim; la clave pública de Bob se envía a Jim y la clave privada la guarda Bob;
3. Cuando Jim envía un mensaje a Bob, encripta el mensaje con la clave pública de Bob;
4. Después de que Bob recibe el mensaje, puede descifrarlo usando su clave privada.
Los algoritmos de clave asimétrica son los principales algoritmos criptográficos utilizados en blockchain. Sus escenarios de aplicación incluyen principalmente el cifrado de información, la firma digital, la autenticación de inicio de sesión y el certificado digital. Su valor en blockchain es la clave pública y la clave privada para identificar la identidad del remitente y el receptor.
Encriptación de información: garantizar la seguridad de la información. El remitente tiene una clave pública, y no importa que otros también lo sepan, porque la información enviada por otros no tiene impacto en el destinatario. La clave que posee el destinatario es la privada y el destinatario es el único que puede desbloquear la información encriptada. La tecnología de encriptación de transacciones de Bitcoin pertenece a este escenario.
Firma digital: garantizar la atribución de la información. Para demostrar que la información no ha sido falsificada y que realmente ha sido enviada por el propietario de la información, la firma digital se adjunta en la parte posterior de la información original. Al igual que una firma manuscrita, es única y concisa.
Autenticación de inicio de sesión: el cliente cifra la información de inicio de sesión con la clave privada y la envía al servidor, que descifra y autentica la información de inicio de sesión con la clave pública del cliente después de recibirla.
Certificado digital: asegurar la legitimidad de la clave pública. Para que el remitente verifique que la clave pública obtenida de Internet es verdadera, se genera una organización de terceros CA (Autoridad de Certificación) para garantizar la legitimidad de la clave pública. Al publicar información, el propietario del texto original de la información necesita traer su propia firma digital y certificado digital, lo que puede garantizar que la información no sea manipulada.
Los algoritmos de clave asimétrica utilizados en la cadena de bloques de Bitcoin son algoritmos criptográficos de curva elíptica. También son algoritmos de clave asimétrica comúnmente utilizados en blockchain en la actualidad, denominados ECDSA, en los cuales EC es la abreviatura de "curva elíptica" y DSA es la abreviatura de "algoritmo de firma digital".
Al determinar los parámetros de la curva elíptica, el sistema Bitcoin utiliza un parámetro de curva llamado SECP256k1. De esta manera, el sistema obtiene aleatoriamente una clave privada de 32 bytes en funcionamiento, y luego obtiene la clave pública a través del algoritmo de firma digital de curva elíptica (usando la curva SECP256k1), y luego opera múltiples algoritmos de hash para obtener el hash de la clave pública, y forma la dirección de cuenta final en combinación con el número de versión.
Por ejemplo, dos números primos (152, 891) se generan aleatoriamente para formar una "clave privada" de seis dígitos 152891, y la regla para generar una "clave pública" es que estos dos números primos se multiplican (152x891=135432). En este momento, las personas en la red pueden obtener esta "clave pública". Cuando desee que estos datos sean modificados solo por usted, puede agregar una nota a los datos "‘clave pública’ 135432": solo los tres dígitos de la izquierda de la clave privada multiplicados por los tres dígitos de la derecha dan como resultado la clave pública y pueden ser modificados.
Si un hacker en la red desea alterar datos sin consentimiento, incluso si sabe que la "clave privada" genera la "clave pública" multiplicando dos números primos, no sabe cuáles son los dos números primos. Por lo tanto, para encontrar la clave privada de la "clave pública" 135423, solo puede intentar uno por uno de la manera más directa: 001 x 02, …, 998 x 999, etc. Este proceso es difícil cuando el número primo es grande.
Un ejemplo de este tipo es relativamente simple. Una computadora puede calcular la "clave privada" del ejemplo anterior directamente a partir de la "clave pública". Sin embargo, el algoritmo de curva elíptica utilizado por el sistema Bitcoin para generar la "clave pública" a partir de la "clave privada" es difícil de descifrar con la tecnología existente. Debido a que su número primo es muy grande. Además, el proceso de descifrado de la clave privada en el sistema Bitcoin se realiza mediante un lenguaje de ejecución de pila de notación polaca inversa.
curva elíptica
La clave privada puede deducir la clave pública y el hash de la clave pública, pero la clave pública y el hash de la clave pública no pueden deducir la clave privada. Por lo tanto, la clave privada debe ser bien custodiada por el usuario. Una vez que se pierde la clave privada, no se pueden recuperar los activos en la cuenta.
Los algoritmos asimétricos son la base de la operación de blockchain. Además del algoritmo criptográfico de curva elíptica utilizado en blockchains como Bitcoin y Ethereum, también son comunes en blockchains los siguientes diferentes algoritmos criptográficos.
Algoritmo RSA (Rivest Shamir Adleman): debido a su dificultad para ser descifrado, se utiliza ampliamente en el campo de la encriptación digital y la firma digital. En el algoritmo RSA, tanto las claves públicas como privadas pueden usarse para encriptar información. Si se utiliza la clave pública para encriptar (para evitar el robo de información), se utilizará la clave privada para desencriptar. Si se utiliza la clave privada para encriptar (para evitar la manipulación de información), se utilizará la clave pública para desencriptar (firma digital). Teóricamente, cuanto mayor sea el número de bits de clave en el algoritmo RSA, más difícil será descifrarlo (no se excluye la computación cuántica). Por lo tanto, la clave comúnmente utilizada en la industria no es inferior a 2048 bits.
Algoritmo de firma digital DSA: este algoritmo no puede cifrar ni descifrar información, y se utiliza principalmente para firmar y autenticar información cifrada. La seguridad es tan alta como la del algoritmo RSA, pero la velocidad de procesamiento es más rápida.
Algoritmo criptográfico de curva elíptica ECC: el proceso de encriptación se deriva de la curva elíptica en matemáticas. En comparación con el algoritmo RSA, el algoritmo ECC tiene una velocidad de encriptación y desencriptación más rápida y una intensidad de seguridad por unidad más alta. Con la misma longitud de clave, el algoritmo ECC tiene la seguridad más alta.
La criptografía es una de las tecnologías básicas que respaldan el funcionamiento de los sistemas de blockchain. Se ha convertido en una parte indispensable de la seguridad informática moderna y un componente clave del creciente ecosistema de criptomonedas. Con el continuo desarrollo de la criptografía, los Algoritmos de Clave Simétrica y los Algoritmos de Clave Asimétrica jugarán un papel más importante en resistir varias amenazas en la futura seguridad informática y la validación de la seguridad de las criptomonedas.