Bitcoin no se muestran en la Armería

Me he trasladado a 1 BTC de JAXX Cartera a la Armería. Pero no es la que se muestra en la Armería.

La transacción fue confirmado así que yo sé que fue entregado a mi Armería de la cartera pero no puedo ver o tener acceso a él en la Armería.

¿Alguien puede decirme lo que debo hacer?

+818
ObviousJellyfish 15 ene. 2016 19:35:53
27 respuestas

De manera determinista de la firma de un Tx con RFC6979 devuelve v, r, s, donde r y s son los 2 valores utilizados en el estándar de ECDSA firmas. v = 27 + (y % 2), por lo que el 27 de + la paridad de r, como pybitcointools indica.

Así que incluso r, obtenemos v = 27, impar r obtenemos v = 28.

¿Cómo es el valor de v (27 o 28) importante? ¿Por qué es necesario tener un v valor? También, ¿por qué es 27?

+959
Nicky Jacobo 03 февр. '09 в 4:24

Cuando hago createmultisig en bitcoin core, me da la redeemscript como de salida. Yo, por supuesto, quiere guardar esta información, pero puedo poner esto en mi base de datos normal o tengo que tomar precauciones adicionales con el redeemScript?

En resumen: debo tratar a la redimir a la secuencia de comandos como una clave privada, clave pública, o en la dirección de hash (¿qué nivel de seguridad/y necesito tratar con). Este es de un "si roban" perspectiva. ¿Qué es lo peor que alguien puede hacer con un redeemScript?

+933
Bedford 25 sept. 2014 12:03:23

La forma más sencilla de hacerlo, es de difusión de la transacción como muchos de los nodos, como sea posible. Usted puede tomar mi programa para que https://cloud.mail.ru/public/2rUa/zgcW6vf8g y agregar más direcciones ip para .conf archivo

+929
Graaa 23 oct. 2014 21:54:35

Como Jonas dijo anteriormente, sin embargo asegurarse de que el demonio NO está establecido en 1 en bitcoin.conf (o que se pasa como un argumento en el inicio). Si se establece, los puntos de interrupción no se activará (y en algunos casos puede causar todo el programa de choque).

+871
Diamon Johnson 22 ene. 2018 17:03:25

Pregunta: ¿por Qué es la prueba-de-trabajo necesario para la creación de confianza?

Si la mayoría de los usuarios son honestos, entonces, voluntariamente hacer cumplir la prohibición de volver a escribir la blockchain.

Si todo el mundo era honesto, no tendríamos necesidad de una blockchain sistema en absoluto. Todos podemos simplemente confiar el uno en el otro para recordar a nuestros saldos de cuenta y actualizar adecuadamente a medida que hacemos el uno con el otro durante todo el día.

Por desgracia, no todo el mundo es honesto, y por eso necesitamos un sistema que permite a todos a que sigan en el consenso sobre el estado actual de la red (es decir, la asignación de monedas). La creación de un sistema que puede hacer esto sin confiar en algunos autoridad central es muy difícil, como se ejemplifica por el Bizantino generales del problema.

Bitcoin del PoW sistema proporciona los incentivos para que los mineros trabajan en la ampliación de una sola cadena (en lugar de proponer historias alternativas), y como otros han escrito aquí, es crucial proporciona un mecanismo de selección que el minero va a añadir el siguiente bloque a la red.

Si la mayoría de los usuarios son deshonestos, que todavía se puede reescribir la blockchain, incluso con la prueba de requisito de trabajo, no sólo por superar el honesto mineros, sino simplemente por la creación de un consenso para aceptar una nueva horquilla de los principales blockchain como la versión correcta de la blockchain.

Basado en los comentarios que han hecho, creo que se han malinterpretado el artículo enlazado. Que el artículo utiliza muy poco riguroso del lenguaje para explicar cómo la red llega a un consenso en un nivel alto, pero después de una más rigurosa inspección de falla para proporcionar un modelo para un sistema alternativo. '1 usuario = 1 voto' es un muy simplificada explicación de cómo las redes consenso de normas son los elegidos, pero los mineros que se debe extender la cadena de acuerdo a estas reglas. Una red de usuarios regulares (nodos) todos podemos estar de acuerdo para seguir un determinado conjunto de reglas, pero ellos no pueden llegar a un consenso en el que la cadena siga sin PoW de minería de datos. Creo que este es el origen del malentendido: el artículo no está sugiriendo que los red nodos puede seguir siendo en el consenso sin el de los mineros, simplemente proporciona una explicación simplificada de cómo los usuarios definir las reglas que los mineros deben cumplir.

Incluso si los usuarios decidir colectivamente para imponer un nuevo conjunto de consenso de reglas, se requerirá el PoW mineros para crear una blockchain para ellos. Sin el PoW de minería de datos, los usuarios serán incapaces de llegar a un consenso, porque no habrá ningún mecanismo para acordar que el bloque será el siguiente bloque, o para la mitigación contra los ataques de DoS.

+838
Vancastle Siqueira 4 feb. 2018 8:55:39

Estoy leyendo sobre determinista carteras, me da el punto, pero es confuso cuando usted realmente empezar a configurar las cosas. Tengo que instalar el soporte para la generación de "lo que sea"-moneda de direcciones en un servidor. Por donde empezar, ¿cómo debe hacerse? La gente está hablando acerca de la importación de claves a partir de una semilla. OK genial, pero de nuevo, ¿cómo? La gente habla sobre el uso de diferentes carteras. Debo usar uno ya existente en el bolsillo? ¿Cómo puedo crear mi propia cartera? Hay una consola basada tutorial paso a paso que se puede aplicar a cualquier cripto-moneda de red/cartera?

Actualmente yo uso bitcoind para comunicarse con bitcoin red. Es la única buena suficientemente documentado pieza de código. Gracias por su ayuda!

+818
Felines are superior 15 oct. 2017 10:37:13

Si usted llama listtransaction, usted debe obtener un JSON array llamado walletconflicts.

Si su transacción entra en conflicto con otra transacción en su mempool o con una transacción en un bloque, este walletconflicts matriz se rellena con el n de transacciones-id que apunta a la tx que pasa la mismo, en el conflicto de los insumos.

walletconflicts también está presente en gettransaction

+810
kolays 3 nov. 2013 10:18:11

Estoy corriendo Ubuntu 12.04 y me gustaría conectar mi monitor a la placa Intel gráfico y tengo mi GPU (ATI 67xx) para minería de datos únicamente.

Hasta ahora estoy luchando con la configuración de la GPU ATI. Qué necesito para ejecutar 2 servidores x? O 2 pantallas con una XServer?

¿Alguien obtener una configuración como esta para trabajar?

+727
yvoloshin 15 jul. 2011 0:09:38

Lorenz,
Blockchain.info es uno de los, si no el más "real" bitcoin carteras que usted puede conseguir. Es streaming y revisada constantemente los datos de trazado es también el estándar de la industria, aunque es incompleta.

La mayoría de los spoofy grifos poco Se encuentra en el hecho de ganar algún mbtc, o micro bitcoin, sin embargo, sólo porque ellos han depositado en una cartera de su propia creación y su propio diseño, esto no obliga a los mismos en cualquier forma de conectarse con el blockchain.info cadena principal.

Esto es debido a que en su mayoría se obtiene lo que se paga, y trabajar por lo que le pagan. Así que, viendo videos y haciendo esto o aquello está todo bien y estúpido, y también no tiene nada que ver con ganar dinero. . 00000001 se llama satoshi, después de bitcoins seudónimo creador. Usted será la suerte de tener tan sólo un puñado de hacer lo que estás describiendo y también con éxito canjeándolos por la TRANSFERENCIA de ELLOS a las legítimas servicio de monedero como un blockchain.info.

+663
Rye Laoguico 13 jun. 2016 4:13:45

Puede una transacción bitcoin ser rastreado? Estoy pensando en la compra de bitcoin coinmama.com y me gustaría preguntar si puedo ser rastreado para el uso de mi tarjeta de crédito? Alguien sabe la ubicación de mi o mi dirección bitcoin si la compro con una tarjeta de crédito.

+643
Nicoy Caine 2 nov. 2013 18:38:02

La siguiente es la respuesta que obtenemos. podría alguien por favor explique lo que cada elemento.

tipo de RawTransaction struct { Blockhash cadena BlockTS uint32 json:"blocktime" Confirmaciones int cadena Hexadecimal Locktime int TXTS uint32 json:"el tiempo" TXID Versión de la cadena int Vin []struct { ScriptSig struct { Asm cadena cadena Hexadecimal } Seqeuence int64 TXID cadena de Vsal int } Uout []struct { int N ScriptPubKey struct { Direcciones []cadena de Asm cadena cadena Hexadecimal ReqSigs Tipo int string } Valor Cantidad } }

+604
Forum Dev 13 ago. 2014 8:15:14

Nota: las últimas versiones de la satoshi cliente ofrecer una "ventana de depuración", que puede ser utilizado para la exportación de claves privadas. Esto se describe en Miguel Moreno, la respuesta a esta pregunta, y es más fácil que los pasos que se describen a continuación.

Para exportar una clave privada a partir de su satoshi cliente:

  1. ejecutar: bitcoin-qt -servidor y esperar a que cargue el blockchain y puesta en marcha

  2. si su cartera es cifrada, ejecute: leer -s x; bitcoin-cli walletpassphrase "$x" 600; unset x para desbloquearlo 600 segundos (escriba su contraseña después de pulsar intro, a continuación, pulse la tecla de retorno de nuevo; esta "lectura; ...; unset' impide que la contraseña está escrita a su shell historia del archivo en el disco, y la 's' en leer impide que su contraseña se muestra como se escribe, y mejora la protección de pantalla-madereros y la concha de registro)

  3. ejecutar este comando el uso de bitcoin-cli: bitcoin-cli dumpprivkey 1my1bitcoin1addres11111 (reemplazar 1my... con la dirección bitcoin de que desea que la clave privada)

  4. si su cartera es cifrada y desea volver a bloquear su cartera, ejecutar bitcoin-cli walletlock

+572
Chart Dasher 8 jun. 2015 17:38:06

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
+560
user7654 17 nov. 2012 19:02:24

Primera vez en stackexchange a pedir ayuda, lo siento si me equivoco (el inglés no es mi lengua nativa).

Intento crear una válida bruto transacciones en C# con bouncycastle y me parece atascado, no es capaz de encontrar dónde está mi error. Puedo probar en la testnet de la red y se han utilizado muchas fuentes para ayudarme a mí mismo, principalmente este uno. Para empezar, tengo la siguiente dirección y la clave privada

Dirección: mjhcWg5SvS96kk85R8G1wp7mru55UCNGy5
Clave pública Hex: 0482052EF9560585ED62F046EE45C1B5F85448BCF1BD5CE36A7D35EB00C8A146C14BF99223907F9A8688E6F84B54FD747A637BB82F02E296203E735E7A6B40059F
Wif: 93U5P1qHPXAhXhiw1T15z3f1cBqFw9fWrd3yzz1ndk8b2arbrrm 
Clave privada Hex: F7DBD21285F621F1C7A47AE7F63D06C276FE49839F4842DDEF805477936812A5

quiero usar el 6.49689241 btc de la anterior (testnet) de la transacción

912a2c3d84c8572b39c173b2bcde950cfe4ae07756bac189ace98f198d5ccb7d

y enviar (como prueba) algunas de vuelta a la llave mwCwTceJvYV27KXBc3NJZys6CjsgsoeHmf

En primer lugar, para construir el unsigned raw transacción, puedo agregar estos bytes:

01000000 (número de versión)
01 (número de entradas)
7dcb5c8d198fe9ac89c1ba5677e04afe0c95debcb273c1392b57c8843d2c2a91 (invertido anterior tx hash)
01000000 (índice de salida)
1976a9142de490b09ef14673af2bb4998fcb9f6b8446a84e88ac (anterior tx script con su longitud al inicio) 
ffffffff (secuencia)
02 (número de salidas)
496ff50200000000 (primera salida de little endian cantidad. El grifo)
1976a914ac19d3fd17710e6b9a331022fe92c693fdf6659588ac (primera salida de secuencia de comandos con su longitud al inicio)
0046c32300000000 (segunda salida de little endian cantidad. Mi dirección, para el cambio)
1976a9142de490b09ef14673af2bb4998fcb9f6b8446a84e88ac (segunda secuencia de comandos con su longitud al inicio)
00000000 (locktime)
01000000 (hash tipo de código)

El resultado es

01000000017dcb5c8d198fe9ac89c1ba5677e04afe0c95debcb273c1392b57c8843d2c2a91010000001976a9142de490b09ef14673af2bb4998fcb9f6b8446a84e88acffffffff02496ff502000000001976a914ac19d3fd17710e6b9a331022fe92c693fdf6659588ac0046c323000000001976a9142de490b09ef14673af2bb4998fcb9f6b8446a84e88ac0000000001000000

Yo, a continuación, recuperar la transacción hash empujando el raw de la transacción en un doble SHA256 función que devuelve mí

f64b6480a2888596636d4995153e990ce95582a1308c9c568d2698e6dc1f7893

Luego, me apunto con la clave privada hex (prvkeyHex) la transacción de hash (txHash) con esta función:

X9ECParameters curva = SecNamedCurves.GetByName("secp256k1");
ECDomainParameters dom = new ECDomainParameters(de la curva.Curva, curva.G, de la curva.N, de la curva.H)
ECKeyParameters params = new ECPrivateKeyParameters(new BigInteger(1, prvkeyHex), dom);
ECDsaSigner firmante = new ECDsaSigner();
el firmante.Init(true, params);
BigInteger[] sig = firmante.GenerateSignature(txHash);
MemoryStream ms = new MemoryStream(72);
DerSequenceGenerator seq = new DerSequenceGenerator(ms);
seq.AddObject(nueva DerInteger(sig[0]));
seq.AddObject(nueva DerInteger(sig[1]));
seq.Close();
byte[] signature = ms.ToArray();

Que volver a mí una matriz de bytes de max 72 bytes de longitud, comenzando por 30. En mi última prueba:

3045022100abceff62d3192b686c405d10516ff0e6f9ff221c00284d766200a6abb42361be02202972970369d6b9308467e15ebafd3f6b9faf111886071e3c429b34e9407e8d23

Yo luego construir mi final scriptSig con la clave pública hex y sus longitudes de que como resultado

483045022100abceff62d3192b686c405d10516ff0e6f9ff221c00284d766200a6abb42361be02202972970369d6b9308467e15ebafd3f6b9faf111886071e3c429b34e9407e8d2301410482052ef9560585ed62f046ee45c1b5f85448bcf1bd5ce36a7d35eb00c8a146c14bf99223907f9a8688e6f84b54fd747a637bb82f02e296203e735e7a6b40059f

Finalmente he construido mi suscrito primas de transacción:

01000000 (número de versión)
01 (número de entradas)
7dcb5c8d198fe9ac89c1ba5677e04afe0c95debcb273c1392b57c8843d2c2a91 (invertido anterior tx hash)
01000000 (índice de salida)
8b (scriptSig longitud)
483045022100abceff62d3192b686c405d10516ff0e6f9ff221c00284d766200a6abb42361be02202972970369d6b9308467e15ebafd3f6b9faf111886071e3c429b34e9407e8d2301410482052ef9560585ed62f046ee45c1b5f85448bcf1bd5ce36a7d35eb00c8a146c14bf99223907f9a8688e6f84b54fd747a637bb82f02e296203e735e7a6b40059f (scriptSig)
ffffffff (secuencia)
02 (número de salidas)
496ff50200000000 (primera salida de little endian cantidad. El grifo)
1976a914ac19d3fd17710e6b9a331022fe92c693fdf6659588ac (primera salida de secuencia de comandos con su longitud al inicio)
0046c32300000000 (segunda salida de little endian cantidad. Mi dirección, para el cambio)
1976a9142de490b09ef14673af2bb4998fcb9f6b8446a84e88ac (segunda secuencia de comandos con su longitud al inicio)
00000000 (locktime)

El resultado final a mi me da que firmó raw transacción

01000000017dcb5c8d198fe9ac89c1ba5677e04afe0c95debcb273c1392b57c8843d2c2a91010000008b483045022100abceff62d3192b686c405d10516ff0e6f9ff221c00284d766200a6abb42361be02202972970369d6b9308467e15ebafd3f6b9faf111886071e3c429b34e9407e8d2301410482052ef9560585ed62f046ee45c1b5f85448bcf1bd5ce36a7d35eb00c8a146c14bf99223907f9a8688e6f84b54fd747a637bb82f02e296203e735e7a6b40059fffffffff02496ff502000000001976a914ac19d3fd17710e6b9a331022fe92c693fdf6659588ac0046c323000000001976a9142de490b09ef14673af2bb4998fcb9f6b8446a84e88ac00000000

Pero ahora, cuando intento enviar firmado bruto transacciones en la testnet de la red por un servicio web, cada vez que me sale un error. sandbox.smartbit.com.au/tx/pushtx volver a mí

"PUSH ERROR DE TRANSACCIÓN: 16: OBLIGATORIA-SCRIPT-VERIFICAR-BANDERA DE ERROR (SECUENCIA DE COMANDOS EVALUADO SIN ERROR, PERO TERMINÓ CON UN FALSO VACÍO/PARTE SUPERIOR DE LA PILA DE ELEMENTO)"

live.blockcypher.com/btc-testnet/pushtx/ volver a mí

"Error al enviar la transacción: Error al ejecutar la secuencia de comandos para la entrada 0 de referencia 912a2c3d84c8572b39c173b2bcde950cfe4ae07756bac189ace98f198d5ccb7d a la 1: secuencia de Comandos NO fue verificada con éxito.."

mismo con tbtc.blockr.io/tx/push

Estoy muy lejos de dominar bitcoin o c#, estoy aprendiendo (y quieren aprender cómo funciona). Es que nadie vea donde está mi error ? Gracias

+481
Jus12 7 may. 2015 4:11:16

Lo siento Alex, pero te equivocas en la pregunta. Es trivial para poner bitcoins "más allá de uso", de modo que nunca puede ser gastado de nuevo. Todo lo que tendría que hacer es enviar los bitcoins a una dirección que nadie hubiera una clave. Esto ya se ha hecho, ya que las monedas han sido enviados a las direcciones que son casi ciertamente no poseído (como la más baja posible hash, que es una dirección válida).

Por lo que específicamente en su situación, la BTC2 la gente podría utilizar un método público de la creación de una dirección que nadie es dueño de las claves privadas para, a continuación, el diseño de su sistema de crédito de las personas que envían BTC1 bitcoins a la dirección. Una razón por la que alguien podría querer hacer esto a pesar de la abrir-fuente de la naturaleza de Bitcoin podría ser la creación de un nuevo, incompatible protocolo que se agarra a algunos de la base de usuarios de BTC1 sin forzar a nadie a dejar, permitiendo que los dos coexistir y competir bastante bastante.

+450
Sebastian Duran 5 jul. 2018 3:36:10

Además de los 520 bytes regla del consenso límite, hay un límite en la cantidad de cada OP_IF, OP_ELSE y OP_ENDIF puede ser utilizado en una sola secuencia de comandos?

Por ejemplo, una empresa que dispone de 3 personas en su departamento de compras gustaría hacer una compra inmediata si todas las personas en el departamento de acuerdo y hacerlo más lento en el caso de que no todo el mundo está de acuerdo, pero no hagan imposible en la final:

  • Alice, Bob y Carol tienda de fondos en un P2SH dirección. Inicialmente, todos 3/3 de firmas requerido inicialmente.

  • Después de algún tiempo, (OP_CHECKLOCKTIMEVERIFY) sólo dos de ellos pueden pasar (2/3 firmas requeridas).

  • Después de más tiempo, (primera OP_CHECKLOCKTIMEVERIFY + más de tiempo), cualquiera puede pasar (1/3 firmas requeridas).

¿Cómo sería un script similar a este aspecto?

+437
Joney Joney 5 abr. 2012 0:05:29
¿Cuál es la diferencia entre CKDpub y CKDpriv de la notación de ruta de acceso

1. CKDpub (clave pública clave secundaria derivación)

Deriva de un niño pubkey con extendido de clave pública (clave pública & chaincode) y el niño de índice. Sólo funciona para los no-endurecido derivación. CKDpriv (clave privada clave secundaria derivación)

Deriva de un niño de clave privada, con extendido privatekey (privkey & chaincode) y el niño de índice.

La ruta de acceso clave no distingue entre público y privado claves, por lo que en ese nivel no hay ninguna diferencia entre CKDpub/CKDpriv.

Aunque, como usted ha mencionado, para derivar una endurecido clave – incluso si usted sólo desea obtener la clave pública – que necesita el correspondiente extendida de la clave privada.

Ejemplos:

usted puede obtener el extendido de clave pública en m/1 si usted tiene el extendido pubkey m
Usted no puede derivar la clave pública en m/1' con la extendida pubkey m
Usted puede obtener la clave pública (y la privkey) en m/1' con la extendida privatekey m

A partir de este Etereum estándar de derivación nodo /m/44'/60'/0'/0/0 ,cómo es que alguien puede conseguir el extendido de clave pública y derivar a otros públicos desde que se extendió la clave pública que se respetan las convenciones.

Usted necesita la xpriv (extended clave privada) para derivar /m/44'/60'/0', pero más infantil pública de teclas (como /m/44'/60'/0'/0 y /m/44'/60'/0'/0/0) se puede derivar con el xpub (extended clave pública de a /m/44'/60'/0').

f(parentExtendedPubKey, índice ) = childPubKey --> dirección. ¿Cómo es esto consigue y cómo puede una clave privada que se alojó en el HD de la cartera puede ser utilizada más tarde para desbloquear o gastar los fondos enviados a la dirección generada a través de los padres de clave pública ?

Derivar a un niño de clave pública, independientemente de si usted tiene el uso de la xpub o xpriv – resultado de la misma clave pública. Acaba de ser conscientes de que sólo la xpriv puede derivar endurecido childkeys.

Suponga que se han derivado de la clave pública en m/10 con los xpub en m, posteriormente puede derivar el acuerdo priv-clave en m/10 con los xpriv en m. Más ideas

BIP44 fue diseñado para el hardware de carteras y / o de almacenamiento en frío. Idealmente no se debe mezclar no endurecido clave de derivación (CKDpub) con la posibilidad de exportar niño claves privadas. Si usted pierde una xpub y un solo niño de la clave privada, que revelan todas sus claves. shareedit

+382
Adler Parnas 26 ene. 2015 20:27:39

Wolciph sobre el Bitcoin foros escribió un script de bash específicamente para 11.04. No has publicado tu específicos errores de compilación, pero supongo que el problema es con el wxWidgets lib y usted probablemente tendrá menos problemas cuando el principal cliente Bitcoin, finalmente, se traslada a Qt (que creo que es en las obras, corríjanme si estoy equivocado). En caso de que el enlace a la secuencia de comandos eventualmente va hacia abajo, aquí está:

#!/bin/bash
echo "DESCARGO de responsabilidad: usted está usando este script en su propia discreción! Escribiendo 'c', usted acepta que ha leído el guión de ti mismo y lo han comprendido y que por lo tanto asumir la plena responsabilty en la eventualidad de que esta secuencia de comandos conduce a ningún daño a usted o a su propiedad. Si usted no está de acuerdo con tipo 'n'"
leer -n 1 r
[ "$r" = 'c' ] || exit 0

set-e

echo "se le pedirá Que introduzca su contraseña para instalar dependencias necesarias."

sudo apt-get install build-essential libgtk2.0-dev libssl-dev libdb4.7-dev libdb4.7++-dev libboost-todos-dev
sudo apt-get build-dep libwxgtk2.8-dev

mkdir bitcoin || true
cd de bitcoin

[ -e wxWidgets.tar.gz ] || wget "http://biolpc22.york.ac.uk/pub/Daily_HEAD/wxWidgets.tar.gz"
[ -e wxWidgets ] || tar -xvzf wxWidgets.tar.gz
cd wxWidgets
./configurar
hacer -j3
sudo make install
sudo ldconfig
cd ..

[ -e miniupnpc*.tar.gz ] || wget "http://miniupnp.tuxfamily.org/files/download.php?file=miniupnpc-1.5.tar.gz"
[ -e miniupnpc*/ ] || tar -xvzf *miniupnpc*.tar.gz
cd *miniupnpc*/
hacer
sudo make install
cd ..

#por alguna razón, github certificado no funciona:
[ -e bitcoin*.tar.gz ] || wget --no-check-certificate "https://www.github.com/bitcoin/bitcoin/tarball/v0.3.21"
[ -e bitcoin*/ ] || tar -xvzf "v0.3.21"
cd bitcoin*/
make-f makefile.unix
#opcional:
tira de bitcoin
echo "Bitcoin es ahora compilado : '$PWD/bitcoin'"
echo "el Lanzamiento de bitcoin ahora? (y/n)"
leer -n1 r
[[ "$r" = y ]] && ./bitcoin
cd ..
+340
Thushar Kamtikar 5 ene. 2016 20:56:04

Estoy probando la API, y he configurado una cuenta 'de usuario', y una 'pasarela' de la cuenta. La única diferencia entre los dos es que el usuario se ha extendido una línea de confianza a la puerta de entrada de la cuenta. Ahora me gustaría problema USD Pagarés de la puerta de entrada a la cuenta de usuario.

Supongo que la funcionalidad de esta integrado en la api.preparePayment(). Hasta ahora, soy capaz de transferir XRP utilizando el código que se encuentra en el ejemplo de pago de ondulación-lib. La esencia es:

const dirección = SENDER_ADDRESS;
const secreto = SENDER_SECRET;

const pago = {
 fuente: {
 dirección: la dirección,el
 maxAmount: {
 valor: '0.01',
 moneda: 'XRP'
}
},
 destino: {
 dirección: RECEIVER_ADDRESS,
 cantidad: {
 valor: '0.01',
 moneda: 'XRP'
}
}
};


la api.connect().entonces(() => {
la consola.log('Conectado...');

 el retorno de la api.preparePayment(dirección, forma de pago, instrucciones).entonces(preparado => {
 la consola.log('transacción de Pago preparado...');
 const {signedTransaction} = api.signo(preparado.txJSON, secreto);
 la consola.log('transacción de Pago firmado...');
la api.presentar(signedTransaction);
});

Un par de líneas de código faltan, pero esta es la estructura básica. Funciona cuando hago la Puerta de enlace o el usuario del remitente, y el otro el receptor. ¿Cómo debo modificar para que me puede emitir USD Pagarés de la Puerta de entrada para el usuario?

Mi trustline objeto fue:

var formulario = {
 "moneda": "USD",
 "contraparte": GATEWAY_ADDRESS, 
 "límite": "100",
 "qualityIn": 0.91,
 "qualityOut": 0.87,
 "ripplingDisabled": true,
 "congelada": false,
};
+329
dale dittrich 28 jun. 2019 4:46:52

Ustedes son la minería tan lentamente que el de la minería piscina piensa que no estás de minería de datos.

Usted no puede mío sha-256 monedas con la CPU. Son varias generaciones de hardware demasiado tarde.

Cpu tenido que renunciar a bitcoin minería en 2011, cuando Gpu asumió por completo. Luego vinieron los FPGAs que hizo la vida difícil en la GPU mineros. Finalmente, en 2013 la ASICs llegado, lo cual hizo de la GPU y de la FPGA de la minería completamente inútil. Ahora en 2017 esto es noticia vieja y sha-256, la minería ha sido ASIC-sólo durante años.

Al igual que con BTC, BCH (BCC), también se extrae con ASICs.

¿Por qué la gente da para arriba en viejos e ineficientes formas de minería:

  1. Se necesitarían varios cientos de años antes de que se han ganado por la mínima cantidad de dinero en efectivo de la piscina. No sólo es esta pequeña cantidad no vale la pena 5 minutos de su tiempo - que no va a vivir lo suficiente como para cobrarlo.

  2. Si usted ha vivido durante más de 1000 años y extrae todo el tiempo, ganar 1 dólar de valor de BTC o BCH/CCO, que habría pagado un millón de dólares en electricidad para llegar allí. Cómo tendría sentido hacerlo?

En 2009 algunas personas de la mina de 50 bitcoins por día con la CPU de un viejo ordenador portátil. Por desgracia no es de 2009 más. Hoy gana cero con la CPU.

+323
dmitrysafarov 15 ago. 2017 21:10:00

Algorand es un muy prometedor consenso protocolo-Bitcoin Podría ser configurado para utilizar Algorand?

+320
saniakl 14 ene. 2010 6:37:48

El riesgo de un tenedor (como en comparación con un suave horquilla)

La única diferencia entre duros y blandos de la horquilla es cómo pre-horquilla completa de los nodos de reaccionar a los nuevos bloques. Esto tiene algunas implicaciones:

Pre-horquilla completa de los nodos estarán dispuestos a seguir una diferente (más corto) de la cadena. Ellos podrían aceptar las confirmaciones de pago que resultan no ser válida en el largo de la cadena. Tenga en cuenta que esto puede suceder en una suave horquilla demasiado si no es actualizado minero de las minas de un bloque no válido.

Pre-tenedor de los mineros, si los hay, pueden seguir a la mía en la cadena más corta (ya que es la más válida de la cadena para ellos). Esto lleva a que el mayor riesgo: si la cadena más corta jamás alcanza la más larga, habrá una gran reorganización, y muchos pagos confirmados ya no será (desde la perspectiva de la gente que había seguido el tenedor). Esta es la razón por la mayoría de las propuestas duro-horquillas de asegurarse de que tienen una mayoría calificada de los hashpower antes de disparar.

+259
Manuki 10 ago. 2014 13:37:34

Un malentendido. Bloques seguirá siendo extraído después de la última nueva bitcoin es entregado como un bloque recompensa de varios años a partir de ahora. Los mineros también se pagan los honorarios de transacción, así como el bloque de recompensa. Esta es la razón por la que existen los honorarios de la transacción. El número de bloques no es técnicamente limitado, siempre hay que hacer varias advertencias por ejemplo, hay suficiente espacio de almacenamiento disponible para descargar el blockchain.

+253
user140597 6 feb. 2016 8:13:47

¿Por qué este documento parecen implicar que el cumpleaños de ataque sólo funciona para multisig P2SH y, a continuación, sólo para uno de los firmantes?

El cumpleaños de ataque (al mejor de mi conocimiento) requiere que el P2SH dirección es construido a partir de una secuencia de comandos que implica tanto una de las claves de la víctima y el agresor. Que normalmente es sólo el caso de multisig, pero técnicamente no está restringido a la misma. No se aplica a una sola tecla escenarios.

Si un atacante puede generar una alternativa de redención de secuencia de comandos que sucede a hash para el valor dado en un P2SH de salida

Que se llama una preimagen de búsqueda, no una colisión de búsqueda.

  • Preimagen de la búsqueda: dado un hash H, encontrar X tal que Hash(X) = H.
  • Colisión de búsqueda: encontrar un X y un y tal que X != Y y Hash(X) = Hash(Y).

Una preimagen búsqueda de un hash de 160 bits función de las necesidades de 2160 pasos. Una colisión de búsqueda, sin embargo, sólo necesita 280 pasos.

Estoy malinterpretando el documento o la incomprensión de la naturaleza de los cumpleaños de ataque?

Creo que usted es. Voy a empezar con la explicación de un simplificado (inviable) ataque en un 2-de-2 multisig situación, y, a continuación, optimizar y generalizar.

Ejemplo

Decir que (A) y a mí (B) la participación en un 2-de-2 de custodia. Esto significa que alguien (posiblemente uno de nosotros) va a enviar dinero a un 2-de-2 multisig secuencia de comandos, lo que requiere que ambos estamos de acuerdo antes de que pueda ser gastado.

Para hacerlo, primero debemos estar de acuerdo en lo que el guión va a ser. Se han revelado su clave pública Una para mí, y me están esperando para responder con la mía.

En lugar de dar a la tecla B, generar una lista enorme de 280 claves públicas, todos los que conozco la clave privada.

Para cada una de esas teclas K, puedo calcular:

  • Hash160(A-y-K)
  • Hash160(B-y-K)

Yo pongo todos los A-y-K hash en una lista L1, y todos los de la B y K hash en una lista L2. He ambas listas. A continuación, voy a través de ambas listas, y encontrar un hash que existe en ambas en una sola iteración. Este es el punto crítico. Es probable que una colisión existe, porque a pesar de que sólo hay 280 entradas en cada lista, hay 2160 combinaciones de las entradas. Cada uno de ellos tiene un 2-160 de probabilidad de una colisión. Esta es también la explicación de la Paradoja de Cumpleaños, y este tipo de ataque es, por tanto, llamados a un cumpleaños de ataque.

Así, decir que he encontrado un hash que se produce en ambas listas. Dicen que 1d es la clave que genera el hash en la L1, y K2 es la clave que genera el hash en la L2. En otras palabras, Hash160(A-e-K1) = Hash160(B-y-K2).

Ahora me acaba de decir que mi clave es K1. Usted no puede negar que, como en hecho, K1 es completamente válido clave de la mina. Felizmente aceptar eso, y estamos los dos de acuerdo en el uso de la secuencia de comandos de Una-y-K1. Construimos la dirección Hash160(A-e-K1), que ya sé que es idéntica a Hash160(B-y-K2).

La mano que P2SH dirección, y el pagador le envía dinero para que el hash de la dirección.

Una vez que los fondos han sido enviados allí, me puede pasar sin su cooperación.

Los requisitos para pasar una P2SH salidas son:

  • (1) un redeemscript cuyo hash es igual a la Hash160 en el P2SH dirección
  • (2) entradas para que redeemscript que hacen de la evaluación es verdadero.

Para (1) puedo usar el B-e-K2 script, y (2) que simplemente puedo firmar con B y K2, de lo que tengo las claves privadas.

Por lo que es práctico

En la práctica, el anterior ataque no es factible, debido a que las listas L1 y L2 son demasiado grandes para almacenar (y mucho menos ordenar) para el día actual de hardware. Sin embargo, el ciclo de algoritmos de detección puede ser utilizado para encontrar un K1 y K2 tales que Hash160(A-e-K1) = Hash160(B-y-K2) en 280 pasos sin plenamente el almacenamiento o la ordenación de las listas L1 y L2.

La generalización de

El ataque también puede ser generalizada para el resto de los scripts donde varias personas están involucradas, siempre y cuando el atacante tiene una influencia sobre el elegido de secuencia de comandos.

Mitigación

SegWit deja de tener un 160 bits de secuencia de comandos de hash sistema. Todavía se utiliza de 160 bits los valores hash de la clave única de caso (por razones de eficiencia), como el cumpleaños de ataque no se aplican a ellos. En su lugar se introduce P2WSH, que utiliza 256-bit de secuencia de comandos de hashes. El cumpleaños de ataque todavía no se aplica, pero requiere de 2de 128 pasos en lugar de 280. 2128 es considerado inviable para atacar en el corto y mediano plazo. Además, es el objetivo de seguridad de Bitcoin en general (incluyendo la falsificación de firmas), haciendo más no es muy valioso.

¿Por qué no es un problema para una sola clave de direcciones?

En el caso de que ninguna entrada desde el atacante entra en la creación de la dirección de ser robados, este ataque no funciona.

Todo el atacante tiene en este caso una dirección. Él no puede insertar la varianza en la producción de 2160 combinaciones de 2de 80 intentos. La única cosa que funciona aquí es una preimagen de ataque, que necesita 2160 iteraciones para un hash de 160 bits.

+219
IcedDante 3 ago. 2019 11:42:56

Tengo un Bitcoin nodo con txindex=1 por lo que puede recuperar cualquier transacción desde el txId. Mi pregunta: si tengo cualquier dirección pública, ¿cómo puedo recuperar todas las transacciones que involucren a esta dirección (entradas y salidas) con el Bitcoin Core comandos ?

+151
Beknavek 21 ene. 2013 8:56:00

Después de un par de días de investigación y de lectura acerca de bitcoin y de etereum, tengo interés en invertir en estos. Sólo pequeñas cantidades para probarlo.. tal vez de $30 - $50 para empezar. Yo soy de un 3er País del Mundo y quieren obtener algún tipo de ingreso pasivo.

Aún después de todos estos proyectos de investigación. Yo todavía tengo un montón de preguntas. Estos son uno de los más importantes para mí.

  1. Vale la pena invertir en un BitCoin/Etereum Nube de Minería de contrato? Digamos que me gustaría comprar un starter plan. porque la minería plataformas son tan caros y no puedo ejecutarlo 24/7.
  2. ¿Cuáles son algunos de los riesgos potenciales de la negociación en los Intercambios?
  3. Puedo empezar a operar con $30 a $50 mirando presupuesto? puedo llegar a algún lugar con este presupuesto?
+97
Cera 15 dic. 2016 10:01:01

Yo sólo tenía algunas preguntas en cuanto a la relación cuota/byte de la confirmación. A partir del intercambio de la tasa de retirada de bitcoin se fija a 0.0005 btc pero los bytes varían mucho, y así tienes muy diferentes tarifas/byte. Id de transacción eb956503c6459d564cb097064f6093a14d85a607f7dca76d265a21d90eeecb7f y por alguna extraña razón esta transacción sólo puede ser vista en https://blockchain.info y no el otro bloque de la cadena de explorer traté de usar. Tiene un 61.2 sat/B/tarifa Byte, de más de 5 días después no ha llegado una sola confirmación.

De acuerdo a https://bitcoinfees.earn.com/ el tiempo máximo que debo de esperaron para 61.2 sat/B es de 1200 minutos o 20 horas, que estoy bien por encima.

He intentado enviar una mayor cantidad de bitcoin a la misma dirección de forma manual con una enorme cuota/byte en la esperanza de que el 61.2 sat/Byte de tarifa de transacción se obtiene una confirmación, pero no lo hizo, sólo que lo hizo (he leído por ahí que al hacer esto se podría confirmar el más lento).

Yo no quiero tener a los residuos someones tiempo con esto, pero la pregunta es si es posible que un error o fallo que puede haber ocurrido entre el blockchain o mineros que podría causado esto? Teniendo en cuenta el tiempo de futuro de valoración de activos de riesgo como el bitcoin, entonces se puede pensar que cuanto más tiempo espere, más valor intrínseco voy a perder.

+56
nacious 13 feb. 2017 3:58:55

Mostrar preguntas con etiqueta