Estaba tratando de aprender a trabajar con bitcoin y tratando de entender el funcionamiento de la billetera bitcoin.
Puedo ver el comportamiento de cómo una billetera HD comienza con una dirección y luego agrega direcciones adicionales para recibir bitcoin.
Leí bip-0032, pero todavía estoy confundido. Si regenero una billetera desde la semilla (en otro teléfono móvil), ¿cómo llenará el sistema la billetera con todas las direcciones anteriores que contienen un saldo? ¿Intentará descargar la cadena de bloques anterior y buscarla, o hay otra forma?
¿Cómo localizamos una lista de todas las direcciones que creamos con la billetera HD? ¿Cómo podemos verificar el saldo de esas direcciones?
Sé que esta pregunta va a recibir votos negativos, por favor denme algunas ideas.
También sería útil si alguien puede compartir algunos enlaces donde podría obtener ayuda para aclarar dudas (no programación, trabajo general).
La derivación semilla funciona aumentando un "nonce" y derivando una dirección de eso. Entonces, por ejemplo, si pretendemos que tenemos 1234 como nuestra semilla, entonces podríamos aumentar esa semilla en 1 para cada derivación de dirección. Si usamos un hash sha256 simple de eso como nuestra clave privada, obtenemos las siguientes direcciones:
Nonce
Final Seed
Address
0
1234
1B3PHXB6g5YGLvzTkxrrPEdLbpvfEoC5Qi
1
1235
1NxaF9cYPL53fNTHMN6wtmq1w8bmHEe3gp
2
1236
1DPF9wFiuFowUK4NwJdbd2W9L59bPPnWNM
3
1237
13ehhpMndUoh5E4QcHJ7QSWwuKC7ySpxrL
4
1238
17CF5qesU9KXBHAsa9tEz1126kqSDy56tC
5
1239
1MfTGTiszztzzjzKajvS1Wc3TznqpfyPh7
6
1240
16t3QqxUVssdTAYUibdY8K4aCFYsP6pUWE
Obviamente, esto está demasiado simplificado y no es la derivación que se usa en la mayoría de las implementaciones de BIP32. En cuanto a cómo se restauran, simplemente sigue derivando direcciones hasta que encuentras un montón seguido que no se usa. Esto se denomina intervalo de búsqueda y normalmente se puede configurar.
Las billeteras en realidad no tienen bitcoins, lo que almacenan son claves públicas y privadas. Este enlace explica los conceptos básicos.
Cualquiera que conozca esta información puede usar los bitcoins almacenados en esa dirección. ¡Ni siquiera necesitas una billetera!
Las billeteras brindan una forma de generar nuevas direcciones para cada transacción y recordar las claves privadas asociadas. También pueden proporcionar funciones para que, si necesita volver a crear la billetera, pueda recrear para usted las mismas direcciones y claves privadas asociadas que tenía antes para que pueda gastar cualquier bitcoin almacenado en una dirección que creó con la billetera.
De ninguna manera soy un experto, pero actualmente estoy leyendo Mastering Bitcoin de Andreas M. Antonopoulos y también tenía esta pregunta. El Capítulo 5 analiza en profundidad cómo funcionan las billeteras HD y cómo pueden restaurar direcciones a partir de una frase inicial y una contraseña/sal. El libro menciona que hay miles de millones de direcciones posibles, pero no cómo su nueva billetera determina cuál de estas direcciones se usó realmente en el pasado.
Esta pregunta me ayudó a aclararme la cabeza: ¿Cómo encontrar el saldo de la billetera?
El software de la billetera generará una cantidad determinada de direcciones y verificará el saldo al inicializar la billetera (¿quizás 50? Esto variará y se puede configurar en algunos programas). La billetera probablemente incluirá alguna lógica como "buscar 50 direcciones más allá de la última dirección utilizada encontrada". Puede diseñar esto para que se ajuste a sus necesidades, por ejemplo, si fuera un comerciante que acepta pagos en un sitio web ocupado, es posible que necesite un límite más alto, en caso de que 50 clientes seguidos generen una dirección de pago pero luego no completen el pago.
fluffyponyza
Cuenta