CyberGlossary

Criptografía

Nonce

También conocido como: Número de un solo uso, Nonce criptográfico

Definición

Número de un solo uso que se suministra a un algoritmo criptográfico para garantizar la frescura y evitar reutilizaciones o ataques de repetición.

Un nonce es una entrada que no debe repetirse durante la vida útil de una clave, utilizada por cifrados simétricos, modos AEAD, esquemas de firma y protocolos de autenticación para asegurar que cada operación sea única. En AEAD como AES-GCM o ChaCha20-Poly1305 el nonce suele ser de 96 bits y puede generarse aleatoriamente o como contador determinista; reutilizar un nonce de AES-GCM bajo la misma clave rompe catastróficamente la confidencialidad y la autenticación. También aparece en handshakes TLS, retos OAuth/OIDC, cabeceras de bloques de Bitcoin y firmas como ECDSA, donde la reutilización del nonce filtra la clave privada. La buena práctica es usar nonces aleatorios con suficiente longitud o un contador estrictamente monotónico, y migrar a modos resistentes al mal uso (AES-GCM-SIV, XChaCha20-Poly1305) cuando no se puedan descartar colisiones.

Ejemplos

  • TLS 1.3 deriva el nonce AEAD por registro haciendo XOR del número de secuencia con el IV por dirección.
  • La recuperación de la clave privada ECDSA de la PlayStation 3 en 2010 se produjo porque Sony reutilizó el nonce de firma.

Términos relacionados