Electrum seed palabras seguridad pregunta tonta

Estoy comenzando con bitcoin y, aunque entiendo bastante bien cómo funciona la cadena de bloques, las palabras clave que usan algunas billeteras (MultiBit y Electrum) me dan escalofríos y dudas. La pregunta principal es: ¿Por qué son seguros? La base de la pregunta: los humanos no son una buena fuente de datos aleatorios, por lo que usamos palabras semilla de una fuente basada en el tiempo de PC aleatorio. Estas palabras semilla son una representación de un número binario y la frase con 12 palabras hace un hash de 128 bits. Esas palabras se extraen de un diccionario de 4096 palabras. El diccionario de Electrum se guarda en un script de python, por ejemplo. Entonces, podemos decir que conocemos esas 4096 palabras. Tengo una frase inicial (12 palabras) de mi billetera. ¿Qué protege toda la red de alguien que cambia la última palabra de su propia frase 4096 veces, para abrir 4096 billeteras bitcoin? Lo sé con Electrum, de nuevo por ejemplo, que 128 de esos 4096 generan direcciones válidas. ¿Qué protege entonces a la red de que alguien abra las billeteras bitcoin de 128 compañeros y robe todo el dinero? La última parte es más simple, la validación se realiza en línea, ¿cómo una verificación de billetera de las palabras abre la clave privada si pueden funcionar sin conexión?

Para mayor seguridad, uno puede cambiar y también agregar algunas palabras usando palabras que no están en el diccionario.

Respuestas (3)

Para la gran mayoría de las posibles combinaciones de 12 palabras, las billeteras correspondientes estaban vacías y nunca se generaron. El número total de combinaciones es bastante grande , por lo que tratar de usar la fuerza bruta no funcionará. De hecho, las palabras son solo otra forma (mnemotécnica) de codificar la entropía contenida en la clave privada.

Sé que las palabras son solo una representación de los diversos conjuntos de 2^12 bits. Pero, entonces la respuesta es SÍ. Sería "descifrar" las carteras. Entiendo que la gran mayoría será virgen o vacío. Pero esas 128 palabras válidas para el reemplazo de la última palabra en una frase válida son bastante fáciles de probar. ¿Cuánto tiempo costaría hacer eso?
@SasukePikaloko No entiendo muy bien de dónde viene el número 128... ¿Y cuál es el razonamiento detrás de tratar de reemplazar la última palabra?
El 128 es del CRC. Solo 128 palabras dieron direcciones válidas. La razón es simple: si empiezo a tratar de cambiar una palabra, eventualmente tendré acceso a la billetera y veré dinero de alguien. Estaba tratando de entender el momento para eso. Alrededor de 1,5x10^24 años si intenta una frase por segundo. ¿Es correcto?

Es seguro de la misma manera que lo son las claves privadas; el espacio de búsqueda es tan masivo que la probabilidad de que alguien genere una clave privada o una semilla que otra persona esté usando es extremadamente pequeña, por lo que es básicamente imposible.

Nada protege a alguien de generar cientos de miles de claves y cientos de miles de frases semilla y ver si alguna de ellas tiene Bitcoin asociado. Pero dado que el espacio de búsqueda es tan masivo, esa persona tendría una probabilidad de casi 0 de encontrar una clave que alguien haya usado. Incluso si generara un millón de claves por segundo (ya sea al azar o mediante frases semilla), esa persona tendría básicamente una probabilidad de 0 de encontrar la clave privada de otra persona, incluso si buscara hasta la muerte por calor del universo.

La última parte es más simple, la validación se realiza en línea, ¿cómo una verificación de billetera de las palabras abre la clave privada si pueden funcionar sin conexión?

Así no es como funciona Bitcoin. No hay ninguna validación de ningún tipo con claves privadas. No hay necesidad de "validar" claves privadas o registrarlas en ningún lugar o similar.

Estaba preguntando sobre el proceso en el que escribo las palabras en la billetera para importar y luego mi aplicación de billetera recupera mi bitcoin. La billetera no puede hacer eso fuera de línea. Pero haciéndolo solo, ¿a quién rápido es este proceso? El proceso es escribir una frase -> mostrar bitcoin. Si este proceso es TAN RÁPIDO, se puede hacer en microsegundos, entonces alguien puede probar alrededor de mil combinaciones por segundo. ¿Qué tan posible es esto?
La derivación de claves es rápida para los humanos. Pero, como dije, la cantidad de claves privadas posibles (que es lo que importa aquí; las frases son esencialmente las mismas que las claves privadas) es tan enorme que incluso si generaste miles por segundo, la probabilidad de que encuentres una clave por el el tiempo de muerte por calor del universo que alguien tiene o está usando es básicamente 0. Buscar si una clave se ha usado también se puede hacer rápidamente, pero es mucho más lento que la generación de claves, ya que requiere búsquedas en la base de datos.

Tenga en cuenta que el orden de estas palabras también debe ser correcto, por lo que estos 35 dígitos decimales de posibilidades aumentarán a 44 dígitos decimales. Incluso si pudieras comprobar 1000.000.000 de posibilidades por segundo, el tiempo del universo no sería suficiente.