WebAPI para interactuar con la billetera bitcoin

Necesito enviar fondos automáticamente desde mi hotwallet a los usuarios de mi sitio web en varios momentos cuando hacen algo en el sitio.

Más tarde, también tendré que poder ver el saldo total de una dirección, recibir datos sobre los totales de la dirección y los fondos, etc. (para esto, tengo el explorador de bloques ABR y la configuración de la API para leer la cadena de bloques en busca de direcciones)

Sé que existen todos los comandos que se pueden ejecutar desde la terminal o CMD cuando se ejecuta bitcoind, pero ¿cómo activarlos desde mi sitio web? ¿Necesito escribir una webAPI para manejar dichas solicitudes directamente contra la red? ¿O es más común hacer una llamada para ejecutar estos comandos a través de scripts directamente contra bitcoind?

Cualquier ayuda apreciada

Respuestas (1)

En realidad, tiene varias opciones, pero todas se relacionan con lo que realmente es su billetera caliente y cómo desea interactuar con ella.

Por ejemplo, podría tener bitcoind ejecutándose en un servidor diferente y permitirle aceptar comandos RPC de su servidor web. Estos comandos pueden emitirse llamando a la línea de comandos en su servidor o agregando soporte RPC directamente en su aplicación web.

También puede omitir el uso de una billetera "lista para usar" como bitcoind y, en su lugar, agregar funciones de billetera directamente a su aplicación web usando una biblioteca como NBitcoin (ya que parece que está usando .NET). En este escenario, su aplicación web sería en realidad su billetera caliente y solo desarrollaría las capacidades de billetera que planea usar.

Sin embargo, en cualquiera de estos casos, le aconsejaría que mantenga la funcionalidad de billetera fuera de su servidor web público y se asegure de que el servidor que maneja la firma real de transacciones y el almacenamiento de claves privadas solo sea accesible desde su servidor web (con la debida autenticación), y no Internet en general. Cuando se trata de bitcoin, es mejor limitar su superficie de ataque.