Utilizando el bitcoind -testnet de prueba de la red y la creación automática de prueba de carteras

Estoy desarrollando algunos bitcoin y servicios basados estoy interesado de automatizando prueba para ellos.

bitcoind parece venir con -testnet opción. ¿Cuáles son las mejores prácticas de uso de esta?

  • Cómo crear carteras para pruebas deben ser persistentes o temporales

  • Cómo parodia de los saldos de las carteras

  • Cómo hacer falso pagos y cómo depurar - ¿existe nada parecido blockchain.info o bloque de la cadena de explorer para ellos

+719
PJ Bergeron 7 jul. 2013 13:11:26
18 respuestas

Es posible que la fuerza bruta algunas direcciones Bitcoin, debido a que algunas personas son capaces de generar sus claves privadas en forma insegura. Cualquier (no-cero) 32 bytes puede ser una clave privada. Por lo tanto, con sha256 más de una frase de paso le da una forma aparentemente aleatoria, pero la fuerza bruta-capaz de clave privada.

Tomar sha256("salchicha") por ejemplo:

$ echo -n 'salchicha' | sha256sum
30caae2fcb7c34ecadfddc45e0a27e9103bd7cfc87730d7818cc096b1266a683 -

Carga hasta bitaddress y pegar esta clave privada en la cartera detalles' para obtener la correspondiente dirección Bitcoin, a continuación, buscar en blockexplorer:

DE $ http://blockexplorer.com/q/getreceivedbyaddress/1TnnhMEgic5g4ttrCQyDopwqTs4hheuNZ; echo
0.01000000

y verás que la dirección celebró una bitcent por 2 días en febrero de 2012.

Ver también: "fuckyou", que se celebró 2.5 bitcents para 12 días de fiesta a la vuelta del año pasado.

En la práctica, es posible que la fuerza bruta dirección bitcoin de la creación, pero sólo para mal elegido frases de contraseña. Estos fueron, probablemente, sólo la gente jugando con la idea de "almacenamiento de bitcoins en su cabeza", que es la razón por la que son para cantidades tan pequeñas, y por qué no estaban a la izquierda financiado por mucho tiempo.

Ninguna dirección de los saldos fueron perjudicados en la elaboración de esta respuesta.

+981
dedouze 03 февр. '09 в 4:24

Cómo puedo validar un estándar de dirección bitcoin?

+944
HunnyBerri 30 jul. 2013 22:24:35

Si esto sucede, la Persona B será capaz de pasar Una persona de bitcoins. Sin embargo, sólo hay dos maneras en que esto puede suceder:

a) la Persona B genera el mismo par de claves (clave privada) como Una persona

o b) la Persona B genera un par de claves diferentes, que (clave pública) hash a Una persona de la dirección (un hash de colisión)

Echa un vistazo a la especificación en dirección bitcoin: https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addresses

Una dirección Bitcoin es un hash de 160 bits de la parte pública de un público/privado ECDSA par de claves

Para "una" que suceda, la persona B tendría que romper "secp256k1". No soy experto en este campo, pero de lo que puedo encontrar en bitcointalk.org, entonces la "fuerza" de esto es de 2^128 bits. Y si usted se está preguntando lo fuerte que es, a continuación, busque el video de "búsqueda Exhaustiva de ataques" de Dan Boneh. 11 minutos en el video dice "algo que es más grande que 2^90 se considera suficientemente seguro" (se trata de atacar a 3DES, que es un simétrico de cifrado de bloque así que no estoy seguro de que en realidad se aplican a secp256k1, pero realmente no tengo mejor argumento de por qué 2^128 es "tan seguros de que usted no nunca, nunca, nunca generar la misma clave como alguien más"

Y para la "b" a ocurrir, usted tendría que encontrar una colisión en RIPEMD-160(SHA-256(pk)). Hasta donde yo sé, ninguno de los dos RIPEMD-160, ni SHA-256 es conocida por tener las vulnerabilidades a hash de la colisión de los ataques. Así que de alguna manera romper tanto o al azar de la generación de una clave de hash es exactamente igual a otra dirección bitcoin, es altamente improbable.

Hay también una oportunidad para que el equipo se incendie, y algunos de los materiales que se funden en un loto cupón con los números ganadores en (y un código de barras válido), pero simplemente no sucederá porque la oportunidad es tan increíblemente pequeño (es el mismo con el "y haga clic en generar otra dirección bitcoin").

EDITAR Woops, una cosa importante: todo Esto supone que todas las direcciones bitcoin están correctamente generado el uso de "true random". Todas cerebro-direcciones y direcciones generado a partir de un mal PRG, podría ser fácil de encontrar ya sea por el uso de una falla en el PRG o explotar el (defectos en el cerebro humano.

+842
mxwljw 11 jul. 2016 12:16:44

He estado estudiando el consenso de los algoritmos y tipo de estancó.

si usted echa un vistazo a Neo explicaciones sobre su algoritmo de consenso, dice "Numerosos protocolos han sido desarrollados para resolver el Bizantino Generales Problema. Hyperledger, por ejemplo, los usos Prácticos Bizantino Tolerancia a Fallos en su algoritmo de Prueba de Trabajo. Neo, por otro lado, implementa Delegada Bizantino Tolerancia a Fallos para resolver el Bizantino Generales "Problema"

He entendido claramente lo que Bizantino Generales Problema, pero todavía no entiendo lo que BFT significa y cuál es su relación btw Bitcoin PoW.

Dice "Hyperledger usos Prácticos Bizantino Tolerancia a Fallos en su algoritmo de Prueba de Trabajo". Bitcoin también adoptó PoW Algo, pero nunca he oído hablar de que Bitcoin es PBFT!

cualquiera puede hacer una clara distinción entre BFT, PoW, PBFT? Gracias de antemano. Que dios los bendiga.

fuente : https://steemit.com/neo/@basiccrypto/neo-s-consensus-protocol-how-delegated-byzantine-fault-tolerance-works

+778
firevany 28 mar. 2013 13:48:21

Proceso paso a paso:

Exportar la clave privada a partir de Electrum Cartera

Ir a Blockchain.info

Regístrate y después de iniciar sesión, vaya a configuración. A continuación, en ajustes, podrás ver la lista de direcciones como se muestra a continuación:

enter image description here

A continuación, haga clic en Importar Dirección Bitcoin como se muestra:

enter image description here

A continuación, agregue la clave privada como lo es en la forma como se muestra:

enter image description here

Haga clic en importar, y usted será capaz de utilizar el BTC de nuevo.

La transferencia de sus BTC desde esa dirección/es para cualquier otra nueva dirección (sólo para estar seguro)

Ahora para obtener Bitcoin en Efectivo, sólo tiene que ir a Ajustes > General

Allí verás un botón cerca de este, para reclamar su Bitcoin en Efectivo así:

enter image description here

Después de esto, hay una opción en Blockchain.info sí a vender su BCH para BTC. O usted puede enviar a aquellos que a cualquier otro cambio que existe.

Por favor, siga eso y quiero saber si fueron capaces de recuperar las monedas.

+760
user3306356 28 mar. 2018 16:34:57

Me dio un discurso en cppcon 2016 casi exactamente este problema. Hay una variedad de razones por las que C++ es una excelente elección de idioma para blockchain aplicaciones como Bitcoin.

Blockchain aplicaciones tienen una gran superficie de ataque. Que se supone para interactuar con un gran número de los que no son de confianza los extremos mientras que todavía proporciona un servicio confiable a los clientes locales. Esto requiere mantener un control estricto de los recursos como la memoria y uso de CPU.

Las Cpu modernas tienen un montón de núcleos. Algunas partes de blockchain aplicaciones paralelizar perfectamente (como la comprobación de firmas digitales), mientras que algunas partes no paralelizar a todos (como la ejecución de las transacciones en orden). C++ moderno tiene una muy buena mezcla de efectiva entre el hilo de la comunicación y la optimización de rendimiento con un único subproceso.

C++ no tiene un tiempo de ejecución que se detiene el mundo o administra la memoria, dando a su aplicación coherente de control sobre este comportamiento. Mover la semántica permiten obtener los objetos que se comportan como los valores de (a=b; a+=1; no cambia b) pero realizar como referencias (deep copias evitarse, excepto cuando sea necesario).

Punteros inteligentes le permiten evitar los costos de GC sin el tedio de manual de gestión de la memoria. Patrones de diseño como RAII hace el código más fácil de mantener. Plantilla de metaprogramación facilita la independencia entre la Api y las implementaciones.

C++herencia esquema hace que el diseño de tipo complejo jerarquías más fácil.

El lenguaje es madura y mantenidos. El compilador de la tecnología es sumamente sólida, sin embargo, las nuevas características añadidas. Y las nuevas características están orientadas a la solución de problemas reales. Los depuradores y las herramientas analíticas de todo tipo están disponibles para todo, desde la creación de perfiles de rendimiento para la detección automática de problemas de todo tipo.

+741
paintedfrog 19 oct. 2012 23:33:34

No. Guárdelo en un lugar seguro en su lugar. Unidades de disco duro son como bombillas de luz - cada vez que uno, esté preparado para decir adiós.

Además, el cifrado es una espada de doble filo. Sí, va a mantener a otras personas sin el código de acceso a su unidad. Pero un solo bit de error en el disco duro, en el hash, se representará la totalidad de la unidad inutilizable.

Usted es mucho más seguro para almacenar sus BTC en Coinbase. Vaya a su sitio y vamos a explicar por qué se va a hacer un mejor trabajo de lo que puedo, pero voy a golpear los puntos a continuación.

  • Usted no puede perder su BTC. Son la garantía de sus depósitos.

  • Usted puede acceder a ellos en cualquier lugar.

  • Usted puede generar direcciones para cada transacción, y que se limitan a esa cantidad, por lo que la transacción de dirección no puede ser utilizado para limpiar hacia fuera.

  • Están basados en los estados UNIDOS.

[Disclaimer] yo soy parcial porque los he usado por años y soy un cliente muy satisfecho.

por cierto, siempre se puede ver lo que BTC está haciendo en Coinbase Gráficos o CoinDesk Precio

Recuerde, en el blockchain, cada transacción tiene un número de IDENTIFICACIÓN.

Es como si cuando fui al banco o CAJERO automático que registra los números de serie de cada factura, entonces al pasar los números de serie están registrados en Walmart o lo que sea. Es mucho más trazable de dinero en efectivo.

No hay ninguna ventaja a confiar en su propio disco duro. Dejar que parte de los profesionales.

Aquí es un ejemplo de dirección:

Receive-only address

+634
HoldingMcNail 30 jun. 2015 14:16:49

Testnet utiliza un diferente formato de dirección de la red principal. Testnet direcciones comienzan con una "m" o "n". La dirección está utilizando comienza con un "1" y es, por tanto, para la red principal. Esta es la razón por la testnet grifos decir que la dirección no es válida.

A partir de la documentación de BitcoinJ, parece que puede configurar el código para utilizar la testnet con:

params = TestNet3Params.get();

+499
Tobias Wilfert 18 may. 2014 8:25:30

Quiero ver si hay alguna específica consejos de cómo presentar correctamente los ingresos procedentes de la especulación con BTC a la IRS.

También hay ningún informe específico de la Coinbase disponible?

+491
ReaLZone 21 mar. 2010 17:17:31

Hay comunidades de discusión se centró específicamente en la rápida y automatizada de bitcoin trading y la especulación? Estoy hablando sobre el análisis de los algoritmos para realizar operaciones cada pocos segundos, en respuesta a las fluctuaciones del mercado.

+422
Dinesh Sharma 15 oct. 2016 5:07:09
Preguntas acerca de Bitshares están fuera de tema.
+315
Vikki 1 nov. 2016 22:44:47

Estoy tratando de hacer un sitio web que apoya bitcoin, pero no puedo instalar bitcoin core porque berkeleydb es bajo 4.8. He intentado instalar mediante apt-get exprimir repositorio, pero que no funcionó. También he descargado el tar.gz archivo y se instala eso, sino que también no funciona. ¿Alguien sabe cómo puedo instalar berkeleydb o qué distro de linux tiene soporte completo de berkeleydb?

+270
Jarvis 6 ago. 2010 14:28:37
 -D 0:0 -D 0:1 -D 0:2 (etc, por que, como muchos GPUs como tienes)

Edit: lo Siento, voy a aclarar para los futuros usuarios..

 ./oclvanitygen -i 1address 

me pone..

 Disponible OpenCL plataformas:
 0: [Advanced Micro Devices, Inc.] AMD Accelerated Parallel Processing
 0: [Advanced Micro Devices, Inc.] Tahití
 1: [Advanced Micro Devices, Inc.] Tahití
 2: [AuthenticAMD] AMD FX(tm)-4130 Procesador Quad-Core 

Así que si quiero usar el 2x de la GPU, pero no el de la CPU, a continuación, voy a correr..

 ./oclvanitygen -i 1address -D 0:0 -D 0:1

o si quiero utilizar solo el CPU, a continuación, voy a hacer..

 ./oclvanitygen -i 1address -D 0:2

(sí, se pueden utilizar varios procesos para que yo pudiera mina de una dirección con una GPU y otro con el resto de la GPU)

+237
Arthulia 17 nov. 2013 12:53:01

Sí, puedo generar una nueva dirección a través de la bitcoin-qt consola de comandos, pero ¿cómo podría ejecutar un bucle for para generar 100 direcciones diferentes? Qué tipo de archivo hace que el cliente bitcoin tomar?

Usted no puede. Sólo se acepta específica de comandos de la API, como se describe aquí , o llamando a la ayuda de comandos en ese cuadro de diálogo.

Puedo ejecutar una secuencia de comandos de python a través de la bitcoin consola de comandos?

Si por el "bitcoin consola de comandos" usted se refiere a QT's de diálogo, a continuación, no, no puede. Puede ejecutar una secuencia de comandos de la consola, aunque, si tienes Python instalado en su sistema o ir a por un enfoque más elegante que una utilización adecuada de RPC API de contenedor.

¿Cómo funciona exactamente el envío de varios comandos en un símbolo del sistema de trabajo?

Ya ha sido la respuesta de arriba.

+222
A Sahra 14 jun. 2013 21:03:35

El número de nodos es irrelevante. Lo que importa es cuánto hashpower que tiene; es decir, qué tipo de hardware conectados a ese nodo, y la rapidez con la que se puede realizar SHA256D hashes. Si el nodo es una computadora normal con no especializado ASIC de hardware, a continuación, en el día de hoy los niveles de dificultad, para todos los propósitos prácticos, usted nunca mina de un bloque (en promedio, va a tomar varios millones de años para hacerlo).

Ver https://en.bitcoin.it/wiki/Difficulty#How_soon_might_I_expect_to_generate_a_block.3F para aprender acerca de cómo estimar el tiempo de la mina de un bloque, dado su hashpower.

+192
Halo 3 ene. 2014 23:18:53

Según la información que he encontrado aquí: https://en.bitcoin.it/wiki/Transaction una transacción bitcoin contiene,

PARA CADA ENTRADA:

  • El Hash de la transacción entrante
  • ScriptSig

PARA CADA SALIDA:

  • Valor
  • ScriptPubKey

Ahora mi pregunta es: ¿qué tipo de información está contenida implícitamente en la ScriptSig? Sé que a partir de ScriptPubKey la dirección de destino puede ser calculado, pero no veo si cualquier otro tipo de información puede ser recuperada de la ScriptSig.

Además, si sólo el hash de la transacción entrante se almacena, cómo se hace un nodo de buscar el entrante de transacciones en el blockchain, cuando se necesita validar la nueva transacción? Y, ¿cómo se sabe en qué bloque que la transacción se incluye? Si no sabe en qué bloque de la transacción es, qué tiene que pasar por todo el blockchain sólo para encontrarlo?

+117
Josher 25 oct. 2011 12:31:29

Esta pregunta no es un duplicado de Puede mineros elegir la que las transacciones a la mía?

Todo el mundo parece estar de acuerdo en el hecho de que los mineros pueden seleccionar la que las transacciones son la minería. Pero no puedo encontrar una manera de hacerlo! He creado un personal de la red bitcoin (testnet protocolo), donde yo soy el único minero. Puedo enviar transacciones para mi varios (falsa) de los nodos y ponerlos todos en la mempool.

Para fines de demostración, quiero algunas de las transacciones (con tarifas altas) para ser includeed en el primer bloque y el resto en el segundo. Traté de usar prioritisetransaction (con mi minero nodo) para hacer esto, pero todas las transacciones se fue a la misma cuadra:

bitcoin-cli prioritisetransaction txId1 5000 200

bitcoin-cli prioritisetransaction txId2 0 -200

Me puse valores arbitrarios, el objetivo es mío Tx1 en el primer bloque y Tx2 en la segunda o incluso después. ¿Cómo puedo crear este tipo de comportamiento? ¿Realmente necesito poner más de 1000 transacciones a ver a mi transacciones en diferentes bloques?

Daré la bienvenida a cualquier ayuda, gracias de antemano.

EDIT: voy a agregar una pregunta a este post. En otro conducen a encontrar una manera de "elegir" en el que el bloque de mi transacción será incluido traté de "estimatefee/prioridad de las llamadas. En mi privado bitcoin red (altura: 14.000 bloquea) cuando me llaman:

bitcoin-cli estimatefee X

cualquiera que sea X (número de bloque antes de la inclusión), la respuesta es "-1", lo que significa que la red no puede estimar que lo que estoy preguntando (sólo debe anexar para la alta dígitos). Necesito más bloques en mi Blockchain? Más transacciones? Mismo experimento en el real testnet, estimatefee funciona, pero está muy lejos de la realidad y sea cual sea la tarifa, todas mis transacciones ir al primer bloque.

+94
adamek 12 ago. 2018 17:31:26

Usted puede mezclar bloque de datos con la UTXO conjunto (el saldo de transacciones de salidas). Bitcoin Core utiliza LevelDB para el posterior (la UTXO conjunto).

Rápido búsquedas para el saldo de transacciones es importante para el rendimiento.

El bloque de datos es una cosas diferentes. Si usted tiene un no-poda de pares (normal completa el modo nodo), Núcleo almacena todos los archivos de bloque para que pueda atender a los bloques, los otros compañeros de bootstrapping (y para la cadena de reorganizaciones).

Los archivos de bloque no son una API, use con cuidado. Si usted está interesado en el análisis de los bloques, considere el uso de la RPC o la API de REST.

El .blk archivos contienen un montón de bloques (en bruto de la red seriación formato). También hay un índice del bloque (un levelDB base de datos) que contiene el archivo de compensaciones y los encabezados.

Aprender más acerca de los bloques de formato aquí (o google).

+73
devCatt 23 sept. 2010 18:07:57

Mostrar preguntas con etiqueta