bitcoin completo nodos vs simplificado de verificación de pago

¿Por qué los nodos individuales ejecutar "completo nodos" que mantener un seguimiento de todo el blockchain mientras que mechants puede salirse con la suya "lite nodo" que implementa la "simplificado de verificación de pago" necesidad de examinar sólo los últimos bloques?

+17
kriokamera 12 feb. 2013 20:41:39
19 respuestas

Si la cartera de desbloquear es global (es decir, afecta a una cartera que existe fuera del método, que obviamente), entonces sí, que es una condición de carrera. Generalmente, esto se maneja con los mutexes. Un mutex proporciona "exclusión mutua", es decir, sólo un hilo de ejecución puede entrar en un área protegida con el mutex.

A partir de un diseño de software de punto de vista, obligando a todo lo que llama la send_to_address método para hacerlo en un mutex es muy mal diseño. Parece que usted debe hacer una cartera de clase que encapsula toda la funcionalidad que necesita para llevar a cabo en las carteras que administra el bloqueo/desbloqueo de la cartera dentro de la clase.

+1000
Jim Perry 03 февр. '09 в 4:24

Hay un google como motor de búsqueda que se puede buscar cualquier texto que se incluye con una transacción bitcoin? Como yo lo entiendo cada transacción incluye 80 caracteres de texto así.

Actualización

No es posible buscar la blockchain en el texto de una manera fácil

+955
steve walton 27 oct. 2013 22:45:17

Cada bitcoin puede ser dividido en unidades subatómicas de 0.00000001. Cada transacción crea una división que se puede rastrear y comparar a un número de serie.

Tanto las direcciones públicas que los bitcoins se obtienen y los identificadores de transacción podría servir como números de serie.

Bitcoin no es inherentemente fungibles porque el blockchain es fácilmente detectable.

Por ejemplo, hubo un error en la manera de cambiar las salidas fueron aleatorizados que se fija sólo en enero de 2013.

Esto invalida la idea de que el seguimiento de reglas sería arbitraria. Identificar fácilmente los primeros usuarios de Bitcoin destruye cualquier inherentes a la fungibilidad es posible que haya tenido.

Usted puede leer más sobre él, buscando la sombra de las direcciones aquí:

https://miki.it/pdf/BitIodine_presentation.pdf

+887
Elizabeth Ann Collado 15 sept. 2011 12:38:15

Tener cambio de dirección no cambia la tarifa de transacción en todos.

Si el cambio de uso de direcciones que son distintas o idéntico a una de las reciban direcciones es independiente de si utilizar o no el cambio.

El cambio es creado cada vez que las monedas (transacción salidas) que se pasó por la transacción no coinciden perfectamente con los enviados cantidades. De cambio resultados por separado en una moneda, independiente de lo que la dirección a la que se envía. Y separar las monedas deben ser gastado por separado, independiente de si fueron enviados a distintos o iguales direcciones.

Como resultado, el cambio de direcciones de no afectar el tamaño de las transacciones.

+828
Defrim Fezollari 26 feb. 2012 17:03:54

Respuesta descaradamente robado de stackexchange:

Dificultad de codificación se describe exhaustivamente aquí.

Representación Hexadecimal como 0x182815ee consta de dos partes:

  • 0x18 -- el número de bytes en un objetivo
  • 0x2815ee -- target prefijo

Esto significa que la validez de hash debe ser de menos de 0x2815ee000000000000000000000000000000000000000000 (que es exactamente 0x18 = 24 bytes de longitud).

Representación de coma flotante de la dificultad que muestra cuánto actual destino es más difícil que el utilizado en la génesis de bloque.

Satoshi decidió utilizar 0x1d00ffff como una dificultad para la génesis bloque, así que el objetivo era 0x00ffff0000000000000000000000000000000000000000000000000000.

Y 50810339.04827648 es cuánto objetivo actual es mayor que el inicial.

Cómo el cliente Bitcoin se convierte de bits -> dificultad:

uint256& uint256::SetCompact(uint32_t nCompact, bool *pfNegative, bool *pfOverflow)
{
 int nSize = nCompact >> 24;
 uint32_t nWord = nCompact & 0x007fffff;
 si (nSize <= 3) {
 nWord >>= 8*(3-nSize);
 *este = nWord;
 } else {
 *este = nWord;
 *este <<= 8*(nSize-3);
}
 si (pfNegative)
 *pfNegative = nWord != 0 && (nCompact & 0x00800000) != 0;
 si (pfOverflow)
 *pfOverflow = nWord != 0 && ((nSize > 34) ||
 (nWord > 0xff && nSize > 33) ||
 (nWord > 0xffff && nSize > 32));
 return *this;
}

Cómo el cliente Bitcoin se convierte de dificultad -> bits:

uint32_t uint256::GetCompact(bool fNegative) const
{
 int nSize = (bits() + 7) / 8;
 uint32_t nCompact = 0;
 si (nSize <= 3) {
 nCompact = GetLow64() << 8*(3-nSize);
 } else {
 uint256 bn = *esta >> 8*(nSize-3);
 nCompact = bn.GetLow64();
}
 // El 0x00800000 bits indica el signo.
 // Por lo tanto, si ya está configurado, dividir la mantisa por 256 y aumentar el exponente.
 si (nCompact & 0x00800000) {
 nCompact >>= 8;
nSize++;
}
 assert((nCompact & ~0x007fffff) == 0);
 assert(nSize < 256);
 nCompact |= nSize << 24;
 nCompact |= (fNegative && (nCompact & 0x007fffff) ? 0x00800000 : 0);
 volver nCompact;
}

La conversión de destino a la dificultad, en la cáscara. Crear archivo target-to-difficulty.sh:

#!/bin/bash
echo "ibase=16;FFFF0000000000000000000000000000000000000000000000000000 / $1" | bc -l

Uso:

$ ./target-to-difficulty.sh 000000000000000024DBE9000000000000000000000000000000000000000000
29829733124.04041574884510759883
+809
nullox 26 oct. 2010 2:19:39

Hay reglas que hacen que este tipo de ataque muy costoso para el atacante. A continuación son pertinentes las reglas de la wiki, con actualización de tarifa de transacción:

0.0005 BTC tarifa por kilobyte de transacción, pero:

  • Si el tamaño de bloque (tamaño de todas las transacciones que actualmente están esperando a ser incluido en un bloque) está a menos de 27 kB, las transacciones son gratis.
  • Si el tamaño de bloque es de más de 250 kB, transacciones son cada vez más más caros como el tamaño de los bloques se acerca al límite de 500 kB. El envío de una transacción cuando el tamaño de bloque es de 400 kB tendrá un costo de 5 veces la cantidad normal; el envío de cuando 499 kB tendrá un costo de 500x, etc.

Digamos atacante publica 499kB el valor de las transacciones de cada bloque, esta sería de alrededor de 1000 transacciones por bloque, 144000 por día. Esto es en ninguna parte cerca de millones o miles de millones, y además se le costaría alrededor de 18000 BTC por día.

Fuente: los honorarios de la Transacción

+777
Vernon 3 jun. 2012 21:57:58
  1. https://en.bitcoin.it/wiki/Bitcoin_Jobs

  2. http://workforbitcoin.com

  3. http://www.btcworkers.com

  4. http://bitgigs.com

  5. http://www.rugatu.com

  6. http://www.bitcoinerr.com

  7. http://www.reddit.com/r/Jobs4bitcoins

  8. http://coinworker.com

  9. http://bittask.com

Todas estas tablas son feos, aunque. Espere a que StackExchange para empezar a usar Bitcoins.

+632
ak2 15 jul. 2018 13:33:54

Cada una de ~10 minutos, un "bloque" que contenga transacción consigue diseñado y difusión. Los mineros elegir la que las transacciones que incluyan en su bloque -cuota más alta/Kb transacciones, para maximizar sus ganancias - y que recogen los honorarios de transacción de las operaciones que han elegido al encontrar y publicar un bloque.

Considere la posibilidad de esta transacción:

enter image description here

Usted puede ver el:

Incluido en los Bloques: 499089

Si usted navega a ese bloque en el bloque explorer...

enter image description here

Así, los costos de transacción de la transacción son recogidos por la minería piscina ViaBTC.

+586
hrududu 11 ene. 2015 11:32:23

Puede generar nuevos públicos extendidos teclas

http://bip32.org/

Usted puede generarlos por testnet o mainnet. Acaba de establecer la red de cuadro combinado en la parte superior derecha a la red a la que quieres.


ADVISO: por Favor no utilizar los sitios web para generar el material de clave. Apto sólo para tirar direcciones solo para probar.

+534
budgiebeaks 14 feb. 2019 20:39:38

Puede alguien me sugieren que crypto moneda es mejor para el comercio? Es Bitcoin o de Etereum?

Los precios en DÓLARES de 21/08/2017 y la hora 18:03 (UTC+05:30):

  1. Bitcoin = $4041.53 o
  2. Etereum = $325.76
+441
Anne Smallridge 20 abr. 2011 20:13:01

he enviado 0.29379525 Bitcoin en Efectivo (BCH) accidentalmente a mi BTC cartera. y he recibido nada. Puede usted ayudarme por favor? aquí es el id de la transacción. 102260de41a9088ca0da20257cba0e054c10d1febe0d6b2b3ebb0a42d858d483 Yo sólo accidentalmente mi BTC cartera en lugar de BCH He enviado CIISB de mi bittrex cuenta a mi bitpay cuenta. He copiado BTC dirección de mi bitPay cuenta en lugar de BCH. y fondos enviados desde mi bittrex cuenta a esa cartera. ¿cómo puedo recuperar esos fondos? La transacción se confirma a partir de bittrex cuenta. y bittrex de apoyo no está listo para ayudar a mí.

+375
JasminBarby 19 oct. 2012 12:45:45

He hecho una transacción con demasiado pequeño una cuota de hace varios días; por lo tanto, no ha sido incluida en cualquiera de los bloques. En la actualidad, es persistente en el mempool. ¿Cómo puedo usar Bitcoin Core para realizar una nueva transacción en la misma dirección, pero con una tasa más elevada? En esencia, ¿cómo puedo hacer un manual de reemplazar a cargo?

+305
FunP2 11 nov. 2015 14:31:38

Si es apagar sin advertencia, entonces algún tipo de prueba de fallos de patadas en mantener su sistema intacto. Usted no debe encenderlo porque se arriesga a perder la totalidad de su programa de instalación haciendo caso omiso de los signos. El problema es más probable de refrigeración, o la falta de ella. Reloj de abajo de la instalación si se permite, o bajar la intensidad de cgminer para el que no utiliza gran parte de su hardware de su poder. A continuación, ver si se corta a la hora 1 hora en punto. Si no. Conseguir una mejor refrigeración.

También, alguna versión de cgminer tiene este extraño bug donde se corta la GPU fans después de un tiempo. Si usted tiene auto_fan habilitado. La apague.

+304
Neville Nason 22 feb. 2015 18:02:49

Me gustaría primero aclarar una cosa, antes de intentar una respuesta, y lo es también del libro:

el saldo de transacciones de salida (UTXO) UTXO es un saldo de transacción de salida que pueden ser usados como una entrada en una nueva transacción.

un UTXO no es un elemento de por sí, es una descripción de un conjunto de datos en una transacción. UTXO puede ser gastado, o no utilizados. Para las transacciones para ser válida, que, naturalmente, sólo puede utilizar unspents. Así que cuando se utiliza un UTXO de una transacción anterior, el gasto de todos los fondos a una nueva dirección y una dirección de retorno, el anterior UTXO se convierte en parte de dos nuevas UTXOs. Y sí, la anterior UTXO se gasta, se documenta en el blockchain, y no pueden ser utilizados más.

Cuando se trata de la adición o eliminación de UTXOs: aquí se trata de mempool. La lista de los no utilizados tx es mantenido por el cliente bitcoin en la memoria. A ver, ¿cuán grande UTXO base de datos, ver aquí. Esto es lo que se describe como un grupo independiente. Y en este sentido

eliminado del conjunto de disponible (saldo) UTXO

simplemente significa que, cuando se ha enviado una transacción, este particular UTXO debe ser eliminado de la mempool. No estoy 100% seguro, pero la mempool es necesario para verificar, si el tx es válido o no (también conocido como pasa sólo válido UTXO de la mempool). Consulte también la página 119 del libro.

Sería el resultado de la transacción niño contienen la misma transacción identificadores como el de su padre'output de contenido?

Cada tx referencias anteriores tx, especifique de qué transacción (el tx hash) y VSAL a tomar los fondos. Así que un niño tx referencia a los padres tx entradas. Sin embargo, si el niño tx continuación, se hace referencia por el siguiente tx, usted no vea las referencias de los padres tx.

Suponiendo que se tiene (ver) estos tres TX_IDs y puntos fuera y valores,

7dbc497969c7475e45d952c4a872e213fb15d45e5cd3473c386a71a1b0c136a1:0 25000000 Satoshis
7f42eda67921ee92eae5f79bd37c68c9cb859b899ce70dba68c48338857b7818:0 16100000 Satoshis
6596fd070679de96e405d52b51b8e1d644029108ec4cbfe451454486796a1ecf:0 16050000 Satoshis

la cartera de software sabe, estos son el saldo de las salidas, y se podría pedir a su uso como insumos para una nueva transacción de ~0.57 BTC a una nueva dirección.

Además el muy buen libro de Andreas, también recomiendo Ken Shirrif la entrada del blog, se explica cómo manualmente firmar un tx. Que hace las cosas muy claras.

+284
TheAaronX1000 14 jun. 2017 3:41:25

Puede ser que como el cuento El Fantasma de Gox, acerca de un hacker de lucha autónoma de los agentes de software que operan en el blockchain.

+271
greendigz1 14 abr. 2017 6:42:04

Un atacante puede falsificar bloqueo falso.

Sí, pero un bloque no válido sería rechazada por el resto de los participantes que ver, y no se retransmiten. Por lo tanto, este bloque tiene poco o ningún impacto.

Este es un gran pero, ¿qué sucede si la transacción es en el bloqueo falso? Supongamos que yo soy la compra de un coche. Debo esperar 6 bloques que se genera para estar seguro? Pero tengo que esperar una hora!

Una transacción es una firma de orden de pago para el Bitcoin red. Mientras siga siendo válido conjunto de instrucciones a la red, se hará un seguimiento y se distribuye por los participantes en la red para incluir en un bloque. Desde la perspectiva de los nodos siguientes a la mejor cadena, que se incluye en un bloque que no es parte de la mejor cadena es equivalente a no estar incluido en ningún bloqueo. Por lo tanto, un bloque no válido incluyendo una transacción no tiene impacto sobre los nodos que reconocer el bloque como no válido–que aún consideran que la transacción no confirmada y que continuará a considerar para su inclusión en otro bloque.

+246
user67828 2 jul. 2011 9:42:56

Suave horquillas son probablemente peores que los tenedores, ya que es difícil para un cliente para rechazar una suave horquilla (de hecho, ese es el punto de suave horquillas). La única manera de hacerlo es a obtener el 51% de los hash de energía, o para hacer una dura tenedor rechazando.

¿Cómo se puede hacer una altcoin resistente, suave que se bifurcan (o sólo se permiten ciertos tipos de suave horquillas)? Yo creo que haciendo esto es, en general, podría ser imposible, pero lo que es más difícil iba a ser bueno. No teniendo suave horquilla política integrada en las monedas de la filosofía podría ayudar, pero probablemente no es lo suficientemente bueno.

+207
Black Enigma 28 mar. 2015 19:14:53

La cosa que tienes que tener en cuenta es que no hay una sola cadena. Cada individuo ejecuta una completa nodo tiene su propia cadena, y valida todos los bloques en ella, ya que reciben de los mineros. Si un bloque no es válida, completa nodos y otros mineros se ignora, y no se incluyen en sus propias cadenas. Es posible que dos nodos no están de acuerdo en que el bloque es la cabeza de la cadena.

Este tipo de bifurcación ocurre aproximadamente una vez por día, donde la mitad de la red piensa bloquear Una es el verdadero bloque, y la mitad de la red piensa que el bloque B es el verdadero bloque. Esto está perfectamente bien, y se resuelve cuando cualquiera de los bloques de Un + 1 o bloque B + 1 se encuentra. El protocolo dicta que los nodos de aceptar la más larga de la cadena, como el real de la cadena, y la alternativa de las cadenas vuelven a quitar.

La respuesta a esta pregunta puede ayudar a entender.

+131
Hustlion 12 nov. 2010 16:20:01

¿Necesita descargar toda la blockchain para mina de bitcoins? Estoy descargando bitcoin-qt, y me temo que tendrá demasiada memoria en mi computadora. También, acabo de leer que cuando otro nodo de descargas de la blockchain de mí, que también tie velocidades. ¿Es esto cierto?

+64
Ribinalexis 15 jul. 2013 16:48:46

Mostrar preguntas con etiqueta