Seguimiento de transacciones salientes & maleabilidad ataque

¿Cuál es la mejor manera (en términos de seguridad o recursos) para realizar el seguimiento de mi transacciones salientes a través de la API RPC?

Me gustaría ser capaz de rastrear el uso de su tx id y también para disponer de un mecanismo de respaldo para cuando mi salientes de la operación de identificación de cambios como resultado de una maleabilidad de ataque.

+138
user1416450 12 nov. 2016 12:55:27
27 respuestas

¿Cuáles son los cambios concretos que se han hecho (es decir, relajado normas)?

Gavin Andresen hizo esta solicitud de extracción de proponer el cambio, así como los fundamentos documento que describe por qué apoyó el cambio.

¿Sólo se aplican a P2SH Txns?

Se aplica sólo a P2SH canjear secuencias de comandos, que es el script que se ejecuta para ver si usted tiene los datos necesarios para pasar una salida enviada a un P2SH dirección.

Por último, "n-de-m O y" y hash bloqueado oracle direcciones que se mencionan como ejemplos: ¿esto qué se refieren exactamente?

  • n-de-m O y se refiere a un script que comprueba la existencia de múltiples firmas a partir de un conjunto de teclas O una firma de otra clave. Por ejemplo, si Alice es dueño de un negocio y Bob y Charlie son sus empleados, puede permitir que Bob y Charlie a trabajar juntos para gastar sus bitcoins (2 de 2) o Alice ("y") puede gastar sus bitcoins en su propio.

  • hash-bloqueado oracle significa, generalmente, que puede crear una transacción que sólo puede ser usado cuando el hash de algunos datos. Por ejemplo, este PDF (página 24) describe un hash-cerrado contrato con tres partes: Alice, Bob y Charlie.

    • Alice quiere pagar 1.00 BTC a Charlie a través de Bob.

    • Charlie al azar genera un gran número de r y, a continuación, hash (HASH160) que el número de producir h. El valor de r es el oráculo y el valor de h es el hash de la cerradura.

    • Charlie le da hash h a Alice.

    • (Operación 1) Alice obtiene la clave pública de Bob y le paga 1.01 BTC en una salida con una secuencia de comandos como: <Bob pubkey> CHECKSIGVERIFY HASH160 <hash h> IGUAL

    • (Operación 2) Bob no puede pasar que la salida sin el número r que genera hash h, pero él sabe que Charlie tiene el número r de modo que Bob se de Charlie dirección y le paga 1.00 BTC con una secuencia de comandos como: <Charlie pubkey> CHECKSIGVERIFY HASH160 <hash h> IGUAL

    • (Operación 3) Charlie pasa la salida de transacción 2 mediante la creación de la firma script: <número r> <Charlie firma> > Esto significa que r es revelado en el bloque de la cadena.

    • (Operación 4) Bob ve r en el bloque de la cadena y la utiliza en algún momento de pasar la salida de la transacción 1: <número r> <Bob firma> >

    El ejemplo anterior parece demasiado artificial, pero el PDF enlazado más arriba que la utiliza como parte de un micropago canal que permite la liquidación de operaciones del bloque de la cadena en un modelo distribuido y baja confianza manera, posiblemente permitiendo Bitcoin a escala mucho mejor que sin dicho sistema.

+950
lava37 03 февр. '09 в 4:24

La clave pública debe ser en hexadecimal como @MohamedLEGH se señaló anteriormente. Con respecto a la clave privada tienes que añadir el código de red por primera vez. Consulte el paso 2 aquí.

+944
mielina 24 abr. 2015 20:32:12

A mi entender, después de investigar sobre la infraestructura de Bitcoin, el bloque de la cadena mantiene los registros de las transacciones entre dos partes representadas por sus claves públicas. Al mismo tiempo, el Bitcoin sistema de necesidades de los mineros para comprobar los bloques con el fin de mantener el sistema. Entonces mis preguntas van de la siguiente manera:

  1. Cómo son los mineros respecto a un determinado bloque? Y, ¿cómo es esta pieza de la información en el bloque de la cadena?

  2. Es "coinbase transacción" se almacena como parte de un bloque, y por lo tanto los registros de el bruto de la recompensa para la minería de dicho bloque? O, ¿qué elemento/registro dentro de un bloque es un registro de la cantidad de "recompensa"?

  3. Además de esta parte de "recompensa" emitido por el sistema, los mineros también pueden cobrar cargos por transacción (luz de referencia). Por favor me corrija si me equivoco: las tarifas de transacción son de libre flotación voluntaria de los residuos de transacciones normales, para ser coleccionada por el minero que consolidó el bloque. Entonces, ¿cómo son los honorarios de la transacción "pago" a los mineros? Parece que debe haber otra entrada de registro anidado dentro del bloque que denota la cantidad que el minero ha declarado. ¿Cómo puedo identificar este registro?

+848
jere 1 nov. 2019 13:45:33

Cuando un minero (le llaman Pete) se entera de que un nuevo bloque (llámalo X) ha sido extraído por alguien más, él normalmente actualizar el encabezado del bloque que está tratando a la mía, así que las listas de X como el bloque anterior. (De esa manera, Pete está ahora tratando de construir en la parte superior de X, en lugar de tratar de reemplazarlo.) Al mismo tiempo, Pete se nota que las transacciones fueron incluidos en el bloque X, y sacarlos de su "memoria" de confirmar las transacciones que él tenía la intención de incluir en el bloque que él estaba tratando de mina. Él va a reconstruir un árbol Merkle con el resto de las transacciones que desea incluir y actualizar su bloque cabeceras de partido.

De esta manera, cuando Pete tiene éxito en la minería un bloque, no contienen ninguna de las transacciones que se han contenido previamente extraído bloques.

+770
JanKay 26 jun. 2018 3:49:08

Desde el OP ha pedido una referencia específica, voy a copiar un texto relevante desde el Mastering Bitcoin libro de referencia. He cortado algunos de los menos relevantes de la información, y añadió en negrita énfasis en que es relevante para el OP pregunta:

Desde el capítulo 8 de las Transacciones de la Piscina:

Transacción Piscinas

Casi todos los nodos en el bitcoin red mantiene un temporal lista de transacciones sin confirmar llama la memoria de la piscina, mempool, o de la transacción de la piscina. Los nodos utilizan este grupo para mantener un seguimiento de las transacciones de las que se conoce a la red, pero aún no están incluidos en el blockchain. Por ejemplo, una cartera nodo utilizará la transacción de la piscina para el seguimiento de los pagos entrantes a la cartera del usuario que han sido recibidos en la red, pero aún no están confirmados.

Como la transacción es recibido y verificado, se añaden a la transacción de la piscina y se retransmiten a los nodos vecinos para difundir en la red.

...

La transacción de la piscina y huérfanos de la piscina (donde implementado) se almacenan en la memoria local y no se guardan en el almacenamiento persistente; más bien, son dinámicamente poblada de entrantes, mensajes de red. Cuando un nodo se inicia, ambas piscinas están vacías y poco a poco pobladas con nuevas transacciones recibidas en la red.

...

Mientras que la transacción y el huérfano piscinas de representar a un único nodo de la perspectiva local y puede variar significativamente de un nodo a nodo, dependiendo de cuando el nodo se inicia o se reinicia, el UTXO piscina representa el consenso emergente de la red y por lo tanto varían poco entre los nodos. Además, la transacción y el huérfano piscinas sólo contienen sin confirmar las transacciones, mientras que el UTXO piscina sólo contiene confirmado salidas.

+767
Mazarin 30 sept. 2019 23:25:25

Acabo de leer esta respuesta que los estados que la GPU de minería de apoyo fue retirado de cgminer a partir de la versión 3.7.2.

¿Alguien sabe qué versión de bfgminer debe ser utilizado para apoyar la GPU de minería de datos.

Actualmente estoy usando bfgminer 3.8.0. En Mac OSX 10.8.5, con una Intel HD Graphics 4000 de la GPU.

+747
riverhuang82 25 jun. 2017 2:56:24

Yo soy la construcción de una pequeña tienda en línea en donde me gustaría a aceptar BitCoins como forma de pago.

No he tenido la suerte de ejecutar el Demonio en mi servidor, por lo que estaba planeando usar tradehill.com y, a continuación, hacer uso de la API.

Pero cada vez que me conecto me sale el

"Socket no conectado lo sentimos, nuestra notificación de socket no está conectado sin embargo. Vuelva a intentarlo en unos segundos!"

Error... Y me hace una especie de ansiedad para utilizar el sistema, ya que parece un poco abandonado.

¿Alguien sabe alguna sistemas similares ? O saber lo que está pasando en el backstage de TradeHill.com ?

Cualquier sugerencia será muy apreciada.

+744
ChrisD 2 feb. 2016 21:10:08

Mover sus claves privadas a Electrum. Tuve este problema con Multibit HD desde el pasado verano. He enviado a mi bitcoin de la Colmena (que había pasado a ser no compatible) para multibit hd. Durante más de un año que la transacción se mostró en multibit como no confirmados. Los pasos que se tomaron fueron:

  1. Recuperar la cartera palabras de la multibit hd cartera de archivo

  2. El uso de una herramienta en línea que convierte el multibit cartera palabras claves privadas

  3. Agregó que las claves privadas a Electrum cartera

Tan pronto como he creado el electrum cartera con las claves privadas se mostraba como confirmó en electrum. Estoy totalmente en mover a otra cartera en conjunto como multibit es obsoleto, y he visto que esta sin confirmar error suceder muy a menudo, no uso multibit más.

+652
mirosval 8 mar. 2011 19:39:50

Yo no conozco el sitio, pero es más fácil crear una nueva dirección en un monedero que permite exportar la clave privada y envía tus bitcoins a ella.

+625
RecursivelyIronic 3 abr. 2010 18:57:49

Me gustaría entender el cryptocurrency zcash un poco mejor...

Mi comprensión es que hay dos tipos de direcciones de t-direcciones y z-direcciones. Sólo transacción entre dos z-direcciones son totalmente privados. Las transacciones entre t-direcciones de trabajo como las transacciones en bitcoin, es decir, el grado de privacidad es exactamente el mismo. También hay dos grupos diferentes: blindado de la piscina y sin blindaje de la piscina.

Mis preguntas:

  1. Zcash se basa en una base de moneda. Como yo sé que es bitcoin, ¿verdad?
  2. Supongo que las monedas en el blindado de la piscina son zcoin, ¿verdad?
  3. Cómo sobre el cable de la piscina? Son los bitcoins o zcoins? (es decir, el marketcap de zcoins se compone sólo de las monedas en el blindado de la piscina o de ambas piscinas?

Muchas gracias por cualquier tipo de ayuda!

+567
Gert 23 sept. 2019 22:28:40

Antes de tomar tratando de usar secuencia de Comandos recomiendo hacer lo que puede con un API existentes. He usado Blockchain.info's que ha funcionado bien.

He aquí otro paquete de la API de Java que podría funcionar para usted https://github.com/blockchain/api-v1-client-java

Una vez que haya llegado cómodo con la extraída de la interfaz, y tienen la necesidad de ir de menor nivel, ir a por ello. Dicho esto, usted puede encontrar Blockchain para propagar las transacciones más rápidamente que su propio servidor, ya que tiene muchos muchos compañeros.

+549
Bryant Mwangi 11 feb. 2018 17:23:39

Digamos que no es un servicio en el que los usuarios pueden tener algunos satoshis, pero también son capaces de vía/retirar satoshis por pagar/enviar un rayo de la factura. Supongamos que el servicio tiene algunos almacén de datos que registra el saldo de la cuenta para el usuario:

¿Cuál es la mejor práctica de la arquitectura a conocer que el saldo de la cuenta necesita ser actualizado?

Sé que no es el waitinvoice RPC-llamada en c-rayo que realiza el seguimiento de la etiqueta de una factura (que podría ser un id de usuario + algunos otros datos). Sigue en directo de la aplicación en el sitio debe actualizar el saldo una vez que la factura fue pagada. Sin embargo, si el usuario de la izquierda lado y paga la factura que todavía tiene que trabajar por lo que hay que ser un puente por el rayo de nodo para el almacén de datos.

En la retirada, la situación es aún más crítico, ya que la retirada puede tomar algún tiempo y las llamadas pueden ocurrir simultáneamente balance debe ser bloqueado o widthdraw llamadas por sincronizado (que supongo ist no preferible)

Entonces, ¿qué tipo de arquitecturas / las mejores prácticas que están utilizando?

+536
Prateek Kulkarni 20 ago. 2013 3:53:17

En Bitcoin, la mediana de tiempo pasado (como en su cotización) se utiliza para todas las operaciones en que el reloj de las cuestiones que limita el efecto de cualquier mineros de marca de hora. Los mineros pueden sesgar la fecha y hora de su cuadra mucho con ningún efecto perjudicial para la red, algunos anteriores de minería de optimizaciones de los involucrados el sesgo de la marca de tiempo hacia adelante para evitar la necesidad de hacer costosas operaciones de carga de una nueva merle raíz.

Hay una excepción en caso de que algunos rudo puede ocurrir, que es un off por un error en la dificultad de la ventana de cálculo de lo que significa la marca de tiempo de un solo bloque cae fuera del cálculo de la ventana. Esto es generalmente conocido como la deformación de tiempo de ataque, pero no es una amenaza significativa en el mundo real, es útil para restablecer de manera abusiva la dificultad en la prueba de la red si es demasiado alto, sin embargo.

+490
alienghost 7 may. 2011 15:06:18

https://blockchain.info/tx/ad9f5be7f893c8a2e6d977dce0367dcdaae20074c7eaa1f3ff288baf8f3a0059

Soy nuevo en esto he visto a alguien acelerar la vida de la transacción por favor alguien puede ayudarme con esto soy nuevo, yo no sé acerca de las tarifas dejé todo la forma en que fue

+438
Nikita Kunevich 26 ago. 2013 4:32:01

Al mejor de mi conocimiento, en la actualidad "Satoshi" cliente relés y la mayoría de las piscinas aceptar sólo el estándar de transferencia de archivos (o generación) de las transacciones. Además, la comunidad está trabajando en la M-de-N tipo de transacción. La adición de la no-estándar de la transacción a la blockchain hoy en día es bastante problemática.

Mientras que en la actualidad la habilitación de secuencias de comandos arbitrarios en las transacciones podría ser desastroso debido a posibles errores en el código (o en la secuencia de comandos del sistema en sí), me pregunto si está previsto que permiten las transacciones en algún lugar en el futuro, o la mayor parte de la red siempre se limita a un conjunto de "buenas" transacción de plantillas?

+407
CircleK 8 jul. 2018 16:59:57

Sí, es posible perder bitcoins para siempre. Incluso hay formas de "seguramente destruir" ellos mediante el envío a una dirección que no puede tener una clave privada.

+406
TKD 9 abr. 2014 16:10:39

Yo estaba buscando para hurgar con algunas de las funciones de https://github.com/gavinandresen/bitcointools pero lo que dice solo funciona para versiones anteriores de bitcoin. Solo estoy fuera de suerte? o hay otra solución?

+365
yennefer 14 mar. 2019 4:53:59

Puedo enviar un btc que su padre transacción fue confirmado, pero todavía electrum utiliza la dirección para la recepción de ese fondo, ¿por qué? (hubo algunos envío de transacciones sin confirmar en mi billetera, pero obviamente esos son irrelevantes)

+343
Anu Sharma 15 oct. 2016 23:03:35

he creado una altcoin con un premine para el primer bloque. Después de generar el primer bloque de la transacción funcionado bien. Pero en mi billetera se dice que el que mi nuevo equilibrio es "inmaduro". ¿Qué significa eso y cómo puedo conseguir el "inmaduro saldo confirmado"?

https://camo.githubusercontent.com/8403ee1020c3c56d8ee9f4049065d8db717e1870/687474703a2f2f6934362e74696e797069632e636f6d2f33306d37706b6f2e706e67

Saludos

+320
abhi4eternity 1 oct. 2013 1:33:37

Parece que los mineros tendrían un incentivo para no propagar las transacciones que vino su camino. No propagación de ambos guardar un poco de uso de la red y hacer que sea más probable que podría reclamar los honorarios de esas transacciones. Me estoy perdiendo algo, o es que un número suficiente de mineros de la caridad?

+315
Jonas Hals 22 ago. 2014 2:32:32

En 2012, el blockchain de Bitcoin fue creciendo a 10+ gigabytes y descargar toda la cadena, desde la red p2p estaba tomando una cantidad excesiva de tiempo (varios días), debido a ineficiencias en la forma en que los nodos compartidos bloque de datos. En orden a facilitar la configuración de una completa nodo, una instantánea de la blockchain de datos fue distribuido por Jeff Garzik como un archivo llamado bootstrap.dat el uso de BitTorrent. A partir de la versión 0.8 bitcoind va a cargar y validar inicial blockchain datos de cualquier archivo llamado bootstrap.dat se encuentra en su directorio de datos.

Hoy en día, esta realidad es más lenta que la sincronización normalmente. En Bitcoin Core versión 0.10.0+ el p2p proceso de sincronización se mejora dramáticamente lo que es más rápido que usar el bootstrap.dat archivo. Este proceso de arranque es por lo tanto obsoleto y desanimados.

+200
ANASTASNESTER 16 ago. 2010 19:08:47

Para esto es muy reducido caso, usted puede tomar un vistazo a https://github.com/circulosmeos/bitcoin-in-tiny-pieces

Tiene cada operación codificada para facilitar su comprensión, aislado en un archivo diferente, pero son fáciles de ensamblar o para usar directamente desde la línea de comandos: por ejemplo:

$ echo 0x01 | ./bitcoin-public-from-private.py | ./bitcoin-address-from-public-key.py

Y para la pregunta:

Por ejemplo, podría haber un arbitrario o número infinito de pub claves de la clave privada?

En principio, a partir de una clave privada sólo una clave pública se deriva: pero esto puede ser codificada en tres diferentes direcciones Bitcoin. Normalmente sólo uno o dos de estos formatos se utilizan.

Esto es en el caso más simple, no considerando los casos más complejos introducido más tarde en Bitcoin (como HD claves, etc)...

+192
Luska74 5 oct. 2012 17:56:46

¿Tiene usted una copia de la transacción (tx) o ID de la dirección de la cartera con la que lo has enviado? Si es así, vaya https://blockchain.info/ y copiar/pegar una de esas piezas de información en el cuadro de búsqueda en la esquina superior derecha de la blockchain.info página web y pulsa 'ENTER'. Si la transacción se realizó a través de bien que se mostrará en el blockchain.

En las últimas semanas ha habido un aumento en las transacciones de bitcoin y los tiempos de transferencia se han ralentizado. Yo también tuve una transferencia que tomó más de 24 horas. No es común, pero ocurre durante las horas pico.

La línea de fondo es que mientras usted tiene el derecho de cartera de la dirección de la transferencia de la bitcoin será en el blockchain (es decir, no la han perdido).

+192
Sergey Goliney 15 jun. 2011 17:39:03

Bitcoin Core es el cambio de marca de bitcoin-qt. Está construido en la parte superior de la original satoshi cliente y es el actual cliente de referencia para Bitcoin. Se trata de un nodo de la cartera que constituye la columna vertebral de la Bitcoin red como la mayoría de los nodos en la red que ejecute una versión de Bitcoin Core.

Bitcoin-qt fue oficialmente renombrada como Bitcoin Core en la versión 0.9.0 de distinguir entre Bitcoin-la-red y Bitcoin-el-software. Se conserva el antes de esquemas de asignación de nombres en su agente de usuario y nombres de archivo binario.

+185
stooun 9 ene. 2013 20:12:21

He creado esta página en la wiki de Bitcoin, por favor, añadir a la misma.

(Por CIERTO, la wiki es muy lento para el último día o así)

+173
Elwin 24 jun. 2014 11:31:14

Yo no otras minería. La minería nada es rentable o va a ser como más y más gente se prende.

Si usted realmente está determinado a la mina, sin embargo, una gpu/cpu única moneda como gridcoin sería bueno.

Un buen tutorial general se puede encontrar aquí. No es muy detallada, pero será suficiente.

+158
Sus 9 may. 2018 12:35:51

Sí, blockchain dirección genera de forma determinista como por BIP 44, y utiliza la tecla de acceso de copia de seguridad frases como por BIP 39, así que usted puede recuperar todos sus llaves con que mnemónico. Es compatible con cualquier otra cartera que sigue BIP 39 y 44, y porque permite regenerar sus claves privadas, es equivalente a la copia de las llaves de sí mismos. Así que usted debe ser seguro.

Referencias:

+48
Myles Baker 5 oct. 2011 0:36:43

Mostrar preguntas con etiqueta