Opciones Bitcoin.conf y JSON-RPC

¿Qué significa en el bitcoin.confarchivo cuando dice:

  server=1 tells Bitcoin-Qt to accept JSON-RPC commands?  

Si todo lo que uno necesita hacer para solo el mío es escribir setgenerate trueen la consola, entonces, ¿qué está en juego al aceptar los comandos JSON-RPC? ¿Permite esto que otro software interactúe con Bitcoin-Qt, o algo similar? ¿Alguien puede explicar?

A menos que esto sea solo para fines de prueba, optar por la minería en solitario y especialmente con la setgenerateopción (que podría estar bien para Quarkcoin que está basado en CPU pero definitivamente no es nada eficiente para Bitcoin) simplemente desperdiciará su electricidad y nunca pagará una espalda de satoshi.
@George Esta publicación solo está diseñada para confirmar el protocolo de minería en solitario con bitcoin-qt. Estoy de acuerdo con sus sentimientos, pero creo que es importante dominar los conceptos básicos, por ineficientes que puedan ser esos métodos... Saludos, oemb1905
No hay duda de que cumplirá su propósito muy bien para dominar los conceptos básicos, especialmente si lo prueba en testnet.
Actualización: después de la minería en solitario, decidí minar acciones, lo que hice entre 2014 y 2018 por 'centavos'. Me olvidé de las acciones y tuve una agradable sorpresa de $ 2000 en la primavera pasada de 2021. ¡Me alegra ver esta publicación sobre los fundamentos de la minería en solitario y la API JSON ha tenido tanta audiencia!

Respuestas (3)

La API JSON-RPC puede ser utilizada por otros programas para comunicarse con el cliente Bitcoin. Eso podría incluir programas de minería externos, software de "comercio electrónico" para realizar y recibir pagos automáticamente, o cualquier otro software que quiera interactuar con la red Bitcoin.

Es cierto que no necesita esta característica simplemente para minar en solitario usando setgenerate true. Sin embargo, debe tener en cuenta que setgenerate truehabilita un minero de CPU ineficiente que es una tecnología obsoleta y debe usarse solo para pruebas. Le costará mucho más en electricidad de lo que puede esperar ganar en ingresos mineros, y es muy probable que nunca extraiga con éxito un solo bloque. El estado actual de la técnica en minería es el hardware ASIC dedicado. Dicho hardware normalmente estaría controlado por una pieza de software separada, que luego se comunicaría con el cliente de Bitcoin a través de la API de RPC.

Gracias, soy consciente de que ASIC es la tecnología actual y que la minería de CPU está obsoleta. Solo quería confirmar esta parte del archivo bitcoin.conf. Usted menciona que el hardware, un minero ASIC, estaría controlado por software, por ejemplo, rpgminer, y se comunicaría con bitcoin-qt usando la API RPC. ¿Su respuesta sugiere que mantendría Bitcoin-Qt ejecutándose en segundo plano mientras extraigo con rpgminer?
@oemb1905: Sí. También puede usar el cliente sin cabeza bitcoind, si no desea la ventana adicional en su escritorio.
¿Me pueden dirigir al sitio para descargar bitcoind? Gracias, y lo consideraré para mi configuración.
@oemb1905: Lo obtienes del mismo lugar que lo obtuviste bitcoin-qt. Dependiendo de lo que haya descargado, es posible que ya lo haya instalado junto con bitcoin-qt.
Escuché que ahora están agrupados, así que tal vez lo hice. Volveré a visitar el sitio .org. ¡Gracias de nuevo!

Una razón que podría usar server=1es cuando está usando un programa de minería de terceros como cgminer.

Ejemplo bitcoin.conf:

server=1
rpcuser=SOMEUSER
rpcpassword=SOMEPASSWORD

Nota: No establezca gen=1, porque no desea utilizar la minería de CPU. En su lugar, instale cgminer y ejecute:

cgminer -o http://127.0.0.1:8332 -u SOMEUSER -p SOMEPASSWORD
Esto es realmente genial, y me imagino que sigue siendo relevante para la minería de Litecoin.

Sí. si configura servidor = 1 en su archivo bitcoin.conf, su billetera ejecutará un servidor que escucha y acepta los comandos que se le pasan. Estos se pueden usar para controlar externamente la billetera. De manera predeterminada, solo se aceptan las solicitudes de su máquina local. JSON es el lenguaje de formato en el que se emiten los comandos. JSON_RPC es una forma estandarizada de emitir estos comandos utilizando el formato json. Cuando ejecuta el cliente, puede usar la consola disponible en el menú de ayuda para ejecutar el mismo conjunto de comandos directamente. Como la gente mencionó, ha pasado bastante tiempo desde que ha sido práctico usar al cliente como minero.