¿Alguna vez te has preguntado por qué la billetera BTC de otra persona no puede generar la misma dirección que la tuya? ¿O por qué alguien no puede generar la misma frase semilla que tú? ¡Después de todo, son solo unas pocas palabras! En este hilo analizamos los números, investigando cuán bien bitcoin protege tu riqueza. 🧵⬇️
Hay 3 herramientas principales que utiliza el protocolo de bitcoin para proteger tu riqueza, que vale la pena entender: Entropía, funciones hash y criptografía asimétrica. Cada una de estas se utiliza extensamente en el mundo de la seguridad digital, incluso fuera de bitcoin. Vamos a explicar brevemente cada una.
Primero: Entropía. Este es un nombre elegante y conciso para "aleatoriedad impredecible." Si eliges un número muy grande al azar, de manera impredecible, entonces ningún ordenador podría jamás esperar adivinarlo (¡siempre que el número sea lo suficientemente grande!). Entonces tendrías un secreto seguro.
¿Qué tan grande es un número lo suficientemente grande? El NIST recomienda 2^112 (también conocido como 112 bits) o más para una seguridad efectiva. Como referencia, toda la red de minería de bitcoin actualmente hace alrededor de 2^79 intentos cada 10 minutos. ¡Pero 2^112 es más de 8 mil millones de veces más grande que eso!
Además, una frase semilla de 12 palabras representa una entropía aún mayor: 2^128. (Cada palabra representa 11 bits. 11*12 = 132, menos 4 bits para un checksum.) 2^128 es aproximadamente 65,000 veces más fuerte que la recomendación del NIST!
Para que alguien adivine una frase semilla específica, es como si necesitara pedir prestadas todas las máquinas de minería de bitcoin del mundo y hacer conjeturas durante unos 10.7 mil millones de años. Es teóricamente posible, pero es poco razonable pensar que alguna vez sucederá, si se siguen las mejores prácticas.
Segundo: Funciones hash. Las funciones hash son increíbles, porque puedes introducir cualquier dato (llamado preimagen) y generará un número único entre 0 y el límite superior de la función (SHA-256 es especialmente famoso, con un rango de hasta 2^256). Puedes introducir una palabra, una página, un libro.
Estas funciones son unidireccionales. Puedes encontrar fácilmente una salida a partir de una entrada. Sin embargo, si solo tienes la salida, no puedes encontrar la entrada sin adivinar. Incluso las salidas de entradas similares con cambios menores (como una letra mayúscula) se ven completamente diferentes y aleatorias:
Por lo tanto, una salida de hash tiene propiedades similares a la entropía. Alguien que busque una preimagen que resulte en una salida de hash particular tendría que intentar adivinar tras adivinar tras adivinar. Mientras se necesiten 2^112 intentos o más, es inviable y la preimagen es segura.
Bitcoin utiliza SHA-256 para ayudar a que las transacciones sean irreversibles, y ya sea SHA-256 o RIPEMD-160 para proteger la mayoría de los tipos de direcciones. Por lo tanto, para que una billetera genere la misma dirección que la de otra persona, necesitaría al menos 2^160 intentos, lo cual es más que suficiente seguridad.
Finalmente: Criptografía asimétrica. También conocida como criptografía de clave pública, o en muchos contextos criptografía de curva elíptica (ECC). En bitcoin, se utiliza ECC para que una clave privada pueda producir una clave pública, así como firmas para aprobar transacciones.
Si una clave pública es un número lo suficientemente grande, una vez más, tomaría una cantidad insana de intentos encontrar la clave privada asociada. Las claves de Bitcoin son números dentro de un espacio de 2^256. Las matemáticas funcionan de tal manera que la seguridad es en realidad la mitad de los bits, es decir, 2^128, lo cual es seguro.
En última instancia, todos los que realizan operaciones normales en la economía de bitcoin están protegidos por estándares de seguridad que van mucho más allá de las recomendaciones de NIST y de las contraseñas típicas de la banca en línea. El gráfico a continuación ayuda a visualizar la situación.
604