¿Qué es el cifrado?
El cifrado es un proceso criptográfico que transforma información legible en un formato ilegible, de modo que solo una parte autorizada que disponga de la clave correcta pueda recuperar los datos originales.La entrada legible se denomina texto en claro, mientras que la salida protegida se llama texto cifrado.El descifrado invierte el proceso y convierte el texto cifrado en texto en claro mediante la clave criptográfica necesaria.En las criptomonedas, el cifrado se utiliza habitualmente para proteger claves privadas, archivos de wallet, copias de recuperación, credenciales de cuentas, mensajes, conexiones API y otra información sensible.El cifrado forma parte del campo más amplio de la criptografía, que también incluye firmas digitales, hash, intercambio de claves, compromisos y pruebas de conocimiento cero.La descripción general de criptografía del NIST explica que la criptografía emplea técnicas matemáticas para proteger la información y las comunicaciones electrónicas.
El cifrado puede proporcionar confidencialidad, pero no demuestra automáticamente quién creó los datos ni si se han modificado.Por eso, los sistemas seguros combinan el cifrado con autenticación, comprobaciones de integridad, controles de acceso, copias de seguridad y una gestión cuidadosa de las claves.Cómo funciona el cifrado
Un algoritmo de cifrado recibe texto en claro, una clave criptográfica y, a veces, un valor adicional, como un nonce o un vector de inicialización.El algoritmo procesa estas entradas y genera un texto cifrado que debería parecer ininteligible para cualquiera que no tenga la clave correcta.Un algoritmo de descifrado utiliza la clave y los parámetros adecuados para reconstruir el texto en claro.La seguridad del cifrado moderno debería depender del secreto de la clave, no del secreto del algoritmo.En general, los algoritmos ampliamente revisados son más seguros que los algoritmos privados que no han sido objeto de análisis público.Un atacante que obtenga la clave de cifrado podría descifrar todos los datos protegidos con ella.Por ello, la generación, el almacenamiento, el acceso, la rotación, las copias de seguridad y la destrucción de las claves son tan importantes como el propio algoritmo de cifrado.¿Qué es una clave de cifrado?
Una clave de cifrado es un valor secreto o controlado que utiliza un algoritmo criptográfico para cifrar o descifrar información.Una clave segura debería contener suficiente entropía impredecible para resistir los ataques de adivinación y fuerza bruta.Normalmente, las claves deberían generarse con un generador de números aleatorios criptográficamente seguro, y no a partir de una palabra fácil de recordar o un número predecible.La longitud de clave necesaria depende del algoritmo seleccionado y del nivel de seguridad previsto.Una clave más larga no subsana un algoritmo débil, una implementación incorrecta, un dispositivo expuesto ni una contraseña deficiente.Las directrices de gestión de claves criptográficas del NIST abarcan la generación, el almacenamiento, el establecimiento, el uso, la protección y la destrucción del material criptográfico.
Cifrado simétrico
El cifrado simétrico utiliza la misma clave secreta, o claves secretas estrechamente relacionadas, para cifrar y descifrar.Tanto el emisor como el destinatario deben obtener la clave secreta mediante un método seguro.Los algoritmos simétricos suelen ser eficientes y adecuados para proteger archivos grandes, copias de seguridad de wallets, bases de datos, tráfico de red y datos almacenados por aplicaciones.El principal reto consiste en distribuir y almacenar el secreto compartido sin exponerlo.Si un atacante roba la clave simétrica, puede descifrar la información protegida y quizá crear texto cifrado modificado que resulte convincente.Los sistemas seguros suelen combinar el cifrado simétrico con un método de clave pública que establece o protege la clave simétrica temporal.Estándar de cifrado avanzado
El estándar de cifrado avanzado, conocido habitualmente como AES, es un cifrado de bloque simétrico muy utilizado.El estándar actual NIST FIPS 197 especifica AES-128, AES-192 y AES-256.
Estas versiones utilizan claves de 128, 192 o 256 bits y procesan datos en bloques de 128 bits.AES describe el cifrado de bloque en sí, no un sistema completo para cifrar archivos.El software debe utilizar AES con un modo de operación seguro y gestionar correctamente las claves, los nonces, las etiquetas de autenticación y los errores.Un sistema AES mal implementado puede dejar los datos expuestos aunque el cifrado subyacente se considere robusto.Cifrado autenticado
El cifrado autenticado protege tanto la confidencialidad como la integridad.Permite al destinatario detectar si los datos cifrados han sido modificados, corrompidos o falsificados.El cifrado autenticado con datos asociados también puede proteger información no cifrada, como un número de versión, un identificador de cuenta o el tipo de mensaje.AES-GCM es un método de cifrado autenticado muy utilizado.La especificación GCM del NIST define Galois/Counter Mode para el cifrado autenticado con datos asociados.
Otro método de cifrado autenticado habitual combina ChaCha20 con Poly1305.Los desarrolladores deberían utilizar bibliotecas criptográficas revisadas, en lugar de combinar manualmente algoritmos de cifrado y autenticación de mensajes.¿Qué es un nonce o vector de inicialización?
Un nonce es un valor que debe utilizarse una sola vez con una clave y un algoritmo criptográfico determinados.Un vector de inicialización, o IV, es un valor adicional que se utiliza para inicializar ciertos modos de cifrado.Algunos sistemas exigen que el nonce sea impredecible, mientras que otros requieren principalmente que sea único para cada clave.Reutilizar un nonce en un modo que exige unicidad puede revelar texto en claro, poner de manifiesto relaciones entre mensajes o permitir que los atacantes falsifiquen datos.A menudo, el nonce se almacena junto al texto cifrado porque normalmente no es necesario mantenerlo en secreto.Los desarrolladores deben seguir los requisitos exactos del nonce para el algoritmo seleccionado, en lugar de aplicar una única regla general a todos los cifrados.Cifrado asimétrico
El cifrado asimétrico utiliza una clave pública y una clave privada.La información cifrada para un destinatario con la clave pública adecuada normalmente solo se puede descifrar con la clave privada correspondiente.La clave pública se puede compartir abiertamente, mientras que la clave privada debe mantenerse en secreto.El cifrado asimétrico simplifica la distribución de claves porque las dos partes no necesitan compartir de antemano el mismo secreto.Sin embargo, las operaciones de clave pública suelen ser más lentas y menos adecuadas para cifrar directamente archivos grandes.En la práctica, los sistemas suelen utilizar criptografía asimétrica para establecer un secreto compartido temporal y cifrado simétrico para proteger los datos propiamente dichos.Cifrado híbrido
El cifrado híbrido combina la criptografía asimétrica y la simétrica.El emisor genera una clave simétrica aleatoria y la utiliza para cifrar de forma eficiente el mensaje o archivo.A continuación, la clave simétrica se protege mediante cifrado de clave pública o un mecanismo de encapsulación de claves.El destinatario utiliza la clave privada para recuperar la clave simétrica y después descifra los datos.Este método combina una distribución más sencilla de las claves mediante criptografía de clave pública con la velocidad del cifrado simétrico.Los sistemas de mensajería cifrada, intercambio de archivos, copias de seguridad y protocolos de red suelen utilizar diseños híbridos.Cifrado frente a criptografía de clave pública en las criptomonedas
Los sistemas de criptomonedas dependen en gran medida de la criptografía de clave pública, pero esta no siempre implica cifrado.Las claves privadas de las wallets se utilizan principalmente para crear firmas digitales que autorizan transacciones.Las claves públicas o direcciones correspondientes permiten a otros participantes verificar esas firmas.La documentación de claves de Ethereum explica que las claves privadas firman transacciones y datos, mientras que la información pública permite la identificación y la verificación.
Normalmente, la red puede leer una transacción firmada, aunque los usuarios no autorizados no puedan crear una firma válida del emisor.Por tanto, los usuarios deberían distinguir entre la autorización de una transacción y su confidencialidad.Cifrado frente a firmas digitales
El cifrado está diseñado principalmente para ocultar información a lectores no autorizados.Una firma digital está diseñada principalmente para demostrar que el titular de una clave privada ha autorizado determinados datos.El cifrado utiliza una clave de descifrado para recuperar el contenido oculto.La verificación de firmas utiliza información pública para confirmar la autenticidad y la integridad sin revelar la clave privada.En general, las transacciones de criptomonedas se firman para que los participantes de la red puedan verificarlas.Por lo general, no se cifran, porque los validadores y los nodos deben leer las instrucciones de la transacción para ejecutarlas y verificarlas.Un sistema puede utilizar ambos procesos, por ejemplo, cifrar una copia de seguridad de una wallet y firmar una transacción on-chain.Cifrado frente a hash
El cifrado es reversible si se dispone de la clave de descifrado correcta.Las funciones hash criptográficas están diseñadas para ser unidireccionales.Una función hash transforma datos de cualquier longitud práctica en un resumen de longitud fija.No existe una clave de descifrado normal que permita reconstruir la entrada original a partir de un hash seguro.Las blockchains utilizan hashes para los identificadores de bloques, los identificadores de transacciones, los compromisos de datos, la creación de direcciones, los sistemas de prueba y las comprobaciones de integridad.Una contraseña no debería almacenarse mediante cifrado simple si el sistema solo necesita verificarla.Normalmente, los sistemas de contraseñas utilizan funciones especializadas de hash de contraseñas o derivación de claves, con salts y parámetros de trabajo adecuados.Cifrado frente a codificación
La codificación transforma los datos en otra representación para que el software pueda almacenarlos o transmitirlos cómodamente.Entre los ejemplos habituales figuran el formato hexadecimal, Base64 y los formatos de texto estructurado.La codificación no requiere una clave secreta ni proporciona confidencialidad.Cualquiera que reconozca la codificación normalmente puede invertirla.Una clave privada escrita en hexadecimal sigue estando totalmente expuesta, aunque a una persona le parezca ilegible.Los usuarios nunca deberían tratar secretos de wallet codificados como si fueran copias de seguridad cifradas.¿Están cifradas las transacciones de blockchain?
Por defecto, las transacciones de muchas blockchains públicas no están cifradas.Se firman criptográficamente y después se distribuyen entre los participantes de la red para su verificación.La documentación de transacciones de Ethereum describe las transacciones como instrucciones de las cuentas firmadas criptográficamente.
La documentación de privacidad de Ethereum señala que las transacciones registradas en Ethereum son públicas y permanentes por defecto.
Los datos públicos de las transacciones pueden incluir las direcciones del emisor y del destinatario, los valores transferidos, las llamadas a contratos inteligentes, los registros de eventos y otra información de la aplicación.Cifrar los datos antes de registrarlos on-chain puede ocultar el texto en claro, pero el texto cifrado, el emisor, el momento, el tamaño y la interacción con el contrato pueden seguir siendo visibles.Una filtración posterior de la clave puede exponer los datos cifrados que se hayan almacenado permanentemente en una blockchain pública.Por qué las blockchains públicas no pueden cifrarlo todo sin más
Los nodos de una blockchain deben llegar a un acuerdo sobre las transacciones válidas y los cambios de estado.En una red pública normal de contratos inteligentes, los nodos deben poder ejecutar las mismas instrucciones de contrato y verificar el mismo resultado.Si las instrucciones de la transacción y el estado estuvieran cifrados con una clave que los validadores no tienen, no sería posible la ejecución normal.Los protocolos centrados en la privacidad abordan este problema mediante construcciones criptográficas especializadas, en lugar de aplicar el cifrado normal de archivos a toda la blockchain.Estas construcciones pueden incluir pruebas de conocimiento cero, compromisos, computación multipartita segura, sistemas de ejecución de confianza, criptografía umbral y cifrado homomórfico.Cada método presenta distintas contrapartidas en materia de confianza, rendimiento, complejidad y disponibilidad de los datos.Cifrado de wallets
El cifrado de wallets suele consistir en proteger las claves privadas almacenadas o el material de la seed con una clave de cifrado derivada de una contraseña.El archivo de wallet cifrado se puede copiar o robar sin revelar inmediatamente las claves privadas.El usuario debe introducir la contraseña correcta para que la wallet pueda descifrar y utilizar esas claves.La documentación de wallets de Bitcoin señala que los archivos de wallet cifrados protegen las claves privadas cuando no se utilizan.
También explica que el cifrado de archivos no puede proteger una clave si un malware consigue la contraseña o lee la clave descifrada en la memoria.Por tanto, el cifrado de una wallet protege frente a ciertas formas de robo de datos, pero no ofrece una protección completa frente a un dispositivo comprometido.Archivos keystore cifrados
Un archivo keystore es un fichero estructurado que almacena una clave privada cifrada y los parámetros necesarios para derivar su clave de descifrado.Suele contener texto cifrado, un salt, un nonce o IV, la configuración de derivación de claves, una suma de comprobación o un valor de autenticación y metadatos identificativos.La contraseña no debería almacenarse dentro del archivo.El estándar keystore ERC-2335 define un formato JSON cifrado utilizado para claves privadas BLS.
Entre sus métodos compatibles de derivación de claves basada en contraseñas se encuentran PBKDF2 y scrypt.Un archivo keystore se puede copiar entre herramientas compatibles, pero exponer tanto el archivo como una contraseña débil aún puede provocar el robo de claves.Antes de eliminar una wallet original o migrar una clave de validador, los usuarios deberían comprobar la compatibilidad.Contraseñas y funciones de derivación de claves
Las contraseñas creadas por personas suelen tener mucha menos entropía que las claves criptográficas generadas aleatoriamente.Una función de derivación de claves convierte una contraseña y un salt en material de clave, y hace que cada intento de adivinar la contraseña sea más costoso.PBKDF2, scrypt y Argon2 son ejemplos de métodos de derivación basada en contraseñas utilizados en distintos sistemas.El salt impide que contraseñas idénticas generen automáticamente claves derivadas idénticas en archivos distintos.Los factores de trabajo y los requisitos de memoria ralentizan los intentos de adivinación offline si un atacante roba el archivo cifrado.Una función de derivación robusta no puede hacer que una contraseña muy débil sea completamente segura.Los desarrolladores de wallets deberían seleccionar parámetros revisados que equilibren la resistencia a ataques con un tiempo de desbloqueo aceptable en los dispositivos compatibles.Contraseña de wallet frente a frase de recuperación
La contraseña de una wallet y una frase de recuperación suelen tener funciones distintas.La contraseña de la wallet suele desbloquear un archivo cifrado almacenado en un dispositivo.La frase de recuperación puede recrear las claves subyacentes de la wallet en otro dispositivo compatible.Cambiar u olvidar la contraseña local de la wallet normalmente no modifica la frase de recuperación.Es posible que un atacante que obtenga la frase de recuperación no necesite la contraseña local de la wallet.Por tanto, los usuarios deben proteger la frase de recuperación de forma independiente del archivo de wallet cifrado.Eliminar una aplicación de wallet cifrada no elimina las copias de la frase de recuperación almacenadas en otros lugares.Frases de contraseña BIP-39 y cifrado
Una frase de contraseña BIP-39 no es simplemente una contraseña que cifra la frase de recuperación escrita.La especificación BIP-39 combina la frase mnemotécnica y una frase de contraseña opcional mediante un proceso de derivación para producir una seed.
Cada frase de contraseña produce una seed válida y, potencialmente, un conjunto diferente de direcciones de wallet.Introducir una frase de contraseña incorrecta puede abrir una wallet que parezca vacía, en lugar de mostrar un error claro de contraseña.La frase mnemotécnica sin la frase de contraseña opcional puede generar una wallet distinta.Los usuarios no deberían describir una frase de contraseña BIP-39 como cifrado de archivos normal, porque el proceso de recuperación y los posibles fallos son diferentes.Hardware wallets y cifrado
Una hardware wallet está diseñada para mantener las operaciones con claves privadas dentro de un dispositivo dedicado.El dispositivo puede cifrar el almacenamiento sensible y proteger el acceso mediante un PIN u otro método de autenticación.Su principal ventaja de seguridad es que la firma de transacciones puede realizarse sin exponer la clave privada al ordenador conectado.La guía de seguridad de Ethereum recomienda mantener las claves privadas offline para reducir la exposición a ordenadores conectados a Internet que puedan estar comprometidos.
Una hardware wallet no hace que todas las transacciones sean seguras, ya que el usuario aún puede aprobar direcciones, llamadas de contrato, permisos o mensajes maliciosos.La frase de recuperación también debe mantenerse protegida, porque puede permitir recrear la wallet sin el dispositivo original.Copias de seguridad cifradas de wallets
Una copia de seguridad cifrada puede proteger los datos de la wallet almacenados en soportes extraíbles, ordenadores personales o almacenamiento remoto.La copia de seguridad debería utilizar cifrado autenticado para que se puedan detectar modificaciones no autorizadas.La contraseña o la clave de descifrado no debería guardarse junto al archivo cifrado sin protección.Los usuarios deberían conservar suficientes copias independientes para evitar pérdidas por extravío del dispositivo, daños físicos o fallos de almacenamiento.Una copia de seguridad que nunca se ha probado puede resultar inutilizable por corrupción, una contraseña incorrecta, un formato no compatible o la falta de metadatos.Las pruebas deberían realizarse sin exponer el secreto de la wallet a un entorno no fiable o conectado a Internet.Cifrado en tránsito
El cifrado en tránsito protege los datos mientras se transmiten entre dispositivos o servicios.Las wallets cripto utilizan conexiones de red para comunicarse con nodos, servicios RPC, sitios web, sistemas de firma y servidores de aplicaciones.La seguridad de la capa de transporte, o TLS, se utiliza habitualmente para proteger estas conexiones a Internet.El estándar TLS 1.3 está diseñado para proteger las comunicaciones frente a la interceptación, la manipulación y la falsificación de mensajes.
TLS puede proteger la comunicación entre una wallet y un servidor, pero el servidor receptor puede leer el texto en claro después de descifrar la conexión.Por tanto, los usuarios deben distinguir el cifrado del transporte del cifrado de extremo a extremo y de la confianza en el operador del servicio.Cifrado de RPC
Las interfaces de llamada a procedimiento remoto permiten a las wallets y las aplicaciones consultar datos de la blockchain y enviar transacciones.Una conexión RPC sin cifrar puede exponer a los observadores de red las solicitudes, las direcciones, las credenciales de autenticación y las transacciones enviadas.El acceso RPC remoto debería utilizar un transporte cifrado con verificación de certificados.Los métodos RPC administrativos sensibles también deberían requerir autenticación, reglas de firewall y acceso de red restringido.TLS no impide que el proveedor RPC observe las solicitudes que procesa.Utilizar un nodo bajo control independiente puede reducir la dependencia de un proveedor externo, pero el nodo también debe configurarse y protegerse correctamente.Cifrado en reposo
El cifrado en reposo protege los datos almacenados en un dispositivo, disco, base de datos, soporte extraíble o servicio de copias de seguridad.El cifrado de disco completo puede proteger los datos si roban un ordenador apagado o una unidad.El cifrado a nivel de aplicación puede proteger archivos de wallet concretos aunque otros contenidos del disco sean legibles.El cifrado de bases de datos puede proteger registros de clientes, credenciales API, políticas de firma y secretos operativos.El cifrado en reposo ofrece menos protección una vez que se desbloquea el dispositivo y la aplicación puede acceder a la clave de descifrado.Un malware que se ejecute durante la sesión activa del usuario podría leer datos descifrados.Cifrado de extremo a extremo
El cifrado de extremo a extremo significa que los datos se cifran para el extremo destinatario y que, normalmente, los servicios intermedios no pueden descifrarlos.Un servidor puede retransmitir o almacenar texto cifrado sin tener la clave para descifrar el contenido.Las aplicaciones cripto pueden utilizar cifrado de extremo a extremo para mensajes, solicitudes de transacción, coordinación de recuperaciones y datos privados de cuentas.La seguridad de los extremos sigue siendo fundamental, ya que los datos existen en forma legible antes de cifrarse y después de descifrarse.Los metadatos, como la identidad del emisor y del destinatario, el tamaño del mensaje, la hora y la frecuencia, pueden seguir siendo visibles.Un sistema no debería afirmar que ofrece privacidad completa solo porque el contenido de los mensajes esté cifrado.Cifrado a nivel de aplicación
El cifrado a nivel de aplicación protege los datos antes de enviarlos a una base de datos, un servicio en la nube, una red de almacenamiento descentralizada o una blockchain.El proveedor de almacenamiento recibe texto cifrado en lugar de texto en claro.La aplicación debe decidir qué usuarios pueden descifrar los datos y cómo se distribuyen o revocan sus claves.Cifrar un mismo archivo compartido por muchos usuarios se vuelve más complejo cuando cambia la membresía.Impedir el acceso futuro a un usuario no elimina el texto en claro ni las claves antiguas que ya haya obtenido.Antes de almacenar contenido cifrado de forma permanente en almacenamiento distribuido, los desarrolladores deberían definir el modelo de acceso y recuperación.Datos cifrados en una blockchain pública
Los desarrolladores pueden incluir texto cifrado en una transacción blockchain o en el estado de un contrato inteligente.Esto puede ocultar inmediatamente el texto en claro, pero no hace que la transacción sea invisible.Los observadores aún pueden ver el emisor, el destinatario, la dirección del contrato, la comisión de transacción, el tamaño de los datos, el momento y las relaciones entre interacciones repetidas.El texto cifrado puede seguir disponible mientras se conserve el historial de la blockchain.Si la clave de descifrado queda expuesta más adelante o el algoritmo se vuelve vulnerable, los datos históricos podrían hacerse legibles.Por lo general, los datos personales sensibles no deberían almacenarse de forma permanente on-chain solo porque estén cifrados.Cifrado y contratos inteligentes
Los contratos inteligentes públicos normales no pueden mantener secreta una clave de descifrado para todos los participantes de la red y utilizarla a la vez durante la ejecución pública.El bytecode, las entradas, el almacenamiento y los resultados de la ejecución de los contratos suelen ser visibles o reproducibles por los nodos.Guardar una clave de descifrado en el almacenamiento del contrato no la hace privada.Ocultar una clave mediante codificación o dividirla entre valores visibles tampoco proporciona confidencialidad fiable.La privacidad de los contratos inteligentes requiere un protocolo diseñado específicamente para proteger los cálculos privados o demostrar resultados sin revelar todas las entradas.Los desarrolladores deberían suponer que cualquier secreto enviado directamente a un contrato público normal puede hacerse público.Pruebas de conocimiento cero frente a cifrado
Una prueba de conocimiento cero permite demostrar que una afirmación es cierta sin revelar toda la información privada subyacente.El cifrado oculta los datos para que una parte autorizada pueda descifrarlos más adelante.Estas técnicas resuelven problemas distintos y pueden utilizarse conjuntamente.Un sistema de transacciones privadas podría cifrar los datos para los usuarios autorizados y utilizar una prueba de conocimiento cero para demostrar que la transacción oculta cumple las reglas del protocolo.Una prueba de conocimiento cero no oculta automáticamente los metadatos de red, las direcciones de wallet, la información del navegador ni todas las entradas públicas.Las aplicaciones de privacidad deben analizar el flujo completo de información, no centrarse solo en el circuito de prueba.Cifrado homomórfico
El cifrado homomórfico permite realizar determinados cálculos con datos cifrados sin revelar primero el texto en claro.El resultado descifrado corresponde a un cálculo efectuado sobre la información original.El cifrado homomórfico completo aspira a permitir cálculos amplios sobre texto cifrado.Esta tecnología podría facilitar la analítica confidencial de blockchain o la lógica de contratos inteligentes, pero sigue exigiendo muchos recursos de cálculo para numerosos usos a gran escala.Las implementaciones también necesitan una gestión segura de claves, controles de acceso, cálculos verificables y protección frente a filtraciones de metadatos.El cifrado homomórfico no debería considerarse un sustituto sencillo de la ejecución ordinaria de una blockchain.Cifrado umbral
El cifrado umbral reparte la autoridad de descifrado entre varios participantes.Es necesario que coopere un número determinado de participantes para poder descifrar los datos protegidos.Ningún participante debe tener por sí solo toda la capacidad de descifrado.Los protocolos cripto pueden utilizar cifrado umbral para sistemas de ofertas selladas, divulgación diferida, gobernanza privada o un orden de transacciones protegido.El diseño debe definir cómo se selecciona a los participantes, cómo se generan las claves, qué ocurre si algunos están desconectados y cómo se gestionan las partes maliciosas.El cifrado umbral es distinto de una wallet multifirma: el primero controla el descifrado, mientras que la segunda suele controlar la autorización de transacciones.Cifrado frente a seguridad multifirma
Una wallet multifirma exige varias aprobaciones antes de autorizar una transacción.El cifrado controla quién puede leer la información protegida.Una wallet puede utilizar ambos controles, pero no son intercambiables.Cifrar una clave privada no crea varias personas independientes que deban aprobar las transacciones.Una política multifirma no cifra automáticamente los detalles de las transacciones ni los archivos de copia de seguridad.Los sistemas de custodia robustos separan la autorización, la confidencialidad, las copias de seguridad, la recuperación y las responsabilidades operativas.Cifrado frente a computación multipartita
La computación multipartita permite que varias partes calculen un resultado sin que cada participante revele todas sus entradas privadas.Los sistemas de custodia cripto pueden utilizar técnicas multipartitas para generar firmas sin reconstruir una clave privada completa en un solo dispositivo.Esto no equivale a cifrar con una contraseña un archivo de clave privada.Un protocolo multipartito tiene sus propias suposiciones sobre la honestidad de los participantes, las comunicaciones, las copias de seguridad, los umbrales y los dispositivos comprometidos.Aun así, se pueden utilizar mensajes cifrados para proteger las comunicaciones entre los participantes.Gestión de claves
La gestión de claves abarca todo el ciclo de vida de las claves criptográficas.Incluye la generación, distribución, almacenamiento, activación, utilización, rotación, copia de seguridad, recuperación, revocación, archivo y destrucción.Un algoritmo de cifrado técnicamente sólido puede fallar si sus claves se copian en registros, código fuente, capturas de pantalla, tickets de soporte o repositorios públicos.Las organizaciones deberían limitar el acceso a las claves a los sistemas y las personas que lo necesiten.Las claves de firma y cifrado de gran valor pueden requerir hardware dedicado, separación de funciones, registros de acceso y procedimientos de recuperación probados.Si se pierde una clave de cifrado, los datos cifrados correctamente podrían quedar inaccesibles para siempre.Rotación de claves
La rotación de claves sustituye una clave criptográfica antigua por otra nueva.La rotación puede limitar la cantidad de datos expuestos si se compromete una clave.Un sistema puede cifrar los registros nuevos con la clave nueva y conservar un acceso controlado a las claves antiguas para descifrar datos históricos.Volver a cifrar un archivo grande puede llevar mucho tiempo y requiere gestionar cuidadosamente los errores.Las aplicaciones blockchain también deben tener en cuenta los datos inmutables que no se pueden eliminar tras cambiar una clave.Un plan de rotación de claves debería definir identificadores de versión, procedimientos de migración, reglas de reversión y la retirada segura de las claves antiguas.Cifrado de sobre
El cifrado de sobre protege los datos con una clave de cifrado de datos generada aleatoriamente.Una clave de cifrado de claves independiente protege la clave de cifrado de datos.Cada archivo o registro puede tener una clave de datos distinta, mientras que una clave centralizada o protegida por hardware gestiona el acceso a esas claves.Esta estructura puede simplificar la rotación, ya que quizá baste con volver a envolver las claves de datos sin cifrar de nuevo todos los datos subyacentes.La pérdida de la clave de cifrado de claves o del sistema que controla su acceso puede afectar a muchos registros protegidos.La infraestructura cripto debería aplicar controles de acceso estrictos y copias de seguridad a toda la jerarquía de claves.Cifrado y aleatoriedad
El cifrado seguro depende de una aleatoriedad de alta calidad para las claves, los nonces, los salts y los secretos temporales.Los valores aleatorios predecibles pueden permitir a los atacantes adivinar claves o recuperar información protegida.Las funciones aleatorias ordinarias de los lenguajes de programación pueden no ser adecuadas para usos criptográficos.Los desarrolladores deberían utilizar el sistema operativo o una biblioteca criptográfica revisada que proporcione una generación segura de valores aleatorios.Hay que comprobar que las máquinas virtuales, los dispositivos integrados y los sistemas recién iniciados dispongan de suficiente entropía.Los usuarios no deberían crear claves de wallet eligiendo sus propias palabras, resultados de dados, fechas o patrones, salvo que sigan un método de generación de entropía revisado cuidadosamente.El cifrado no protege un dispositivo comprometido
El cifrado protege los datos mientras el atacante no tenga la clave necesaria ni acceso al texto en claro.El malware puede robar información antes del cifrado o después del descifrado.Un registrador de pulsaciones puede capturar la contraseña de la wallet cuando el usuario la introduce.Un malware del portapapeles puede sustituir una dirección cripto aunque el archivo de wallet esté cifrado.Un malware de captura de pantalla puede registrar una frase de recuperación cuando se muestra.La seguridad del dispositivo, las actualizaciones de software, la verificación de transacciones y la protección física siguen siendo necesarias.Cifrado y phishing
Un sitio web de phishing puede utilizar una conexión HTTPS cifrada válida.El icono del candado indica que la conexión está cifrada con el dominio mostrado, no que el sitio web sea honesto.Un atacante puede obtener un certificado para un dominio engañoso y enviar de forma segura una solicitud maliciosa de aprobación o firma.Antes de continuar, los usuarios deberían verificar el dominio, la solicitud de la wallet, la dirección del contrato, la red, el activo, la cantidad y los permisos.El cifrado protege el canal de comunicación, pero no valida la intención financiera de la solicitud.Cifrado y disponibilidad de los datos
Los datos cifrados solo son útiles si los usuarios autorizados pueden obtener tanto el texto cifrado como el material de descifrado necesario.Un archivo de almacenamiento descentralizado puede desaparecer si ningún participante continúa almacenándolo.Un dispositivo de hardware puede fallar y perderse la única copia de una clave.Se puede olvidar una contraseña o un participante que comparte claves puede dejar de estar disponible.Los diseños seguros equilibran la confidencialidad con copias de seguridad resilientes y métodos de recuperación.Crear muchas copias sin protección de la clave puede mejorar la disponibilidad, pero destruir la confidencialidad.Cifrado poscuántico
Los ordenadores cuánticos tolerantes a fallos y de gran tamaño podrían amenazar algoritmos de clave pública muy utilizados que se basan en problemas de factorización o logaritmos discretos.La criptografía poscuántica utiliza algoritmos diseñados para resistir ataques tanto de ordenadores clásicos como cuánticos.En agosto de 2024, el NIST aprobó sus tres primeros estándares de criptografía poscuántica.El anuncio de estándares poscuánticos del NIST incluye FIPS 203 para el establecimiento de claves ML-KEM y FIPS 204 y FIPS 205 para firmas digitales.
ML-KEM es un mecanismo de encapsulación de claves, no un sustituto directo del cifrado simétrico de datos.Se puede utilizar para establecer un secreto compartido y, después, cifrar los datos con un cifrado simétrico autenticado.Riesgo cuántico para las criptomonedas
El riesgo cuántico afecta de manera distinta al cifrado y a las firmas de las criptomonedas.Es posible que los sistemas de firma de clave pública deban migrar con el tiempo a alternativas resistentes a los ordenadores cuánticos.El cifrado simétrico también se ve afectado por las técnicas de búsqueda cuántica, pero aumentar el tamaño de las claves puede proporcionar una protección adicional.Para una protección a largo plazo frente a posibles mejoras en la búsqueda cuántica, AES-256 suele considerarse una opción más conservadora que AES-128.Las redes cripto no pueden migrar de forma segura cambiando solo una aplicación de wallet, ya que los formatos de transacción, las reglas de direcciones, los contratos inteligentes, los nodos y los sistemas de custodia pueden requerir coordinación.Los usuarios deberían seguir las directrices oficiales de actualización del protocolo, en lugar de transferir activos basándose en afirmaciones no fundamentadas sobre la computación cuántica.Ventajas del cifrado en el ámbito cripto
El cifrado puede proteger secretos de wallet si roban un dispositivo de almacenamiento o un archivo de copia de seguridad.Puede reducir la exposición de información sensible transmitida a través de una red no fiable.Puede proteger mensajes privados, credenciales API, registros de cuentas e información de recuperación.Puede facilitar el intercambio controlado de datos en aplicaciones blockchain.El cifrado autenticado puede detectar cambios no autorizados y ocultar el contenido.Los diseños híbridos y umbral pueden distribuir el acceso con mayor seguridad que un único secreto compartido en texto en claro.El cifrado puede reducir el riesgo, pero no garantiza la seguridad de los activos ni sustituye la revisión segura de las transacciones.Limitaciones del cifrado
El cifrado no impide que un usuario autorizado comparta voluntariamente el texto en claro.No oculta todos los metadatos.No protege los datos después de que se robe la clave de descifrado.No puede recuperar activos transferidos mediante una transacción válida pero maliciosa.No puede hacer confidencial la ejecución de contratos inteligentes públicos sin tecnología de privacidad adicional.No garantiza que el software esté libre de errores de implementación.También puede provocar una pérdida permanente de datos si se pierde la única clave de descifrado o contraseña.Cómo deberían utilizar el cifrado los desarrolladores
Los desarrolladores deberían empezar definiendo claramente el modelo de amenazas y determinando qué información requiere confidencialidad.Deberían utilizar bibliotecas criptográficas mantenidas y métodos de cifrado autenticado estandarizados.Las claves deben generarse con aleatoriedad segura y nunca codificarse directamente en código fuente público.Los requisitos de nonces e IV deben respetarse al pie de la letra.Los datos protegidos por contraseña deberían utilizar una función adecuada de derivación de claves con salt y parámetros revisados.Los mensajes de error no deberían revelar si determinadas partes de los datos secretos eran correctas.Los desarrolladores deberían probar el texto cifrado dañado, las contraseñas incorrectas, la reutilización de nonces, los archivos truncados, las claves caducadas y las migraciones interrumpidas.Las revisiones de seguridad deberían abarcar todo el ciclo de vida de las claves, no solo la función de cifrado.Cómo pueden utilizar el cifrado de forma segura los usuarios cripto
El primer paso es entender si una contraseña cifra un archivo de wallet local, modifica la derivación de la wallet o controla una cuenta online.El segundo es utilizar una contraseña segura y única para los datos cifrados de la wallet.El tercero es proteger las frases de recuperación de forma independiente, ya que quizá el cifrado local no las proteja.El cuarto es conservar copias de seguridad seguras tanto del texto cifrado como de la información de recuperación necesaria.El quinto es probar la recuperación antes de depositar una cantidad importante de criptoactivos.El sexto es evitar introducir secretos de wallet en sitios web, mensajes o formularios de soporte.El séptimo es verificar los detalles de la transacción en una pantalla de confianza antes de firmarla.El octavo es mantener actualizados el software de la wallet, los sistemas operativos, los navegadores y los dispositivos.El noveno es utilizar conexiones de red cifradas sin tratar HTTPS como prueba de que un sitio web es legítimo.El décimo es planificar qué hacer si la contraseña, el dispositivo o el titular de una clave dejan de estar disponibles.Ejemplo de cifrado de una copia de seguridad de wallet
Supongamos que Alice crea una copia de seguridad de wallet que contiene material de claves sensible.Su wallet genera un salt aleatorio y deriva una clave de cifrado a partir de la contraseña de Alice mediante una función de derivación de claves basada en contraseñas.La wallet genera un nonce único y cifra la copia de seguridad mediante cifrado autenticado.Almacena el texto cifrado, el salt, el nonce, los parámetros de derivación y la etiqueta de autenticación en un archivo estructurado.Un ladrón que robe únicamente el archivo aún tendría que adivinar la contraseña de Alice y verificar cada intento mediante el costoso proceso de derivación.Una contraseña segura y unos parámetros de trabajo adecuados pueden dificultar considerablemente este ataque.Alice guarda la copia de seguridad cifrada en más de un lugar seguro y almacena la contraseña por separado.Prueba el procedimiento de recuperación en un entorno controlado antes de confiar en la copia de seguridad.Si Alice olvida la contraseña y no dispone de otro método de recuperación, la copia de seguridad cifrada podría quedar inutilizable de forma permanente.Errores frecuentes de cifrado
Un error frecuente es suponer que las transacciones de criptomonedas son privadas porque utilizan criptografía.Otro es confundir las firmas digitales con el cifrado.Un tercer error es tratar Base64, hexadecimal u otro formato de codificación como si fuera cifrado.Un cuarto es guardar la contraseña de descifrado junto al archivo de wallet cifrado.Un quinto es utilizar una contraseña humana débil sin una función de derivación de claves adecuada.Un sexto es reutilizar un nonce con un modo de cifrado que exige que sea único.Un séptimo es cifrar datos sin un mecanismo de autenticación.Un octavo es almacenar permanentemente on-chain datos sensibles cifrados sin tener en cuenta una posible filtración futura de la clave.Un noveno es suponer que una hardware wallet cifrada elimina el riesgo de transacciones maliciosas.Un décimo es no probar la restauración de la copia de seguridad antes de perder la wallet original.Preguntas frecuentes
¿Qué significa cifrado en las criptomonedas?
El cifrado consiste en transformar datos de wallet, mensajes, copias de seguridad u otra información en texto cifrado que requiere una clave autorizada para descifrarse.¿Están cifradas las transacciones de criptomonedas?
La mayoría de las transacciones de blockchains públicas están firmadas y se pueden verificar públicamente, en lugar de estar cifradas.¿Por qué se firman las transacciones de blockchain en vez de cifrarse?
Los participantes de la red deben leer y verificar las instrucciones de las transacciones, mientras que la firma demuestra que la clave autorizada las ha aprobado.¿Cuál es la diferencia entre cifrado y criptografía?
El cifrado es una parte de la criptografía, que también incluye hash, firmas, pruebas, compromisos y métodos para establecer claves.¿Cuál es la diferencia entre cifrado y hash?
El cifrado es reversible con la clave adecuada, mientras que un hash seguro está diseñado como una transformación unidireccional.¿Cuál es la diferencia entre cifrado y codificación?
El cifrado requiere material de clave protegido, mientras que la codificación solo cambia la representación de los datos y normalmente cualquiera puede invertirla.¿Qué es el cifrado simétrico?
El cifrado simétrico utiliza la misma clave secreta, o claves secretas estrechamente relacionadas, para cifrar y descifrar los datos.¿Qué es el cifrado asimétrico?
El cifrado asimétrico utiliza una clave pública para cifrar y una clave privada correspondiente para descifrar.¿Qué es el cifrado híbrido?
El cifrado híbrido protege los datos con una clave simétrica y protege esa clave mediante un mecanismo de clave pública.¿Qué es AES?
AES es un cifrado de bloque simétrico estandarizado, disponible con claves de 128, 192 y 256 bits.¿Qué es el cifrado autenticado?
El cifrado autenticado oculta el texto en claro y detecta modificaciones no autorizadas en los datos protegidos.¿Qué es un nonce de cifrado?
Un nonce es un valor adicional que debe cumplir los requisitos de unicidad o imprevisibilidad del método de cifrado seleccionado.¿La contraseña de una wallet es lo mismo que una clave privada?
No. Una contraseña de wallet puede desbloquear un archivo cifrado, mientras que la clave privada autoriza directamente las transacciones de la cuenta asociada.¿La contraseña de una wallet protege la frase de recuperación?
No necesariamente, ya que la frase de recuperación puede recrear la wallet independientemente del archivo local cifrado.¿Una frase de contraseña BIP-39 es un cifrado normal?
No. Modifica la seed derivada y crea una wallet distinta, en lugar de limitarse a descifrar un archivo mnemotécnico almacenado.¿Qué es un keystore cifrado?
Un keystore cifrado es un archivo estructurado que contiene material de clave privada cifrado y los parámetros necesarios para derivar y verificar su clave de descifrado.¿Se puede hackear una wallet cifrada?
Sí. Los atacantes pueden adivinar una contraseña débil, explotar el software de la wallet, capturar la contraseña, leer la memoria descifrada o engañar al usuario para que autorice una transacción maliciosa.¿Una hardware wallet utiliza cifrado?
Una hardware wallet puede cifrar el almacenamiento interno, pero su finalidad principal es mantener las operaciones con claves privadas aisladas del ordenador conectado.¿HTTPS hace que un sitio web cripto sea seguro?
No. HTTPS cifra la conexión con el dominio, pero no demuestra que el sitio web o la solicitud de transacción sean honestos.¿Los contratos inteligentes pueden mantener secretas las claves de cifrado?
Los contratos inteligentes públicos normales no pueden almacenar de forma segura una clave secreta que deba permanecer oculta a todos los participantes de la red.¿Se pueden almacenar datos cifrados on-chain?
Sí, pero el texto cifrado y los metadatos de la transacción siguen siendo públicos, y una filtración futura de la clave puede revelar el texto en claro almacenado permanentemente.¿Las pruebas de conocimiento cero son cifrado?
No. Las pruebas de conocimiento cero demuestran que una afirmación es cierta sin revelar todas las entradas privadas, mientras que el cifrado oculta datos que se pueden recuperar.¿Qué es el cifrado umbral?
El cifrado umbral requiere la colaboración de un número definido de participantes para poder descifrar los datos protegidos.¿El cifrado puede recuperar criptomonedas robadas?
No. El cifrado no puede revertir una transferencia válida en una blockchain ni recuperar activos enviados a un atacante.¿Qué ocurre si se pierde una clave de cifrado?
Los datos cifrados correctamente pueden quedar permanentemente inaccesibles si no queda ninguna copia utilizable de la clave de descifrado o ningún método de recuperación.¿Qué es el cifrado poscuántico?
El cifrado poscuántico utiliza sistemas de establecimiento de claves y cifrado diseñados para resistir ataques de futuros ordenadores cuánticos.¿La criptografía actual de las wallets es resistente a los ordenadores cuánticos?
Muchos sistemas de firma de criptomonedas de uso común no están diseñados para resistir a un futuro ordenador cuántico suficientemente potente.¿El cifrado robusto garantiza la seguridad cripto?
No. La seguridad también depende de los dispositivos, el software, la gestión de claves, las copias de seguridad, los permisos, la revisión de transacciones y el comportamiento de los usuarios.Conclusión
El cifrado transforma información legible en texto cifrado que las partes autorizadas pueden recuperar con la clave criptográfica correcta.En el ámbito de las criptomonedas, protege archivos de wallet, copias de seguridad de claves privadas, credenciales, mensajes, registros almacenados y conexiones de red.No debe confundirse con las firmas digitales, el hash ni la codificación de datos.Por lo general, las transacciones de blockchains públicas están firmadas y son visibles públicamente, en lugar de estar cifradas.El cifrado simétrico protege eficazmente grandes cantidades de datos, mientras que la criptografía asimétrica ayuda a establecer claves y proteger datos destinados a destinatarios concretos.Los sistemas modernos suelen combinar estos métodos mediante cifrado híbrido y autenticado.El cifrado de wallets reduce el riesgo que suponen los archivos robados, pero no puede proteger secretos si un malware captura la contraseña o la clave descifrada.Las frases de recuperación, las contraseñas locales de wallets y las frases de contraseña BIP-39 deben entenderse y protegerse conforme a sus distintas funciones.Los desarrolladores deben utilizar algoritmos revisados, aleatoriedad segura, nonces únicos, derivación robusta de claves, autenticación y procedimientos completos de gestión de claves.Los usuarios deben conservar copias de seguridad probadas, verificar los detalles de las transacciones, proteger sus dispositivos y evitar tratar HTTPS o el cifrado del hardware como prueba de que una aplicación es fiable.Los estándares poscuánticos empiezan a ofrecer nuevas opciones para establecer claves y firmar, pero la migración de las criptomonedas requerirá una coordinación cuidadosa entre wallets, protocolos e infraestructura.Comprender el cifrado ayuda a los usuarios cripto a distinguir la confidencialidad de la autorización de transacciones y a tomar mejores decisiones sobre wallets, copias de seguridad, privacidad y seguridad de los activos a largo plazo.También te puede interesar
ZK-Rollup
ZK-Rollup-as-a-Service
zk-SNARK
POPULAR
Criptomonedas de moda que están acaparando la atención del mercado
Volumen TOP
Las criptomonedas con mayor volumen de trading
Recién Añadidos
Criptomonedas recientemente listadas y disponibles para operar

