El almacenamiento y la gestión segura de datos y contraseñas es uno de los aspectos más importantes en el mundo de las criptomonedas y blockchain y, en general, en todos los entornos online.
El cifrado, intenso como el arte de los “escritos ocultos” capaces de convertir texto plano en texto cifrado y viceversa, viene en nuestra ayuda dificultando a los piratas informáticos permitir el acceso no autorizado a determinadas redes y transacciones.
Profundicemos en los diferentes métodos mediante los cuales el cifrado puede proteger información valiosa y salvaguardar contraseñas.
Cifrado de contraseñas simétrico y asimétrico en el sector criptográfico
Generalmente cuando se habla de protección con contraseña en criptografía se hace referencia a dos métodos de cifrado: simétrico y asimétrico.
Ese simétrico se refiere a un tipo de cifrado de texto que utiliza una única clave para cifrar y descifrar información.:
La clave de cifrado se comparte entre el remitente y el destinatario y generalmente se acuerda de antemano: representa el elemento central que en las criptomonedas permite a los usuarios acceder y administrar sus recursos digitales.
El cifrado simétrico con una única clave es uno de los medios más comunes para proteger contraseñas, transacciones y comunicación entre nodos operativos.
Al realizar, por ejemplo, una transferencia de fondos de una billetera a otra, Garantiza que la información sea leída y compartida solo por dos partes involucradas en la transacción.manteniendo los datos a salvo de miradas indiscretas.
Sin embargo, a pesar de las ventajas que aporta, el cifrado simétrico tiene limitaciones en términos de escalabilidad y gestión de claves.
De hecho, la necesidad de comunicación entre parejas limita en gran medida la expansión de esta práctica en un sistema con muchos más usuarios. Al mismo tiempo, cada vez más usuarios implican errores humanos en el manejo y conservación de los llamados “llave privada”que si se pierde provoca la pérdida de criptomonedas o datos almacenados en la billetera virtual.
Para superar estas limitaciones, la criptografía asimétrica nos ayuda proporcionando un par de claves separadas. (públicas y privadas) en la codificación y decodificación de contraseñas.
Este nivel adicional de seguridad aumenta instantáneamente la protección de los datos: la clave pública se puede compartir con cualquier persona en cualquier red (como cuando compartimos nuestra dirección para recibir un pago en criptografía), mientras que la clave privada debe mantenerse en secreto.
Ambas claves se generan mediante un algoritmo que utiliza números primos grandes para crear dos claves únicas y matemáticamente vinculadas.
De todos modos, quien posee la clave pública puede cifrar un mensaje, pero sólo el poseedor de la clave privada puede descifrar el texto. Podemos imaginar esto como si fuera una bandeja de entrada de correo electrónico: quien posee la clave pública puede enviar un mensaje, pero sólo el propietario de la clave privada puede abrir el correo electrónico y leer los mensajes.
Las carteras de software sin custodia como Trust Wallet o MetaMask utilizan criptografía asimétrica para ofrecer la mayor seguridad posible a sus usuarios.
Fuente: https://www.javaboss.it/crittografia-in-java/
Los formatos más comunes de contraseñas cifradas
El cifrado de contraseñas en el sector de las criptomonedas y blockchain se produce según diferentes formatos que pueden usarse para diferentes propósitos y ofrecen diferentes niveles de seguridad:
- MD5 (Resumen de mensajes 5):
El algoritmo MD5, desarrollado por Ronald Rivest en 1991, genera un hash de 128 bits (32 caracteres hexadecimales) a partir de una entrada de longitud variable.
Ya no se considera seguro debido a vulnerabilidades descubiertas en su algoritmo. Sin embargo, todavía se utiliza en algunos contextos heredados, por ejemplo para verificar la integridad de los archivos.
- SHA-1 (Algoritmo Hash Seguro 1):
SHA-1 genera un hash de 160 bits (40 caracteres hexadecimales).
Ya no se considera tan seguro como antes, habiendo mostrado varias vulnerabilidades: ahora generalmente se reemplaza por algoritmos más robustos como SHA-256 y SHA-3. Sin embargo, todavía se utiliza en una amplia gama de sistemas y nuevas aplicaciones.
- Sal:
La sal es una secuencia aleatoria de bits que se agrega a la contraseña antes de calcular el hash.
Resuelve el problema de las colisiones (dos contraseñas diferentes que generan el mismo hash) en los métodos de hash.
Al agregar una sal, incluso las contraseñas idénticas tendrán hashes completamente diferentes. Esto dificulta que los atacantes descifren contraseñas mediante ataques de fuerza bruta.
- Bcrypt:
Bcrypt es un algoritmo hash diseñado específicamente para el cifrado de contraseñas.
Utilice una sal y varias iteraciones para ralentizar el cálculo del hash. Es ampliamente utilizado para proteger las contraseñas de los usuarios en el campo de las bases de datos.
La elección del formato de cifrado depende de las necesidades específicas del sistema de referencia. Hoy en día es recomendable utilizar algoritmos hash como bcrypt o SHA-2 para proteger contraseñas y mitigar ataques cibernéticos.
Funciones hash y firmas digitales
Otra forma de proteger contraseñas e información valiosa en criptomonedas es confiar en funciones hashes decir, algoritmos que transforman cualquier forma de datos en una cadena de caracteres de longitud fija.
Al utilizar algoritmos hash sólidos, podemos proteger eficazmente la información confidencial y prevenir ataques cibernéticos.
Las funciones hash son irreversibles: no es posible convertir un hash nuevamente a sus datos originales. Son esenciales en la gestión de datos en blockchain porque permiten estructurar la información sin comprometer su integridad inicial.
Los hash también pueden actuar como huellas digitales para todas las contraseñas cifradas, protegiendo al usuario contra acciones no autorizadas en su cuenta.
De hecho, cualquier modificación de los datos originales daría lugar a un nuevo hash, que ya no correspondería a la fuente original y, por tanto, no sería verificable en la cadena de bloques.
Otro método para garantizar la seguridad de las contraseñas, y más concretamente la autenticidad e integridad de los datos de un mensaje, es utilizar el llamado “firmas digitales” (técnica de criptografía asimétrica).
Este es simplemente un método para garantizar que el propietario de esos datos específicos apruebe la transacción. Generalmente, el remitente crea la firma digital utilizando una clave privada para cifrar los datos de la firma, mientras que el destinatario obtiene la clave pública del firmante para descifrar los datos. Este código representa una prueba irrefutable de que un mensaje ha sido creado únicamente por el remitente y no ha sido manipulado en línea.
Cuando se habla de firmas digitales, uno piensa inmediatamente en dispositivos de firma como Ledger, Trezor y Bitbox que permiten validar una transacción antes de que se transmita al resto de una red criptográfica.
Sin embargo, tenga cuidado de no considerar estos dispositivos como billeteras: no contienen sus criptomonedas, sino que solo le permiten aprobar las transacciones necesarias para gastarlas.
A menudo decimos: “mi criptografía está EN mi libro mayor”.
Pero sus activos digitales en realidad no se almacenan físicamente en su libro mayor, sino que están en la cadena de bloques.
Su libro mayor almacena y protege sus claves privadas y las mantiene seguras para que pueda poseer y administrar completamente sus activos.@iancr explica: pic.twitter.com/PGrmQIvKpV
– Libro mayor (@Ledger) 11 de mayo de 2023