La construcción de bitcoind de modificación "egoísta" de código posible? cómo?

Durante mucho tiempo he estado tratando de encontrar formas para la ejecución de una "egoísta mina" algoritmo en bitcoind del regtest modo.

Ahora me pregunto si mi plan es factible, a todos!?
Así que sólo voy a describir mi procedimiento planificado con la esperanza de que voy a obtener consejos útiles y no te desanimes ya que creo que puedo lograr mi objetivo con la ayuda de los desarrolladores y de la inversión de un poco de tiempo extra:

Estoy intentando cambiar Bitcoin Core 0.10.0 código fuente - o más "adecuado" de la versión de una manera que después de la construcción de bitcoind, en regtest el bitcoind servidor que se inicia actúa como un egoísta minero.
Este egoísta minero deberá conectarse a otros bitcoind nodos que son instancias de bitcoind, construido a partir de la no-código modificado.

Mi idea es cambiar una parte del código que se comunica (por ejemplo, inv mensaje-parte!?) con el resto de nodos: como un egoísta minero, que acaban de encontrar bloques sólo debe ser compartida con el resto de los nodos depende de la egoístas mina algoritmo, por lo que pensé en la implementación de estructuras de control (if, while, etc.) que trabajar con una comparación de la inv mensaje de la cantidad de inventario de entradas o una comparación similar - por ejemplo, egoísta nodo ha encontrado un bloque y lo anexa a su inventario y no publicar este bloque si el tamaño(egoísta.inventario) > tamaño(honesto.el inventario).

Ahora un reto para mí, es saber de que parte de el código fuente para modificar? Ya que consta de varios módulos que se asemeja a definir las funciones, parámetros, etc.

Estoy listo para leer gran cantidad de código, pero el problema es que no sé qué parte es relevante para mi problema.

¿Qué te parece? Mi intención es realista? ¿Cuáles son los mejores enfoques para una solución?

+425
Rajesh Vishnani 30 abr. 2018 21:06:24
21 respuestas

Independientemente de la cryptocurrency de elegir a la mía, usted debe conseguir la máquina con la mayoría de las GPUs y CPUs como usted puede conseguir (GPUs son especialmente importantes). Esto es porque la mayoría, si no todas, de las funciones de hash se utiliza en altcoins pueden ser y han sido acelerado por GPU, por lo que la Gpu será capaz de mina de ellos mucho más rápido que la Cpu puede. Tener más CPUs le permite obtener un poco más de hash de alimentación de la CPU, ya que puede que aún la mía, sólo de manera menos eficiente y menos rápidamente que la Gpu.

En cuanto a lo de la mina, no te lo puedo decir. Puedo decir que usted no debe mina de Bitcoin como la dificultad es demasiado alto para la GPU y la CPU de minería de datos para ser rentable. Bitcoin minería requiere máquinas especiales llamadas ASICs ahora, en orden a la realidad de la mina de algo que no es insignificante.

+922
Gustavo Hoirisch 03 февр. '09 в 4:24

esto no en el hecho de proteger de los ataques de reproducción?

no

Sería un método válido para cualquier tenedor?

no

Mi preocupación es que alguien podría replicar la primera transferencia

tienes razón

+908
vitalkis 26 sept. 2016 14:10:49

El firmar/verificar la función de mensaje no tiene nada que ver con los habituales de cartera de la funcionalidad. Envío y recepción de monedas no tiene nada con ella.

Proporciona la capacidad para firmar un mensaje... cualquier cosa que te guste, utilizando una de sus direcciones, lo que demuestra que usted es el propietario de la dirección. Puede ser usado para probar que usted es dueño de una cierta cantidad de bitcoins, sin tener que enviarlos por ejemplo.

No es una característica regular de los usuarios se necesitan con frecuencia.

+835
Joe Fernandez 30 ago. 2015 7:47:56

Es un timestamp de Unix, pero permítanme corregir un detalle menor:

Los Y2.038 problema se aplica a un entero de 32 bits número. El Bitcoin marca de tiempo no está firmada, por lo que puede representar a la fecha dos veces. Por lo tanto, se convertirá en un problema en 136.1 años, o en el año 2106.

Somewhen antes de entonces, no se necesita ser un duro de la horquilla.

+787
Hendrik Brummermann 2 jul. 2017 3:42:33

Sólo se ve el equilibrio de los bloques que tienen al menos otros 100 en la parte superior. Esto es debido a que coinbase salidas sólo se convierten en disponibles después de 101 confirmaciones (el periodo de madurez).

Después de los nodos a conectar, y a una cuadra se extrae por node0, el nodo 1 de la cadena anterior se reorganiza de distancia, y a partir de ese punto, ambos nodos de trabajo en la misma cadena.

Sin embargo, cada vez que un nuevo bloque es extraído, el equilibrio del nodo que se extrae el bloque de 100 antes de que se incrementa.

No tiene nada que ver con la nBits error. Este es en realidad un bug en el software que se fija ahora, pero esto no te afecta.

+703
Q2iz 22 ene. 2010 14:42:15

Estoy interesado en utilizar multisignature las transacciones para asegurar mi empresa monedas y me pregunto ¿qué herramientas están disponibles ahora para su uso con multisignature transacciones? Estoy especialmente interesado en las soluciones que funcionan en las teclas distribuidas entre varias carteras (no hay una sola cartera contiene todas las claves) y no son moneda específica (iba a funcionar igual de bien para Bitcoin como para Litecoin o en otras monedas).

Sé que el estándar de bitcoind API que falta en multisignature apoyo debido a este error.

+620
ilyakot 14 feb. 2013 9:36:35

Quiero lanzar un servicio de billetera bitcoin sitio web para la creación de nuevas carteras.

Y quiero disponer de una herramienta de usuario para la importación de su edad carteras utilizando la clave pública y privada.

Sé que puedo utilizar API como blockchain.info api y algunos otros

Pero ellos solo permiten crear carteras en su sistema , y usted no puede importar de otras carteras de uso de su api en su cuenta.

¿Cómo puedo ser un bitcoin wallet proveedor de servicios de cero?

quiero dejar a mis clientes a crear una cuenta nueva con la nueva cartera de dirección + de importación y exportación de carteras de uso público y privado de la tecla de enviar y recibir dinero con otras carteras + etc

  • Por favor +1 pregunta si no sabe demasiado
+598
Seamus O hAodha 20 ago. 2010 13:16:16

La palabra clave que usted está buscando probablemente es el neutrino, como se explica en el artículo por un rayo laboratorios.

A partir de la conclusión del artículo que cito:

Estamos muy contentos de haber lanzado la primera aplicación de la BIP 157/158 compatible con Neutrino clientes en lnd 0,5 y en el Rayo de la Aplicación de la alfa. Mientras que las primeras versiones son para testnet, mainnet de Neutrinos está en progreso. Tenga en cuenta también que el Neutrino servir de apoyo ha sido añadido a btcd, y el apoyo para la BIP 158 se ha fusionado en bitcoind (Bitcoin Core). [...] Mientras que el apoyo para la BIP 158 se ha fusionado en bitcoind, apoyo para la BIP 157 aún no ha sido fusionado, por lo que el Neutrino filtros todavía no pueden ser atendidos por bitcoind completa de los nodos.

Así que supongo que en la actualidad se deberá ejecutar btcd junto con lnd. La configuración puede probablemente tomada de la LÉAME de https://github.com/lightninglabs/lightning-app

+513
acera 20 jul. 2018 5:20:48

La transferencia a coinbase.com o gemini.com luego los venden. A continuación, agregue su cuenta bancaria y retirar el dinero que acaba de vender su bitcoin es.

+510
kay garza 4 jun. 2018 21:32:20

Actualmente no hay forma de hacer funcionar un bitcoind cartera exclusivamente de la conexión a un interlocutor único a través de llamadas RPC. Usted tendría que usar un programa en tu computadora con windows. Yo no soy consciente de que cualquier usuario de manera sencilla de hacer esto, pero hay programas de código abierto disponible como https://github.com/jgarzik/python-bitcoinrpc. La opción-connect le permite especificar los pares que se conecta, pero ya que vas a ser la descarga de todo el bloque de la cadena de todos modos en su máquina Windows, que puede o no puede ser lo que usted desea.

Si vas por ese camino, por defecto bitcoind sólo acepta llamadas RPC locales. A cambio de esto, usted necesita para editar el bitcoin.conf en el archivo .bitcoin carpeta. Hay un parámetro rpcallowip donde usted puede definir qué ip se le permite hacer llamadas RPC. Usted necesita estar consciente de que este es un potencial vector de ataque de los hackers.

Consulte los detalles acerca de bitcoin.conf aquí : https://en.bitcoin.it/wiki/Running_Bitcoin#Sample_Bitcoin.conf

+500
Chopmo 4 nov. 2017 18:01:29

Cuando se crea una cartera de, digamos con blockchain, ¿tengo que comprobar mi cartera siempre con blockchain, o también, puedo comprobar mi cartera con diferentes providern de carteras, donde no he establecido mi cartera. Algunas proveedor de carteras enlace directamente a blockchain, y algunos no. Por lo tanto, pude un poco confundido.

+446
laranerli 16 abr. 2012 20:52:24

Bitcoin, la minería es un trabajo útil, asegura el Bitcoin bloque de la cadena. Si desea pagar a la gente para hacer otro tipo de trabajo, que sin duda puede hacer eso, pero que no tiene nada que ver con Bitcoin minería. El trabajo de mineros de Bitcoin hacer es, precisamente, el trabajo necesario para garantizar el Bitcoin bloque de la cadena.

No hay ninguna forma conocida de hacer que algo sea tanto el plegamiento de la proteína y también asegurar el Bitcoin bloque de la cadena, más de lo que usted puede hacer su declaración de impuestos también el plegamiento de proteínas. Hash no fue escogido arbitrariamente, que fue elegido porque asegura el Bitcoin bloque de la cadena.

+351
user2543344 13 oct. 2013 7:48:17

En un promedio a largo plazo el número de transacciones que se limita el número de transacciones que pueden entrar en el blockchain-- aproximadamente 7tx/s antes de segwit y 14tx/s después de segwit activa.

Pero sobre una base de corto plazo, mientras que el mempool llena o con las transacciones que se sustituye la tasa puede ser tan rápida como su nodo de procesar transacciones. En razonablemente rápida de hardware esto puede fácilmente alcanzar unos mil por segundo.

Pero que normalmente no ver las tarifas como esta, en la práctica, a menos que alguien te ataque a ti o alguien hace algo extraño, especialmente porque la mayoría de los nodos límite de sus instantáneo relé de frecuencia a una pequeña múltiples del promedio a largo plazo tasa de transacción. Cuando un nuevo nodo se inicia sólo se pone los recién llegados de las transacciones, a pesar de la errónea o malintencionada punto se podría anunciar cada una de las transacciones que saber a usted tan pronto como usted entrar en línea con el fin de alcanzar que el máximo de la velocidad (al menos hasta que el mempool llena).

+302
user92426 26 oct. 2013 16:25:22

Blockchain es una mera cadena de bloques y en este sentido es peor que la de cada base de datos en la tierra. Lo que hace que el público blockchain único es la prueba-de-trabajo que se asegura de que miles de copias de la blockchain son probabilísticamente idénticos en todo el mundo y sin discreta autoridad de confianza para su gestión. Un privado blockchain es un libro administrados por la autoridad, por lo que es una abstracción que puede ser aplicado con cualquier db tecnología

+211
Justin W 24 nov. 2015 22:40:37

Mi comprensión de la blocksize debate es que se requeriría 51% de consenso para el cambio de algoritmo, y aceptar el nuevo tamaño de bloque.

Que es incorrecta. Cambiar el tamaño de bloque que se requeriría un duro de la horquilla, ya que es un cambio que rompe con el consenso de las reglas. Así que si el 51% de los mineros comenzaron a correr código para las grandes bloques, el 100% de los nodos simplemente ignorar su nuevo bloques más grandes, y seguir con el 49% restante de los mineros.

Lo mismo va para el suministro de límite.

Para cambiar estas variables "limpiamente", usted necesita absoluto el apoyo de toda la comunidad, tal vez lo más importante es que los usuarios que ejecutan sus propios nodos. Quizás es más probable para un intento de cambio en el consenso de normas para el resultado en una cadena de split, como algunos % de los usuarios a cambiar a las nuevas reglas, y el resto se mantiene en las viejas reglas. La teoría de juegos que participan en este tipo de situaciones es complejo y depende de muchas variables (¿qué % de usuarios a cambiar, ¿qué % de los mineros interruptor de protección de reproducción se implementa, etc)

Una importante es entender que los mineros de trabajo para validar bloques, de acuerdo a las reglas escogidas por los usuarios. Los mineros no decidir qué reglas, los usuarios seguirán.

+207
Sergey Voskrecov 14 jul. 2019 13:28:32

https://blockchain.info/tx/c1669dabe1bcadf50c4b712e42da7b3d3152aef53752731b04a4f585dde6f5f2

El coinbase estados del este:

035fd807174d696e656420627920416e74506f6f6c311e205aaed698fabe6d6d4b889c7cba7d6b5f78928c66ca81b377e39cf502340287a9e7545b9f234c7a06040000000000000094010000bb5c0100
(decodificado) _�Extraído por AntPool1 Z�֘��mmK��|�}k_x��fʁ�w��4���T[�#Lz��\

Que parte es la real AntPool dirección y que es parte de la extra Nonce, también ¿por qué no se han decodificado?

Se analiza en json y que llegó a ser:

"vin": [
{
 "coinbase": 
"0362d8070483ddae5a642f4254432e434f4d2ffabe6d6dbd4affe5698eb19c52b5ac94015a2eaecd44f4b274883786f086673ba406c05001000000000000003c0d701e0000cfc79db70100",
 "secuencia": 4294967295,
 "n": 0
}
]
+128
Nathan Chambers 19 nov. 2013 3:22:54

Estoy usando ElectrumX Estoy desarrollando una cryptowallet, y cuando me pide los datos históricos acerca de un determinado XPUB puedo obtener una lista de las transacciones id, y cuando me pregunte por la información de las transacciones id tengo un montón de datos, como el de vins y vouts, pero no sé si me han enviado ese dinero en el vouts o si yo lo he recibido. Yo estaba usando NBXplorer, y con esto era muy fácil, ya que muestra de una manera que de su equilibrio antes y después de la transacción, y también tiene un BalanceChanged de la propiedad, sin embargo, esta respuesta no sé. Esta es la respuesta de ElectrumX sobre un tx.

"hex": "020000000149098192c1915a14b7973db7c02e56819094b51bfe947bc87380885cd67a701c010000006b483045022100c3a9b5ec4f46fea733da7409dbcad32b269643ef4ffe0269d03d68e917a5d8e602207569f8974457f513a4eca86b795e07325ab693a6bf1c11c8bc57eadcee74594c01210353aa3e3c84d28c528f75461588724416a6b25086338d4d77340d70724f86847bffffffff0280f0fa02000000001976a914aecb98ceb5ab6520460949f6d8513eb607a9334288ac7c651903000000001976a914289575d3a73826e9103aa3960ab9be82d5ccb61e88ac00000000",
"txid": "2ed817f38eb6edd66d6e8091183d699386dfd8e1e20c4aca719dd10a2e007664",
"tamaño": 226,
"versión": 2,
"locktime": 0,
"vin": [
{
 "txid": "1c707ad65c888073c87b94fe1bb5949081562ec0b73d97b7145a91c192810949",
 "vsal": 1,
 "scriptSig": {
 "asm": "3045022100c3a9b5ec4f46fea733da7409dbcad32b269643ef4ffe0269d03d68e917a5d8e602207569f8974457f513a4eca86b795e07325ab693a6bf1c11c8bc57eadcee74594c[ALL] 0353aa3e3c84d28c528f75461588724416a6b25086338d4d77340d70724f86847b",
 "hex": "483045022100c3a9b5ec4f46fea733da7409dbcad32b269643ef4ffe0269d03d68e917a5d8e602207569f8974457f513a4eca86b795e07325ab693a6bf1c11c8bc57eadcee74594c01210353aa3e3c84d28c528f75461588724416a6b25086338d4d77340d70724f86847b"
},
 "secuencia": 4294967295
}
],
"vsal": [
{
 "valor": 0.5,
 "valueSat": 50000000,
 "n": 0,
 "scriptPubKey": {
 "asm": "OP_DUP OP_HASH160 aecb98ceb5ab6520460949f6d8513eb607a93342 OP_EQUALVERIFY OP_CHECKSIG",
 "hex": "76a914aecb98ceb5ab6520460949f6d8513eb607a9334288ac",
 "reqSigs": 1,
 "tipo": "pubkeyhash",
 "direcciones": [
"PQXQdWgMo51xS1adhCU6DkfEQpAbZ8mmmw"
]
}
},
{
 "valor": 0.51996028,
 "valueSat": 51996028,
 "n": 1,
 "scriptPubKey": {
 "asm": "OP_DUP OP_HASH160 289575d3a73826e9103aa3960ab9be82d5ccb61e OP_EQUALVERIFY OP_CHECKSIG",
 "hex": "76a914289575d3a73826e9103aa3960ab9be82d5ccb61e88ac",
 "reqSigs": 1,
 "tipo": "pubkeyhash",
 "direcciones": [
"PCHmEKwMcuJyD3ZzUX8p35PtW3M8VFtB1x"
]
}
}
+127
siva Sankar 24 jun. 2013 14:42:03

La marca de tiempo en los bloques no necesita ser ajustado para el tiempo real de la corriente de hash. Así que durante la minería, la marca de tiempo se pueden mover cuando el nonce es agotado incluso si el tiempo no es que la marca de tiempo.

También hay otras maneras de cambiar el bloque de encabezados que no requieren cambio de la marca de hora. Los mineros con frecuencia agregar un valor a la coinbase parte de su coinbase transacción que se conoce como un extranonce. Los mineros se incremento que en el fin de cambiar el merkle raíz cada vez que se escape un conjunto de nonces así como para permitir aún más nonce posibilidades. Además, otras cosas que se pueden hacer, tales como permuting transacción de pedido, la selección de nuevas transacciones, el cambio de coinbase secuencias de comandos de salida, etc. Todas estas formas de cambiar el hash del bloque permite a los mineros a hacer miles de millones de hashes por segundo.

+118
Hankok 27 oct. 2011 1:21:01

Yo solía usar Coinbase.com pero recientemente las tasas se levantó de un salto dramáticamente, de modo que, por ejemplo, por un valor de $14 transacción se me cobró $2 hoy en día. Que es mucho, incluso por Paypal normas!

Entonces, me pregunto si se trata de una tendencia general que las tasas de aumento de tan bruscamente? Y sin embargo, ¿qué otras conocidas wallet ofrece el mínimo de los honorarios de la transacción?

+114
PhilCassidy 25 oct. 2019 2:54:14

Veo que blockchain.info está reportando una gran y creciente número de transacciones sin confirmar.

Supongo que estas son todas las transacciones que se transmite a la red, pero nunca se confirmó como resultado de las bajas tasas.

¿Qué significa esto a largo plazo? Dada mi comprensión de la blockchain, sólo las transacciones en el blockchain se considera confirmada y no existen en el blockchain si no son confirmadas - y, en cambio, sólo existen en la mempool.

De acuerdo a blockchain.info's mempool tamaño del gráfico, el mempool tamaño se ha incrementado considerablemente desde el génesis, y de alguna investigación inicial muestra que el tamaño hace crecer con resultados anormales de las condiciones de la red (los picos de alto volumen, etc).

En el momento de la escritura, el número de transacciones es 285,565, de un total de aproximadamente 228.71450055 BTC que está atado en cuotas.

Eso significa que aproximadamente 0.0008009192322 BTC por cada transacción en promedio. Sin embargo, siguiendo la regla de los 20 satoshis por byte, en promedio, cada transacción sólo necesitaría 0.00002 BTC en concepto de honorarios - alrededor de 40 veces menos de lo que actualmente se está atado en BTC honorarios.

¿Qué está pasando aquí? El número de transacciones sin confirmar mueren con el tiempo? Va a aumentar de manera incontrolable? Tendrá esto alguna vez fuera de escala el número de mineros en la red?

O estoy completamente perdiendo algo aquí?

+52
Nevaliashka 16 feb. 2017 4:53:54

Así que estoy pensando en volver a estar en bitcoin y recientemente he descubierto el ASICMiner Block Erupter. Y veo que casi todo el mundo tiene las mismas que se ejecuta en un USB3 hub. Digamos que me encontré con 8 de estos Block Erupters en un único centro que fue conectado a la rPi. Ahora sé que el centro es USB3 y el rPi tiene sólo una conexión USB2. Tendría que estar bien? Y que el rPi ser capaz de manejar o procesar el bitcoin minería de datos de la aplicación? O tengo que usar un poco mejor PC para manejarlo?

Elegí el rPi porque se consume bajo el poder en sí, y puedo hacer que se ejecute 24/7 de un PC.

+40
nevalenny 5 ene. 2015 9:36:27

Mostrar preguntas con etiqueta