479 / 736BIT-H

Entropy Bit

Bits de entropía: la incertidumbre que le queda al atacante

Un lanzamiento secreto de una moneda equilibrada representa un bit de entropía. Este ejemplo también explica por qué 256 bits almacenados no tienen por qué representar 256 bits de secreto real.

Un bit de entropía es una unidad para describir la incertidumbre al adivinar un valor secreto. Si dos resultados son igual de probables y el atacante no sabe cuál ocurrió, hay un bit de entropía. Cuatro posibilidades equiprobables son dos bits; dieciséis, cuatro bits. No es lo mismo que el número de bits que un archivo o una clave ocupa en memoria.

Una moneda equilibrada da la misma probabilidad a ambas caras. Un lanzamiento secreto tiene dos posibilidades; dos lanzamientos independientes tienen cuatro; cuatro lanzamientos tienen dieciséis. Cada lanzamiento independiente adicional duplica las secuencias posibles y añade un bit de entropía. Eso expresa H = log2(N): con N posibilidades equiprobables obtenemos el número de bits. Para 16 posibilidades son 4 bits. La igualdad de probabilidades es una condición importante, como veremos más adelante. [1] [2]

Ahora, en vez de volver a lanzar, toma un solo resultado y escríbelo 256 veces. La cadena tendrá 256 bits, pero seguirán existiendo solo dos posibilidades: todo ceros o todo unos. El secreto real sigue teniendo solo 1 bit de entropía. La repetición no creó nuevas elecciones independientes. Puede ocurrir lo mismo de forma menos evidente cuando las mediciones están relacionadas. Por eso no se puede multiplicar sin más la entropía estimada de una muestra por el número de muestras sin comprobar su independencia. [1]

Un mismo valor puede escribirse con cifras habituales, palabras o notación hexadecimal. Esta última usa cifras y las letras de la A a la F: es otra forma de escribir un número, no un secreto nuevo. Tampoco un hash, una huella de los datos calculada mediante una función, añade por sí mismo posibilidades desconocidas. Si procede de un conjunto pequeño de entradas posibles, el atacante puede probarlas y comparar sus huellas. Si conoce la entrada exacta, puede calcular el mismo resultado. Lo decisivo es cómo se creó el valor secreto, no lo complicado que parezca. [1] [2]

En BIP39, 12 palabras representan 128 bits de entrada y 4 de suma de comprobación: 132 en total. Con 24 palabras son 256 más 8, es decir, 264 bits. Los bits de comprobación se calculan; no son elecciones secretas independientes adicionales. Los 128 o 256 bits también presuponen un buen método para crear la entrada. Si eliges las palabras tú mismo basándote en tu historia favorita, su número no garantiza esa entropía. [3]

Imagina 128 bits secretos independientes, cada uno obtenido como un lanzamiento de moneda equilibrada. Si revelas 32 bits concretos, en este modelo quedan 96 desconocidos. No es una regla general para cualquier filtración: depende de la información revelada y de las relaciones entre los valores. La seed es el valor secreto inicial del que la cartera deriva sus claves. Quien conoce toda la seed no necesita adivinarla. Su incertidumbre es cero, aunque se hubiera generado perfectamente. [1] [2]

Hasta ahora, todos los resultados eran igual de probables. Con una fuente sesgada, el atacante probablemente probará primero el resultado más frecuente. La minentropía mide la ventaja de ese primer intento: Hmin = -log2(pmax), donde pmax es la probabilidad del resultado más común. Si es 3/4, obtenemos unos 0,415 bits. También existe la entropía de Shannon, que describe la información media. Son medidas distintas y ninguna equivale al número medio exacto de intentos necesarios para descubrir el secreto. [1] [2]

El atacante no tiene que limitarse a adivinar la entrada original; puede intentar aprovechar propiedades matemáticas del algoritmo. Por eso se distinguen bits de entropía, longitud de clave y fortaleza de seguridad. En la criptografía de curva elíptica (ECC), la seguridad depende de la dificultad de un problema matemático concreto. Por ejemplo, NIST SP 800-57 asigna a claves ECC de 256 a 383 bits una fortaleza de 128 bits en su comparación clásica. No es una evaluación de una cartera concreta ni una afirmación de que toda clave de 256 bits ofrece 256 bits de seguridad. [4]

Pregunta qué medida de entropía se usa, de qué fuente procede la estimación y qué puede saber el atacante. NIST SP 800-90B evalúa la fuente y sus muestras, incluidas las dependencias y el comportamiento tras reiniciar. Medir un archivo no garantiza el resultado para todos los dispositivos y todas las condiciones futuras. La minentropía tampoco determina por sí sola un tiempo exacto de ataque. Un número sirve cuando entendemos sus supuestos. [1]

Para obtener la imagen más completa, lee esta entrada junto con Cryptographic Entropy, Brute Force Search Space, Seed Phrase, Private Key. También enlazan con esta entrada Dice Roll Entropy, Cryptographic Entropy, Brute Force Search Space.

DOC · 001NIST SP 800-90B — Min-entropy and dependent samplesEspecificación DOC · 002RFC 4086 — Entropy measures and guessingEspecificación DOC · 003BIP39 — Input entropy and checksum lengthsEspecificación DOC · 004NIST SP 800-57 Part 1 Rev. 5 — Key length and security strengthEspecificación
Revisado: Fuentes primero · No es asesoramiento financiero