- ¿Qué significa que la seguridad de ECDSA de 256 bits, y por tanto de las claves de Bitcoin, sea de 128 bits? Quiero decir, si tengo aproximadamente 2^256 puntos posibles en la curva elíptica (por lo tanto, posibles claves públicas) y, por lo tanto, claves privadas, ¿no se requieren aproximadamente 2^256 cálculos para encontrar la clave pública (o un poco menos si la clave se alcanza temprano)? A partir de esto, me parece que la seguridad es de alrededor de 256 bits.
Estaría en lo cierto si la búsqueda exhaustiva fuera la única forma de determinar la clave privada de una clave pública determinada. Sin embargo, ese no es el caso.
Existen algoritmos que pueden hacer esto con aproximadamente √n operaciones (si el número de puntos de la curva es norte). También son prácticos (aparte de necesitar una cantidad inviable de cálculo): por ejemplo, no necesitan mucha memoria. En concreto, variantes de Rho de Pollard o canguro El algoritmo se puede utilizar para resolver logaritmos discretos en curvas elípticas.
- Si la seguridad es de 128 bits, ¿por qué tenemos una semilla de 512 bits? Quiero decir, ¿por qué no son 128 bits, porque los bits adicionales no aumentan la seguridad?
Seguridad conservadora. Tener una semilla con menos de 128 bits de entropía ciertamente sería perjudicial para la seguridad, y es poco possible que más de 256 bits sean útiles. BIP32, el estándar que ahora se utiliza casi universalmente para la derivación de claves, utiliza una clave de 256 bits + un “código de cadena” adicional de 256 bits para las claves maestras. En retrospectiva, esto puede haber sido excesivo (descargo de responsabilidad: soy el autor de BIP32, y ciertamente no sabía tanto sobre criptografía en aquel entonces como ahora), pero también es relativamente barato, en el sentido de que las claves maestras rara vez son observadas por humanos.
Si bien es cierto que la seguridad de particular person claves nunca es más que 2128no es exactamente cierto para las semillas. Tener semillas con más entropía significa que no se puede simplemente calcular todo llaves de una billetera incluso con una máquina presente que pueda realizar 2128 cálculos. Esta es la intuición que subyace al hacer que las claves maestras y las semillas sean más grandes, pero nuevamente, esto es excesivo.
- ¿Qué significa que la seguridad de ECDSA de 256 bits, y por tanto de las claves de Bitcoin, sea de 128 bits? Quiero decir, si tengo aproximadamente 2^256 puntos posibles en la curva elíptica (por lo tanto, posibles claves públicas) y, por lo tanto, claves privadas, ¿no se requieren aproximadamente 2^256 cálculos para encontrar la clave pública (o un poco menos si la clave se alcanza temprano)? A partir de esto, me parece que la seguridad es de alrededor de 256 bits.
Estaría en lo cierto si la búsqueda exhaustiva fuera la única forma de determinar la clave privada de una clave pública determinada. Sin embargo, ese no es el caso.
Existen algoritmos que pueden hacer esto con aproximadamente √n operaciones (si el número de puntos de la curva es norte). También son prácticos (aparte de necesitar una cantidad inviable de cálculo): por ejemplo, no necesitan mucha memoria. En concreto, variantes de Rho de Pollard o canguro El algoritmo se puede utilizar para resolver logaritmos discretos en curvas elípticas.
- Si la seguridad es de 128 bits, ¿por qué tenemos una semilla de 512 bits? Quiero decir, ¿por qué no son 128 bits, porque los bits adicionales no aumentan la seguridad?
Seguridad conservadora. Tener una semilla con menos de 128 bits de entropía ciertamente sería perjudicial para la seguridad, y es poco possible que más de 256 bits sean útiles. BIP32, el estándar que ahora se utiliza casi universalmente para la derivación de claves, utiliza una clave de 256 bits + un “código de cadena” adicional de 256 bits para las claves maestras. En retrospectiva, esto puede haber sido excesivo (descargo de responsabilidad: soy el autor de BIP32, y ciertamente no sabía tanto sobre criptografía en aquel entonces como ahora), pero también es relativamente barato, en el sentido de que las claves maestras rara vez son observadas por humanos.
Si bien es cierto que la seguridad de particular person claves nunca es más que 2128no es exactamente cierto para las semillas. Tener semillas con más entropía significa que no se puede simplemente calcular todo llaves de una billetera incluso con una máquina presente que pueda realizar 2128 cálculos. Esta es la intuición que subyace al hacer que las claves maestras y las semillas sean más grandes, pero nuevamente, esto es excesivo.