cómo dividir las operaciones en función de enviar y recibir Json rpc bitcoin

Soy la creación de nueva cartera de bitcoin, y quiere saber cómo podemos obtener la lista separada de enviar y recibir transacciones usando JSON rpc.

No puedo ver ningún método para json rpc que dar la lista de enviar y recibir categoría

+537
Richard Wingfield 11 jul. 2016 9:42:00
28 respuestas

Buscando otras configuraciones parece que todo el mundo se está ejecutando con varios USB Asic Mineros a través de USB Hubs. Puede la Raspberry Pi potencia de un solo minero a través de USB? Incluso el uso de un 2 amp adaptador de corriente?

+894
CynicallyNaive 03 февр. '09 в 4:24

Llevo conmigo un Casascius física bitcoin (y otro que ha sido peladas). Esto le da una gran ayuda visual para explicar en términos de la otra persona ya está familiarizado con.

Usted puede animar a la gente a visitar el grifo y, a continuación, hacer un juicio de ejecución del gasto, como se describe a continuación:

Se puede imprimir hasta algunos Bitcoin notas con una mínima cantidad de bitcoins (por ejemplo, veinte centavos) y a las personas. De expiración de una y, si los fondos no son canjeados dentro de ese tiempo (por ejemplo, un mes), a continuación, la recuperación de los fondos y darles de nuevo. Pero, al menos, cada uno que consigue canjear, usted sabe que la persona (o la persona que dio la nota) ahora sabe lo que es un bitcoin y cómo puede ser transferido.

Pero el punto de lograr es que esto no es sólo cuidada tecnología o algún tipo de comercialización de un nuevo producto. Esto es lo que nos defang el sistema financiero que en repetidas ocasiones nos perjudica (o al menos disminuye nuestra dependencia en él).

Cada vez que una transacción bitcoin reemplaza una transacción de PayPal es como la colocación de un guisante de "nuestro" lado de escala frente a los ladrillos en la celebración de su lado. La escala tiene una gran placa, aunque, y, finalmente, todos nuestros guisantes juntos hará que la punta.

Pero es que decentralizioin obras -- un guisante en un momento.

+892
MoroInna 15 abr. 2015 16:14:49

No, porque si esto fuera posible, bitcoin sería fundamentalmente roto, haciendo bondades imposible. El punto central de todo el proceso de minería es demostrar que el hash de alimentación se realizó después de que las transacciones fueron cometidos. Se que la demostración no válida, las transacciones de bitcoin podría no ser seguro y por lo tanto no podía ser de recompensas por la minería.

Entre las muchas cosas que pare el hecho de que la minería piscina unidades de obra son más que una tiene y el hecho de que quien recibe la recompensa es que no se determina por la que sube el bloque.

+773
Tamiraina 7 may. 2011 22:00:25

Sólo por diversión, me decidí a comprobar fuera poco las monedas y hacer algunas de minería de datos. No hay visiones de millones o nada acabo de encontrar el concepto bastante fresco. En cualquier caso tengo instalado el guiminer en windows y he instalado el bit de la moneda del monedero de la bitcoin sitio.

¿Cómo puedo obtener mi dirección para que yo pueda tener a alguien que me envíe los fondos y en el software de minería de datos ¿cómo lo configuro para que sepa de dónde depositar los fondos? Tengo configurado y funcionando el uso de btc guild piscina, pero nunca se me preguntó acerca de cómo enviar me bits monedas.

Estoy confundido me siento como que me falta la pieza más importante del rompecabezas.

+759
dimecho 9 feb. 2014 3:02:33

¿Cómo puedo dejar de CGMiner 4.10.0 la forma correcta para Que puedo ver en la pantalla de pago ?

+742
Shehan Thamel 18 may. 2018 18:48:50

Estoy usando el Golang btcsuite/btcd biblioteca para escribir un Bitcoin aplicación que crea personalizado OP_RETURN Tx en el blockchain.

Entiendo Bitcoin en un de alto nivel (prueba-de-trabajo de consenso, árboles de Merkle, pertenencia, firmas, etc.), pero estoy perderse en la (innecesariamente?) complicado detalles de su interfaz RPC.

Estaba escribiendo código en Ir para crear una costumbre de transacciones con 1 entrada y 2 salidas (una OP_RETURN de salida y una salida de cambio). Aquí están mis preguntas:

  1. Es esta considerado un raw de la transacción? (Si es así, ¿qué es exactamente lo que constituye una materia de la transacción? Es que todas las transacciones que no se crea a través de la sendfrom/sendmany/sendtoaddress RPC?)
  2. ¿Cuál es la diferencia entre getnewaddress y getrawchangeaddress en un nivel semántico? Parece que los dos generar un par de claves, pero ¿por qué hay una necesidad de dos llamadas diferentes?
  3. Si estoy creando un raw de la transacción como se describió anteriormente, se debe enviar el cambio a un getnewaddress clave o un getrawchangeaddress clave?

Gracias,
Alin

+707
Philip Brocoum 28 nov. 2015 21:44:30

No hay reglas.

Una vez que usted comparta una dirección con alguien, se puede enviar cantidades arbitrarias de bitcoin a esa dirección. También pueden enviar más transacciones a que la dirección de cualquier momento en el futuro. No hay manera de rechazar una transacción sólo porque no te gusta la cantidad o por cualquier otra razón; si la transacción pasa válido monedas y está debidamente firmado, es válido y es irreversible una vez confirmado.

Los diversos esquemas para solicitar un pago (bitcoin: URI, código QR, BIP 70) incluyen una cantidad solicitada, pero no es nada más que una petición. La mayoría de los software de cliente se encarga de la pre-llenar el campo de cantidad en sus "enviar monedas de diálogo", pero normalmente el usuario sólo puede cambiar la cantidad si quieren. También podría simplemente extraer la dirección de la solicitud de pago y enviar lo que quiera.

Es hasta usted para decidir qué hacer si recibe una cantidad diferente de lo que usted esperaba. En cuanto al protocolo Bitcoin, el dinero es tuyo para siempre o para gastar como quieras.

En una típica plataforma de comercio, usted habría tenido que el usuario inicie sesión en hacer una compra, y que generarían una dirección única para ellos. Así que si el usuario envía una cantidad diferente de la que usted solicita, usted sabrá en contacto con ese usuario y se le pedirá que envíe más dinero o para proporcionar las instrucciones de reembolso. Pero eso está fuera del alcance de Bitcoin en sí.

Usted puede tratar de crear una nueva transacción que envía las monedas de vuelta a la dirección(es) que les envió, pero esto tiene algunas dificultades. En algunos casos, el remitente no podrá tener acceso a esa dirección ya. Usted también tendrá que pagar una tarifa de transacción para esta nueva transacción (o manualmente deducir de la cantidad). El BIP 70 protocolo de pago contiene un reembolso "dirección", característica que hace de este un poco más fiable, pero esto es opcional. El remitente puede enviar monedas a su dirección sin proporcionar un reembolso dirección, si así lo desean.

+700
Alex10RUS 22 dic. 2017 5:58:36

Es normal, para obtener 60 confirmaciones para una transacción en la blockchain y todavía no es recibido y confirmado, se puede ayudar a que I m preocupante, ya que esta es mi primera transacción, no me olvide de nada

+697
Shammu Begum 13 mar. 2019 22:14:27

He estado tratando de transmitir una transacción con sendrawtransaction de bitcoind. Me sale un error : "TX decodificar fallado.", Código -22.

Sospecho que no soy formato correctamente la transacción en hexadecimal antes de intentar enviar.

btc.sendrawtransaction(new_tx.to_json.unpack("H*")[0])

Aquí es una representación de mi transacción en hexadecimal : 7b0a20202268617368223a22333235343463303630316532323932626566303039353265396636303437 38373665383637656336373664643036306163323365356563666361386135656335222c0a202022766572223a312c0a20202276696e5f737a223a312c0a202022766f75745f737a223a312c0a2020226c6f636b5f74696d65223a302c0a20202273697a65223a3139332c0a202022696e223a5b0a202020207b0a20202020202022707265765f6f7574223a7b0a20202020202020202268617368223a2239636239643035363965373135346662383565343538343162633564336663633734393961636431633831326264666565366535653961386433323933313664222c0a2020202020202020226e223a300a2020202020207d2c0a20202020202022736372697074536967223a22333034363032323130303935393761353761373036326537303762323830323439663662653831663434356263636663313038336264643231326465643231353961316534653137616330323231303065346163383535366362653237316163363631653965383364306439663564616333633032393330303263613836336230386431386236386434323361636461303120303333396535613566383031343165643664663566343436326461623831323161353461333365386163633161656235326639626264616465613138663033393963220a202020207d0a20205d2c0a2020226f7574223a5b0a202020207b0a2020202020202276616c7565223a22302 3031303030303030222c0a202020202020227363726970745075624b6579223a224f505f445550204f505f48415348313630203662343633623439373835393930386439646236\ 3562393734623434333532386232396132613932204f505f455155414c564552494659204f505f434845434b534947220a202020207d0a20205d0a7ee

  • ¿Es esta la manera de transformar una transacción en hex en ruby ?
  • Hay algo que me falta ?
+607
Aleksandar Jankul 26 sept. 2013 14:32:16

Ambas salidas y entradas difieren en tamaño dependiendo del formato de la dirección.

P2PKH salidas son 34 bytes y P2SH salidas son de 32 bytes.

P2PKH entradas 148 bytes (180 bytes para comprimir las teclas), y P2SH entradas son de tamaño variable dependiendo de la redimir a la secuencia de comandos que necesitan para cumplir. Por ejemplo, un 2-de-3 multisig P2SH de entrada (muy común P2SH uso) ha 297 bytes.

+607
billg 22 ene. 2012 1:00:48

Sí. Sin embargo, usted perderá cualquier nuevo las claves privadas en la cartera actual.dat. Incluso si usted no crear nuevas direcciones de bitcoin-qt crea cambiar de dirección si desea enviar cualquier dinero. Así que, para estar seguro, usted debe volcar las claves privadas de su cartera actual.dat y la parada de bitcoin-qt. Reemplazar la cartera actual.dat con el guardado de cartera.dat. Reinicie bitcoin-qt y luego volcar las claves privadas de nuevo. Si tienen el mismo conjunto, todo está bien. De lo contrario, la necesidad de importación de cualquier falta de claves privadas.

Para el volcado de las claves privadas mediante el bitcoin-qt consola de depuración:

  1. listaddressgroupings
  2. walletpassphrase su frase de paso de 300
  3. dumpprivkey bitcoin-dirección
  4. walletlock

Paso 1 mostrará una lista de las direcciones bitcoin en su cartera. Los pasos 2 y 4 sólo son necesarios si la cartera está cifrada y abre su billetera para un máximo de 300 segundos. Repita el Paso 3 para cada dirección bitcoin.

Para importar una clave privada utilizando el bitcoin-qt consola de depuración:

  1. walletpassphrase su frase de paso de 300
  2. importprivkey con la clave privada clave de "etiqueta"
  3. walletlock

Los pasos 1 y 3 sólo son necesarios si la cartera está cifrada. Repita el Paso 2 para cada clave privada que se está importando. La clave de la etiqueta es lo que usted desea para identificar la clave.

+538
jlesuffleur 25 mar. 2014 3:27:22

Usted debe ser capaz de agregar usuario actual para el grupo plugdev en Linux para poder acceder a la GPU como un usuario estándar. Esto puede realizarse mediante el siguiente comando:

sudo usermod -G plugdev -un whoami

Puede haber algunos bits adicionales de información que son pertinentes en el archivo LÉAME en el cgminer sitio web.

+531
Eaco 29 nov. 2011 16:36:37

BIP 32/39 permite clave de portabilidad a través de diferentes cartera de implementaciones. Para complementar el "Asistente de Ozzie" respuesta anterior, un método diferente (C++ basado, no basado en JavaScript de código) se proporciona a continuación para reconstruir los resultados sobre el uso de los bitcoin-explorer (bx) interfaz de línea de comando que se debe ejecutar sin conexión con la "real" teclas de acceso y claves.

Sin tener alto Nivel de Garantía de Evaluación (EAL) pedigree calificaciones que van de 1 a 7 que también la dirección de la cadena de suministro de riesgos, no se debe poner mucha confianza en HD generadores de claves sin cruzar la correlación de los resultados entre los distintos genéticamente independientes generador de claves de las implementaciones.

Resultados a continuación fueron creados sin un BIP 39 frase de paso para reconstruir los resultados mostrados arriba. Resultados a continuación también proporcionan la reconstrucción de los detalles para m/44'/0'/0'/0 (BIP 44 extendido de rama privada de la clave) y M/44'/0'/0'/0 (BIP 44 extendido poder público en clave) que puede ser utilizado para sintetizar más de 4 mil millones de claves pública/privada pares y Bitcoin direcciones de la cartera del BIP 39 copia de seguridad mnemónico palabras. Sólo las 3 primeras claves privadas y públicas asociado direcciones se calculan a continuación para establecer patrones utilizados para calcular los 4 mil millones de claves pública/privada pares y Bitcoin direcciones de la cartera del BIP 39 copia de seguridad mnemónico palabras.

1) la Reconstitución de maestro de la semilla mediante BIP 39:

% bx mnemónico-a-negocio de semillas extrañas temporada vistazo polo robot sorpresa plazo niño doctor fresco

6c5f9d00018f2a2030afcc6f3057e5a4dea6dfb905dd4b0197a9a047bcfe0501662332a3caa846b1223ff3d20cfb295e7f94fe51c94472e3f8429c97754132e9

2) la Reconstitución de la extendida claves privadas:

% bx mnemónico-a-negocio de semillas extrañas temporada vistazo polo robot sorpresa plazo niño doctor fresco | bx hd-nuevo -v 76066276

xprv9s21ZrQH143K29DbrSg2YgC2iyW3gx3fhnexbxeacdwjcmz9xmsxkjon93fsc85bv4akszklk1d3fa6pks1wb6xyotbdppeztmqaazbpl6h

Tenga en cuenta que 76066276 es un base10 de cuatro bytes versión prefijo de 0x0488ADE4 (base16) que causa el extendido BIP 32 claves privadas para iniciar con "xprv".

JavaScript BIP 44 ficha de resultados puede ser verificado por el siguiente:

% bx mnemónico-a-negocio de semillas extrañas temporada vistazo polo robot sorpresa plazo niño doctor fresco | bx hd-nuevo -v 76066276 | bx hd-privado -d-i 44 | bx hd-privado -d-i 0 | bx hd-privado -d-i 0 | bx hd-privado -i 0

xprvA1hRqX7kSHXAfsq8pNTYtwvgZXDRuut6mtz7whgc8wtquy3lnzzfhrszfh7shweqjupdbgfhxj4o53qpoappvzuuic944ufbtofravzcvmt

A) BIP 44 WIF clave privada m/44'/0'/0'/0/0:

% echo 'xprvA1hRqX7kSHXAfsq8pNTYtwvgZXDRuut6mtz7whgc8wtquy3lnzzfhrszfh7shweqjupdbgfhxj4o53qpoappvzuuic944ufbtofravzcvmt' | bx hd-privado -i 0 | bx hd-para-ce | bx ce-a-wi-v 128

L5TPeiMKRnMbvQF6z1EYa3gmpwP6xSJN21nfaipxnjod2cvexgbh

B) BIP 44 WIF clave privada m/44'/0'/0'/0/1:

% echo 'xprvA1hRqX7kSHXAfsq8pNTYtwvgZXDRuut6mtz7whgc8wtquy3lnzzfhrszfh7shweqjupdbgfhxj4o53qpoappvzuuic944ufbtofravzcvmt' | bx hd-privado -i 1 | bx hd-para-ce | bx ce-a-wi-v 128

Kx3GxX5o8KynsJAs9jWKYyqKnPmAjVApbr1tnuuxdfkkng8nvjhr

C) BIP 44 WIF clave privada m/44'/0'/0'/0/2:

% echo 'xprvA1hRqX7kSHXAfsq8pNTYtwvgZXDRuut6mtz7whgc8wtquy3lnzzfhrszfh7shweqjupdbgfhxj4o53qpoappvzuuic944ufbtofravzcvmt' | bx hd-privado -i 2 | bx hd-para-ce | bx ce-a-wi-v 128

L16rfuc8mPts63KcovJH57rwqGfQP48q6hv3mhgbi9fbix9gaepp

3) la Reconstitución de la extendida claves públicas:

% bx mnemónico-a-negocio de semillas extrañas temporada vistazo polo robot sorpresa plazo niño doctor fresco | bx hd-nuevo -v 76067358

xpub661MyMwAqRbcEdJ4xUD2up8mH1LXgqm74bazqlecaz3h5akjwkccsy8fzepihjdnkncknssfymnvrbebd6w4lxyiktubg9u3pdhpm7dezx7

Tenga en cuenta que 76067358 es un base10 de cuatro bytes versión prefijo de 0x0488B21E (base16) que hace que el extendido BIP 32 claves públicas para iniciar con "xpub".

JavaScript BIP 44 ficha de resultados puede ser verificado por el siguiente:

% bx mnemónico-a-negocio de semillas extrañas temporada vistazo polo robot sorpresa plazo niño doctor fresco | bx hd-nuevo -v 76066276 | bx hd-privado -d-i 44 | bx hd-privado -d-i 0 | bx hd-privado -d-i 0 | bx hd-public-i 0

xpub6EgnF2eeGf5TtMubvPzZG5sR7Z3vjwawj7uijg5ogqzpnmnvlxsvqec3wa4g8djxa9jcpfb9rsw9qvjyycnbhjhkh7pnm2uwuh5zj3pynbj

A) Dirección de BIP 44 clave pública M/44'/0'/0'/0/0:

% echo 'xpub6EgnF2eeGf5TtMubvPzZG5sR7Z3vjwawj7uijg5ogqzpnmnvlxsvqec3wa4g8djxa9jcpfb9rsw9qvjyycnbhjhkh7pnm2uwuh5zj3pynbj' | bx hd-public-i 0 | bx hd-para-ce | bx ce-a-domicilio-v 0

18SKy9bqE57Mif4p1iGbGqPP2vgV8YXFw8

B) Dirección de BIP 44 clave pública M/44'/0'/0'/0/1:

% echo 'xpub6EgnF2eeGf5TtMubvPzZG5sR7Z3vjwawj7uijg5ogqzpnmnvlxsvqec3wa4g8djxa9jcpfb9rsw9qvjyycnbhjhkh7pnm2uwuh5zj3pynbj' | bx hd-public-i 1 | bx hd-para-ce | bx ce-a-domicilio-v 0

13EGK6DifQ6jsx5habBz4SoNYitPaqYUtl

C) Dirección de BIP 44 clave pública M/44'/0'/0'/0/2:

% echo 'xpub6EgnF2eeGf5TtMubvPzZG5sR7Z3vjwawj7uijg5ogqzpnmnvlxsvqec3wa4g8djxa9jcpfb9rsw9qvjyycnbhjhkh7pnm2uwuh5zj3pynbj' | bx hd-public-i 2 | bx hd-para-ce | bx ce-a-domicilio-v 0

1JMeSGf1AB6vsRQxRJsVFBtRmqWdbNcn5d

Vale la pena señalar bx unifica clave HD/tecla de generación de dirección a través de 100+ altcoins, ver BIP 44 Tabla relacionada.

+512
Nandini Uppalapati 25 abr. 2011 20:46:13

Necesito un poco de ayuda con la adición de archivos a la base de código mediante la adición de ellos a la autotools sistema de construcción. Otros posts que tratan de responder a la misma pregunta no me ayudó. Estoy experimentando con el Bitcoin del codebase y estoy tratando de agregar nuevos archivos a la base de código. Estoy tratando de agregar una biblioteca estática en src/Makefile.estoy añadiendo las siguientes líneas:

LIBGLYPH=libglyph.un

libglyph_a_SOURCES = \
glifo/glp.c \
 glifo/glp_utils.c \
 glifo/glp_rand.c \
 glifo/glp_rand_openssl_aes.c \
 glifo/FFT/FFT_1024_65537.c \
glifo/convertidor.c
libglyph_a_CPPFLAGS = $(AM_CPPFLAGS)
libglyph_a_CFLAGS =
libglyph_a_CXXFLAGS = $(AM_CXXFLAGS)

 EXTRA_LIBRARIES += \
 $(LIBBITCOIN_CRYPTO) \
 $(LIBBITCOIN_UTIL) \
 $(LIBBITCOIN_COMMON) \
 $(LIBGLYPH) \
 $(LIBBITCOIN_CONSENSUS) \
 $(LIBBITCOIN_SERVER) \
 $(LIBBITCOIN_CLI) \
 $(LIBBITCOIN_WALLET) \
$(LIBBITCOIN_ZMQ)

bitcoin_tx_LDADD = \
 $(LIBUNIVALUE) \
 $(LIBBITCOIN_COMMON) \
 $(LIBBITCOIN_UTIL) \
 $(LIBBITCOIN_CONSENSUS) \
 $(LIBBITCOIN_CRYPTO) \
 $(LIBGLYPH) \
$(LIBSECP256K1)

bitcoind_LDADD = \
 $(LIBBITCOIN_SERVER) \
 $(LIBBITCOIN_COMMON) \
 $(LIBUNIVALUE) \
 $(LIBBITCOIN_UTIL) \
 $(LIBBITCOIN_WALLET) \
 $(LIBBITCOIN_ZMQ) \
 $(LIBBITCOIN_CONSENSUS) \
 $(LIBBITCOIN_CRYPTO) \
 $(LIBLEVELDB) \
 $(LIBLEVELDB_SSE42) \
 $(LIBMEMENV) \
 $(LIBGLYPH) \
$(LIBSECP256K1)

He probado al menos 30 diferentes compilación de los intentos de donde yo reordenar la compilación y/o cambiado el nombre de la biblioteca.

Error:

hacer que[3]: Entrar en el directorio '/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src/secp256k1'
hacer que[3]: Dejar el directorio '/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src/secp256k1'
 CXXLD bitcoind
libbitcoin_common.un(libbitcoin_common_a-clave.o): En la función `CKey::MakeNewKey()':
/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src/clave.cpp:25: undefined reference to `glp_gen_sk(glp_signing_key_st*)'
libbitcoin_common.un(libbitcoin_common_a-clave.o): En la función `CKey::GetPubKey() const':
/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src/clave.cpp:48: undefined reference to `glp_gen_pk(glp_public_key_st*, glp_signing_key_st)'
collect2: error: ld devuelto 1 estado de salida
Makefile:3556: receta para el destino "bitcoind' error
make[2]: *** [bitcoind] Error 1
make[2]: Dejar el directorio '/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src'
Makefile:9207: receta para el objetivo de 'todo recursiva' error
make[1]: *** [all-recursive] Error 1
make[1]: Dejar el directorio '/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src'
Makefile:670: receta para el objetivo de 'todo recursiva' error
marca: *** [all-recursive] Error 1

Este error se produce a pesar de libglyph.un ser y que contiene las funciones. He intentado agregar el encabezado de la biblioteca y C archivos de la biblioteca común con ninguna suerte tampoco. He reorganizado el EXTRA_LIBRARIES sección del archivo Makefile.estoy con ninguna suerte.


Con el fin de simplificar el problema, aquí es un ejemplo muy sencillo que lanza el mismo error:

La adición de 1 .h y 1 .archivo cpp a 1 ya hizo biblioteca: libbitcoin_common los nuevos archivos: src/testFile.cpp src/testFile.h

testFile.h:

void over();

testFile.cpp

#include "testFile.h"
#include <stdio.h>

void over() {
 printf("soy de una función de prueba");
}

añadido siguientes líneas key.cpp:

#include "testFile.h"

void CKey::MakeNewKey()
{
over();
...
...
...
}

A continuación, en src/Makefile.am

BITCOIN_CORE_H = \
testFile.h \
...
...

y la prueba en la biblioteca común, donde key.cpp es, como se ha mencionado por Pieter Wuille aquí

# común: compartido entre bitcoind, y bitcoin-qt y no herramientas de servidor
libbitcoin_common_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)
libbitcoin_common_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
libbitcoin_common_a_SOURCES = \
 cantidad.cpp \
 base58.cpp \
 chainparams.cpp \
 las monedas.cpp \
 el compresor.cpp \
 core_read.cpp \
 core_write.cpp \
 almacén de claves.cpp \
 sistema anfitrión.cpp \
 netbase.cpp \
 protocolo.cpp \
 programador.cpp \
 guión/sign.cpp \
 guión/standard.cpp \
 clave.cpp \
 testFile.cpp \
$(BITCOIN_CORE_H)

El error:

libbitcoin_common.un(libbitcoin_common_a-clave.o): En función de 
`CKey::MakeNewKey()':
/home/joe/glifo/glyphCodebase/BitcoinUnlimited/src/clave.cpp:23: undefined reference to `over()

Por favor, ayúdame con esto. Muchas gracias

+408
Tulio Collenghi 25 ene. 2017 15:13:58

Quiero usar dos deamon para la sincronización mainnet y testnet.

Puedo Ejecutar $ bitcoind para mainnet sin problema Después de ejecutar $ bitcoind -testnet Pero me sale este error

BerkeleyEnvironment::Abrir: LogDir=/home/bitcoin/.bitcoin/testnet3/carteras/base de datos ErrorFile=/home/bitcoin/.bitcoin/testnet3/carteras/db.registro de

Cuando ejecuto la testnet, bitcoind crea testnet3 carpeta

Estoy usando bitcoin 0.17.1

Mi conf

# /home/bitcoin/.bitcoin/bitcoin.conf

# quitar la línea siguiente para habilitar el Bitcoin mainnet
# testnet=1

# Bitcoind opciones
servidor=1
daemon=1

# Configuración de la conexión
rpcuser=xxxxxxxx
rpcpassword=xxxxxxx

onlynet=ipv4
zmqpubrawblock=tcp://127.0.0.1:28332
zmqpubrawtx=tcp://127.0.0.1:28333

# Raspberry Pi optimizaciones
dbcache=100
maxorphantx=10
maxmempool=50
maxconnections=40
maxuploadtarget=5000
+378
user2337871 1 feb. 2019 3:04:11

Que bitcoin wallet debo utilizar para manipular mediante programación?

No quiero para uso pesado bitcoin-core. Pero como entiendo que hay diferentes tipos de bitcoin delgada clientes: algunos subcontratar los trabajos a la 3ª parte del servidor, algunos de ellos toman parte de la verificación.

Mis requisitos:

  1. Bitcoin wallet que se puede manipular mediante programación
  2. La seguridad suficiente. El programa que se va a manipular mi cartera va a ser implementado en algún lugar en la nube.
  3. Puede ser probado con testnet, aunque no estoy seguro de si testnet proveer de usted con su propia cartera o no
+344
Gina P 27 may. 2015 7:21:57

Qué, si algunos de gobierno comienzan a usar sus equipos para mover la mínima cantidad de Bitcoin sea posible, de la cartera del monedero, sólo para que el blockchain REALMENTE grande? Es esto posible?

Y también, es posible generar grandes cantidades de transacciones de manera que un nodo ganador no puede incluir todos ellos en uno de los 10 minutos el proceso de minería?

+340
divinedragon 22 may. 2015 8:38:05

Decir que hay una billetera en línea o exchange o a algún sitio, y me dan una dirección para enviar mis bitcoins a.

Puedo obtener la dirección pública, pero no de la dirección privada porque técnicamente los bitcoins son ahora "los suyos" - y voy a utilizar para intercambiar por otros crypto monedas en algún momento.

Pero el público dirección aparece en sitios como blockchain.info y puedo ver todas las transacciones de mi a esa cartera.

Es normal ver las transacciones de salir de esa cartera, incluso si no he gastado esos bitcoins con el servicio? Es mi billetera aislado a las transacciones que yo podría hacer?

¿O es que el uso normal de bitcoin servidor, por lo que cada vez que alguien se retira, se utiliza el bitcoin transacciones están disponibles en esta empresa toda la colección basada en sus bitcoin servidores de algoritmos utilizando todas las cuentas que aparecen?

En teoría, no debería importar, siempre y cuando la cantidad total de cada uno de las cuentas es igual a la cantidad total de todas las claves privadas que mantienen. Pero, ¿alguno de los servicios de mantenerlos aislados como una especie de verificación para asegurarse de que un cliente monedas todavía están allí y no es algún tipo de esquema ponzi?

+334
Jay Atkinson 11 jul. 2016 5:28:34

No. Los nodos sólo notificar sobre el bloque de altura en el principio de conexión en la versión del mensaje. Cuando el nodo quiere informar sobre el nuevo bloque/tx recibido/crea, utiliza inv mensaje.

No hay ningún punto para notificar a otros compañeros acerca de la descarga completa de la blockchain. El resto de los nodos no tienen nada que ver con dicha información.

+330
abutterworth 9 abr. 2018 7:42:10

Cuando intento comprar algo a través de bitcoins, ¿cómo es que el comerciante sabe que me han pagado ellos la cantidad acordada.

En otras palabras, ¿cómo el comerciante sabe que he pagado por el producto, y que se puede iniciar el envío del producto para . Pensé que bitcoin fue anónimo en sus transacciones

+312
xjj26s89ik 7 nov. 2015 8:04:07

Todas las direcciones Bitcoin Core genera, se almacena de forma permanente en su cartera.dat. Ahora depende de lo que su "complicación" era. Si usted acaba de presionar "recibir" de nuevo, y genera otra dirección, no tienes nada de que preocuparse, su dinero se mostrará una vez que Bitcoin Core es totalmente sincronizados.

Si la "complicación" que se ha quitado de Bitcoin Core en el medio y también eliminado de su cartera.dat, su dinero probablemente se perdería.

+257
TonyaT 4 feb. 2017 23:32:42

No puedo creer que nadie publicado el obvio....... por favor, vaya a su carpeta %appdata% luego de roaming. a continuación, elimine todo, pero la billetera.archivo, entonces y sólo entonces, desinstalar el programa y volver a instalarlo. estoy 99.999999999999999% seguro de que esto va a resolver su problema. he trabajado un montón con el código fuente de QT y estoy bastante familiarizado con ella.

+219
Benito Bertoli 27 jun. 2019 4:35:42

He solicitado de mi exchange (GÉMINIS) para retirar el bitcoin y enviar a mi otro exchange (BITTREX) en 11/11/17, hace cuatro días. Aún no se lo he recibido mi bitcoin en BITTREX la recepción de intercambio; la transacción no se muestra en trámite de recepción de exchange.

Géminis transacciones de exchange muestra la historia de la retirada de bitcoin transacción con un enlace 'ver las transacciones'. Si hago clic en este enlace me lleva a https://insight.bitpay.com/ y muestra de TRANSACCIONES "NO ENCONTRADO". También busqué en blockchain.info y algunos otros exploradores muestran transacción no se encuentra. Por el momento, la suerte de Géminis apoyo. Yo estoy desesperado con Géminis.

Aquí es el ID de la transacción; e1e405bdd06b3ab23c3099f41f5da58ea0f5cf0bd2f891850c1d5c70fedfdb20

Lo que está sucediendo con esta transacción? ¿Qué significa "la transacción no se encuentra" significa?

  1. Esta espera es en el de los mineros mempool a buscar?
  2. Es esta sin confirmar y ya cayó desde el blockchain de la red.
  3. La transacción tiene algunos errores al principio y nunca difundida en la blockchain de la red?
  4. Ninguna de las anteriores y que tenga algún otro problema?
+217
Alex Green 777 20 feb. 2017 13:47:56

Es posible que a la fuerza bruta bitcoin creación de la dirección con el fin de robar el dinero? es la misma pregunta, y tiene un argumento acerca de lo "posible" significa en el que la mayoría de la gente parece pensar que algo puede tener una mayor probabilidad cero y también ser imposible al mismo tiempo. Check it out!

+212
Imraan January 14 jul. 2015 4:26:09

Sí, usted puede hacer pública la recuperación de claves con CE Schnorr. Considere la posibilidad de

R = kG, [r = R. x, s = k + H(r, m)d], P = dG

verificar:

sG = ?R + H(r, m)Q

recuperación:

sG = kG + H(r, m) dG = R + H(r, m)Q

así

Q = 1 / H(r, m) * (sG - R).

(Y para calcular la R de r si R es el punto comprimido, R = (r,f(r)) R' = (r,-f(r)) y tratar tanto R y R' , mediante la comprobación de si la firma es válida con la resultante de la clave pública).

+194
Alexander Titov 30 mar. 2010 15:08:33

Ok, aquí está la llanura de código para la conversión de legado a segwit:

 Cadena de addressToConvert = "1BGJEft81aaudqaCCcNnhsRQBA3Y96KYtx";
 byte[] decodificado = org.bitcoinj.núcleo.Utils.parseAsHexOrBase58(addressToConvert);
 // Nos debe arrojar fuera de encabezado byte 0 para Bitcoin (Principal)
 byte[] pureBytes = new byte[20];
 Sistema.arraycopy(decodificado, 1, pureBytes, 0, 20);
 // Que debemos anteponer los siguientes bytes:
 byte[] scriptSig = new byte[pureBytes.longitud + 2];
 scriptSig[0] = 0x00;
 scriptSig[1] = 0x14;
 Sistema.arraycopy(pureBytes, 0, scriptSig, 2, pureBytes.longitud);
 byte[] addressBytes = org.bitcoinj.núcleo.Utils.sha256hash160(scriptSig);
 // Aquí están los bytes de dirección
 byte[] readyForAddress = new byte[addressBytes.longitud + 1 + 4];
 // anteponiendo p2sh encabezado:
 readyForAddress[0] = (byte) 5;
 Sistema.arraycopy(addressBytes, 0, readyForAddress, 1, addressBytes.longitud);
 // Pero también debemos anexar suma de control:
 byte[] checkSum = Sha256Hash.hashTwice(readyForAddress, 0, addressBytes.longitud + 1);
 Sistema.arraycopy(suma de comprobación, 0, readyForAddress, addressBytes.longitud + 1, 4);
 // Para obtener la dirección final:
 Cadena de segwitAddress = Base58.codificar(readyForAddress);

Funciones (como la org.bitcoinj.núcleo.Utils.parseAsHexOrBase58) son tomadas de bitcoinJ de la biblioteca, como he mencionado antes.

La dirección resultante es 3G7YPGDLLeaf1R36wrVxnSAhWMaA81oNhj. Se puede comprobar aquí: Bip39 mnemotécnica: "campana fatal col orgulloso de elevación increíble hoy en día la mamá trastorno decorar eterna acción de punch acabado gota cosa de pollo host erosionar bean de rescate obligar mango doble". Para hacerlo, hay que seleccionar "BIP49" y ver el producido segwit dirección. Correspondiente legado dirección se puede encontrar en la BIP32 ficha, pero usted debe insertar manualmente derivación ruta m/49'/0'/0'/0. Tenga en cuenta que las claves privadas para ellos son iguales: L38zkVFvLmVmHTpFdqfSP2WrQ1qcZnB829rthrs1rrexcc7rkuhr

Su dirección 1L88S26C5oyjL1gkXsBeYwHHjvGvCcidr9 se convierte 39gGJc9HiemSJwpa2smXgCXMW8y9FNzFde.

+99
Martin Konecny 19 feb. 2011 1:52:24

Soy consciente de que la introducción de la BIP-38 resultó en un estándar para la frase de acceso basado en cifrado de claves privadas la utilización de AES. Lo que no me queda claro es si estos pueden ser generados a partir de HD carteras? Son los HD cartera de semillas basado en claves privadas, entonces, considera cifrado de claves privadas? O no seguir las instrucciones generales de la clave privada de formato, ya que son derivados a través de sus propios HD carteras de los procesos?

+46
thomson 27 jun. 2014 21:52:51

El valor de r es sólo un número y no de forma explícita la tienda o codificar cualquier punto de coordenadas. En una firma, r se establece la coordenada X del punto R, que es realmente k*G, donde k es el secreto nonce utilizado durante la firma, luego se reduce mod de la curva de la orden. En secp256k1, esto generalmente significa que r es, de hecho, la coordenada X (porque r sí suele ser muy grande), pero no siempre es así.

Durante la verificación, el verificador intentos de reconstruir el original R punto de la firma de valores (s, r), el mensaje de la z y la clave pública del firmante P por la resolución de la ecuación s*R' = z*G + r*P, a continuación, reducir la coordenada X de R' mod de la curva de orden y control que es igual a r dado en la firma.

Yo nunca he usado openssl, pero el proceso parece estar en ossl_ecdsa_verify_sig(). Así que usted puede ver R' se calcula aquí : https://github.com/openssl/openssl/blob/master/crypto/ec/ecdsa_ossl.c#L396-L404

Después de estas líneas, la reducción de la mod de la orden se realiza y, finalmente, la prueba de la igualdad. En la simple verificación de la firma, la coordenada Y de R' no es usado, pero está disponible a partir del valor del punto (que es R') en openssl implementación de la misma.

editar:
También, me di cuenta de que debo añadir algo acerca de la clave pública de recuperación ya que se menciona el v o recid valor en su pregunta. Cuando se hace clave pública de recuperación de mensaje y firma (como en el caso de que el firmante de la pukey no se da), para obtener la coordenada Y de un posible R' punto, se trataría de unos valores basados en la r como el candidato de las coordenadas X.

Las posibles coordenadas X de R' se r sí mismo, o de i + curve_order (y ambas pueden ser válidas, X). Usted puede entonces resolver la curva de ecuación y^2 = x^3 + 7 para obtener los posibles valores de Y para cada uno.

+21
Luke Hopkins 18 dic. 2012 18:21:20

Mostrar preguntas con etiqueta