Cómo recuperar legible de la clave privada de bitcoinjs-lib

Todavía estoy nuevo en bitcoin y experimentando mucho con bitcoinjs-lib en JavaScript.

¿Cómo puedo crear una cadena legible a partir de una clave privada? Esta es mi configuración actual:

 const semilla = bip39.mnemonicToSeed(seedPhrase)
 const bitcoinNetwork = bitcoin.redes.testnet
 const hdMaster = bitcoin.bip32.fromSeed(semilla, bitcoinNetwork) // la semilla de arriba
 const par de claves = hdMaster.derivePath('m/0')
 // intentar obtener la clave privada como cadena legible
 const privateKeyBuffer = Buffer.a partir de(par.privateKey)
 const privateKey = privateKeyBuffer.toString('utf8')
 la consola.log('privateKey → ', privateKey)
 // no obtener la clave privada como cadena legible
 const { dirección } = bitcoin.pagos.p2pkh({ clave pública: un par de claves.clavepublica })

alguna idea para mí?

+609
RickMorty 22 oct. 2012 21:06:37
20 respuestas

La dificultad está ya en el punto donde se requiere más de un mil billones de hashes para resolver un bloque. 2^32 es de sólo 4 millones de dólares. Menos de uno en mil millones de veces, ¿habrá alguna nonce que hace que el bloque válido.

Un minero simplemente tiene que probar cada posible valor nonce en un bloque diferente. Se puede variar la coinbase, el conjunto de transacciones, y/o el bloque de marca de hora. Cualquier cambio en alguna de estas cosas los resultados en una nueva oportunidad para que exista una válida nonce.

A menudo la mejor opción es golpear la marca de hora, una práctica llamada NTime de rodadura.

El bloque de marca de hora no tiene que ser exacto, de todos modos, así que usted puede volver a la marca de tiempo atrás, digamos, diez segundos antes de iniciar la minería de datos y, a continuación, golpee hasta 20 veces antes de entregar y obtener un nuevo bloque. En el peor de los casos, su bloque de marca de tiempo va a estar fuera por una docena de segundos o así ... nadie se preocupa por eso.

Después de eso, es posible que desee obtener un nuevo bloque, porque no podrían ser algunas de las nuevas operaciones para incluir -- esto no sólo mejora la eficiencia de la red como un todo, sino que reduce las posibilidades de que te pierdas en un cargo de transacción.

+1000
Kay Chilvers 03 февр. '09 в 4:24

No, simplemente que vender y comprar bitcoins. Vendo mi bitcoins y usted compra de ellos estos bitcoins.

+990
Hvani 11 jun. 2013 6:14:41

La consecuencia más importante:

Aumentaría el huérfano de la tasa, que se da a las grandes mineras más oportunidad a la mía (ya que se ejecutan su propio ISP, mientras que un minero con 0.1% hashrate de la red probablemente no), y esto conduce a la centralización.

+913
Stephen Done 8 ene. 2014 8:10:58

Envié el dinero a la dirección equivocada. Yo no soy un desarrollador y que sólo entienden el blockchain en sus términos más generales.....pero puedo usar bitcoin todos los días, así que tengo un conocimiento de trabajo de la misma. Es difícil para mí para llegar a ninguna parte porque sé que ninguno de los idiomas, nada acerca de los scripts, y ni siquiera puede ejecutar una instalación a través del símbolo del sistema.....Estoy trabajando en ello, aunque. Hay una manera para mí para recuperar, regenerar, o volver a enviar mis extraviado transacrion? Veo que hay de por blockcypher. Traté de importación en uno de mis otras carteras pero no va a ir porque supongo necesito la clave privada. Por favor, ayudar.

+871
User that is not a user 7 dic. 2014 7:25:34

La red de distribución, para que no se vaya hacia abajo en todas partes a la vez.

A nivel local, por un lado es similar a las transacciones de débito - que necesita para estar en línea para ser procesados. Uno puede usar los teléfonos celulares a pesar de que tienen sus propias baterías para ejecutar por un tiempo, así que no es demasiado malo.

Por último, uno puede aceptar transacciones fuera de línea (el uso de los códigos QR, por ejemplo) y luego transmitirlas a través de la red, pero que conlleva el riesgo de un doble gasto.

Y si quieres realmente transacciones fuera de línea con poco riesgo, usar cosas como Casascius física Bitcoins.

+869
John May 19 nov. 2019 4:22:29

Usted debe tener descargado el electrum de un sitio falso que sirve una backdoored versión del programa. Si usted todavía tiene acceso a su historial del navegador sugiero ir a través de él para encontrar la URL exacta que usted utiliza para descargar de electrum. El sitio oficial es en electrum.org y las descargas se sirve a través de download.electrum.org.

+818
sschuth 9 ene. 2018 21:02:23

nLockTime, de hecho, puede ser utilizado por los meta-protocolos (por ejemplo, de la Contraparte, Mastercoin) porque nLockTime simplemente decide cuando una transacción se puede extraer.

+793
Nr9 28 oct. 2019 10:35:19

Me gustaría añadir a la respuesta anterior. Estoy escribiendo un Phoenix/Elixir de la aplicación. He descubierto que puedo hacer todo lo anterior el uso de Blockchain RPC comandos.

blockchain.ex:

 def getrawtransaction( trans ), hacer: bitcoin_rpc( "getrawtransaction", [trans] )

 def decoderawtransaction( hex ), hacer: bitcoin_rpc( "decoderawtransaction", [hex] )

transaction_view.ex:

la transacción es una cadena como esta: "79895513e10d92fee5be47ec11c02bb29078ee0f7f3ca29e16afe113ff94c3d3"

 def mark_up_transaction( transacción ) ¿
 resultado = get_transaction( transacción )
 caso elem( resultado, 0 ) ¿
 :ok -> Veneno.codificar!( elem( resultado 1 ), bastante: true )
 :error -> Veneno.codificar!( De la cadena.downcase( elem( resultado 1 )[ "mensaje" ] ), bastante: true )
 _ -> Veneno.codificar!( "error desconocido", bastante: true )
final
final

 defp get_hex( transacción ) ¿
 resultado = Blockchain.getrawtransaction transacción
 caso de resultado ¿
 {:ok, hex } -> hex
 {:no válido, {:ok, hex }} -> hex # ¿por Qué hace esto, no sé, pero lo hizo
 {_, {:ok, hex }} -> hex
 _ -> nil
final
final

 defp get_transaction( transacción ) ¿
 hex = get_hex transacción
 Blockchain.decoderawtransaction( hex )
final
+626
Dilir Daiyan 20 jul. 2016 2:30:03

Mientras que usted puede ser capaz de importar la clave en otra cartera, es mejor crear una nueva cartera con una clave nueva y la transferencia de todos los bitcoin de la vieja cartera y en el nuevo, haciendo un regular bitcoin de transacciones en el blockchain. Esto elimina todo tipo de posibles complicaciones, incluyendo el riesgo de seguridad de revelar las claves de su vieja cartera.

+625
user6634 28 mar. 2010 0:32:50

Para recuperar arbitraria de las transacciones en Bitcoin Core console, usted necesita usar el txindex=1 opción en el archivo de configuración.

Tenga en cuenta que la configuración de esa opción se activará una nueva búsqueda completa de la blockchain que podría (según la configuración) tomar varias horas para completar.

+583
4lordaeron 8 nov. 2019 19:27:55

No, el BIP16 reglas que se aplican. Se requiere que no sólo proporcionan una redeemscript cuyo hash coincide con que en la salida (la dirección), pero también que las entradas válidas para que el script se proporcionan (que normalmente requiere el mínimo de firmas válidas).

+518
Laquita Barclay 17 sept. 2011 16:05:16

Estoy interesado en establecer un bitcoin y el rayo de nodo en mi pi. Quiero abrir un par de canales y estar bien conectado en la red. Tengo la intención de mantener este equipo en forma permanente, pero puede tener que desconectarlo si tengo que mover a otro socket o mantenerla. ¿Cuánto tiempo puede mi nodo de forma segura fuera de la bitcoin red sin riesgo de pérdida de fondos en mis canales?

+366
Maanaf Abdimaalik 19 abr. 2017 9:49:09

Lo Nicolai dijo que no es totalmente correcto. La red de decidir cuál es la principal cadena de acuerdo a la siguiente bloque minado. Supongamos que el bloque a y B son extraídos en casi el mismo tiempo. Los mineros aceptaría el primer bloque que fue transmitido a ellos, de modo que habría algunos mineros aceptar Una y otras aceptan B, no importa si a/B es aceptado por el 51% o más de los mineros o no. Los mineros de aceptar Una trataría de la mina el siguiente bloque en la parte superior de Un, mientras que otros mineros aceptando B trataría de la mina el siguiente bloque en la parte superior de B. Si el siguiente bloque que se encuentra es en la parte superior de a, entonces los mineros de la minería en la B va a girar a la Una de la cadena, que es la cadena principal. Por CIERTO, el bloque B se denomina como un huérfano bloque, usted puede encontrar más información sobre la https://blockchain.info/orphaned-blocks. Por supuesto, no puede ser una circunstancia que el bloque siguiente se extrae aproximadamente al mismo tiempo tanto en la parte superior de la Una y en la parte superior de B, entonces el proceso mencionado anteriormente se vuelva a circular hasta que el problema se solucionó. Ahora usted puede entender por qué los nuevos bloques no estarán disponibles hasta al menos 120 bloques se han construido en la parte superior de la cadena.

+353
Hector 20 mar. 2017 18:47:26

Es una mediana, no es un promedio, por lo tanto se selecciona el 6 de bloque de la marca de hora después de la clasificación.

Si usted es un no-hablante nativo de inglés, internacional de matemáticas de la heurística puede ser bastante complicado, navegar por la web antes de traducir en su cabeza.

+323
Gavinwilliums 5 feb. 2011 3:10:18

Un par de ellos de comercio de la Ondulación. Trate de bitstamp.net

+224
user7147804 24 jul. 2019 2:51:12

¿Cuál es la motivación para el grifo propietario?

Sólo para obtener un navegador de visita/dirección IP/planta de algunas de las cookies?

+114
JKubecki 25 oct. 2016 23:06:42

Sí, los "otros" es para fuentes demasiado pequeñas para mostrar en el gráfico.

El gráfico de la bitcoinwatch.com se titula "Hashrate de Distribución". Si usted haga clic a través de la blockchain.info el sitio incluye la palabra "grupo". Pero creo que el punto es sólo para mostrar los principales hash poderes, independientemente de si son de las piscinas. Si había una sola persona con suficiente hash poder para mostrar en el gráfico, apuesto a que lo iba a presentar, aunque una sola persona no es una piscina.

+92
Clive Long 14 ene. 2019 14:35:20

Hay un chico que ha estado probando este. Él ha ejecutó un equipo que genera direcciones de comprobaciones y los balances. Cabo de varios años, el procesamiento de millones de direcciones por día, a mi conocimiento, se ha encontrado 3 con saldos bajos. Así, se puede hablar teórico, donde las posibilidades son prácticamente cero, pero cuando hay alguien que se ha alcanzado al menos un 1, entonces tal vez no es tan raro como el de matemáticas sugiere.

+48
Kasian 22 may. 2019 14:30:11

Cómo convertir una dirección bitcoin (comienza con la 1) a la derecha de formato aceptable por script (yo estoy usando esta biblioteca de Ruby)? Estoy haciendo esto:

tx.salida |s|
o.valor(50000)
 o.script { |s| s.destinatario('1GzqkR2zNQUzHLpE7PLPjVNJ51FHC3bpdh') }
final

Estoy consiguiendo:

RuntimeError: tipo de secuencia de Comandos debe ser hash160, clave pública, p2wpkh o multisig

Sospecho que hay algo mal con el formato de la dirección de destino. He publicado a GitHub demasiado.

+45
Bosw 8 jul. 2012 7:41:28

¿Cómo puedo establecer una dirección permanente billeteras para enviar y recibir? ¿Cómo puedo saber de antemano que la dirección de las monedas será enviado? Tenemos una comunidad en los negocios MULTINIVEL que paga la membresía de las monedas. Al momento de la inscripción, es necesario especificar la dirección de BTC carteras. Sistema de pago detecta en base a la registrada cartera en el sistema. Ahora tenemos un problema, porque la dirección de envío cambiado cada vez que..por lo que muestra en cada una de las transacciones en una dirección diferente. Usted puede ayudar a resolver este problema? Gracias de antemano. marca

+31
Volk378 12 jul. 2016 0:08:41

Mostrar preguntas con etiqueta