La mejor práctica para el envío de btcs con tasas de comedero bitcoind api

estoy construyendo servicio que va a recibir la cantidad exacta de bitcoins y luego repartir para dos usuarios y enviar a ellos. Para el ex.

  • Recibir: 10BTC
  • Para el usuario: 5BTC
  • Usuario B: 5BTC

Obviamente, yo no se puede enviar a través de "sendfrom" exactamente 5BTC porque va a pasar algo como 5.0005.

Mi primera solución fue codificar .0005 de la cuota y la cantidad de envío con restar de la cuota. Pero su lejos de ser perfecto y no reflejan cargo de algo futuros cambios.

Así que ¿cuál es la mejor práctica de procesamiento de este tipo de transacciones en este momento?

Hay forma de pedir bitcoind lo que será la tarifa exacta de la transacción o decirle bitcoind a restar de la cuota de envío de cantidad?

+820
TCvegan 21 nov. 2018 7:08:54
20 respuestas

OpenSSL (de ssl en Mac OS X Versión 10.11.6) y Secp256k1 (desde el bitcoin-core repositorio) parecen diferir en sus implementaciones de ECDSA. Estoy teniendo problemas con estas diferencias y queremos asegurarnos de que realmente existen, y si lo hacen, ¿cómo conciliar las diferencias.

Por ejemplo, el uso de OpenSSL, que la cuantía de las firmas obtengo puede terminar en cualquier byte. Sin embargo, a partir de esta línea en Secp256k1, parece que el 65º byte (es decir, el último byte) es necesario para estar entre 0 y 4 inclusive.

Si este es el caso, entonces ¿por qué OpenSSL permitir que el último byte, que parece ser referido como rec_id, para ser de algún valor?

+989
Harald Hulaas 03 февр. '09 в 4:24

Simplemente poner todos los consumidores de grado ordenadores "podría" mina de bitcoin y otras altcoins, la pregunta que usted está probablemente interesado en es con respecto a la profitabiltiy.

En este momento la gente está todavía minería scrypt basado en altcoins especialmente construido máquinas con múltiples de alto rendimiento de la GPU. Si este es rentable depende de sus circunstancias, por ejemplo, el precio de la electricidad por kW/h, el precio de las monedas que usted está de minería de datos y el costo de la plataforma a construir/comprar.

Un buen lugar para leer acerca de que las monedas scrypt/SHA256 es la Lista de las alternativas cryptocurrencies y un buen lugar para averiguar sobre el precio/capitalización de mercado es coinmarketcap.com.

+977
user3712339 30 ene. 2011 19:39:16

Solo ve a tu QT Cartera de la Consola (Ayuda -> Ventana de Depuración -> Consola)

dumpwallet "C:/users/yout-user-name/dumpwallet.txt" 

El comando de exportación de cada una de sus claves privadas en ese archivo de texto.

P/s: en caso de tener Cartera cifrada antes de que usted necesita ejecutar este comando antes de ejecutar dumpwallet

walletpassphrase "la frase de" 600
+969
Chris Bendeler 12 nov. 2014 21:39:06

Incluso si usted tenía el nombre del donante y de correo electrónico, no sería de ayuda a recuperar los bitcoins. Usted necesita para obtener acceso a la clave privada.

+944
yonel 12 dic. 2017 11:59:21

así que estoy tratando de conseguir bitcoind que se ejecuta en mi Mac y me clonó el código fuente de github. Lo que he intentado hacer:

brew install autoconf automake berkeley-db4 impulso miniupnpc openssl pkg-config protobuf qt libtool
git clone https://github.com/bitcoin/bitcoin.git
hacer

Pero luego me sale un error:

***No hay objetivos especificados y no makefile encontrado. 

Sin embargo, estoy mirando y veo Makefile.soy Alguna idea sobre qué hacer?

+907
icravethenectar 26 abr. 2016 21:06:29

Generar una dirección de hardware de la cartera. A continuación, inicie sesión en su cuenta web wallet y enviar todas tus monedas a esa dirección. Eso es todo.

+833
Spiros 23 jun. 2019 10:02:55

Mantener algunas cosas en mente. No todos los 80 mil millones de XRP que OpenCoin se supone que es para regalar ya está en manos de la gente. También, los fundadores que mantuvo a 20 millones de euros, probablemente, no se puede vender una gran parte de ella. Por esta razón, la cantidad total de XRP en circulación es muchas veces inferior a 100 millones de dólares.

Además de que, es cierto que la capitalización de mercado total puede ser valorado en 100 millones de dólares * 0.0044.. USD/XRP = ± 450 millones de DÓLARES. Pero ese número no tiene demasiado sentido, ya que el precio va a caer muy rápido cuando la gente vende a los grandes números de XRP. La razón por la que el precio de este (relativamente alta) el valor es porque la mayoría de las personas no están dispuestas a vender sus XRP y todo el mundo quiere comprar un poco de ellos para experimentar o para mantener así una primera inversión.

La razón principal por la que la gente compra XRP ahora es porque creen que Dominó tiene potencial para convertirse en grandes algún día. Y, posiblemente, para desarrollo y pruebas.

+814
Hina Khuman 10 abr. 2019 17:11:26

Me di cuenta de que hay una diferencia en la apariencia de los libros de la orden entre los diferentes intercambios.

En GDAX, el USD propagación se mantiene muy baja en la mayoría de las veces ($0.01). En estos momentos, las órdenes de compra y venta más cercano a mediados de los precios de mercado cantidad a un mayor valor de BTC que lo que en realidad se negocia.

Esta intrínsecamente conlleva a una historia que es mucho más estable en un periodo corto de tiempo, lo que me hace pensar que tiene algo que ver con "manipulación" de la actual BTC precio, por ejemplo por el uso de bots.

Otros intercambios suelen tener mucho más alto de USD extensión (en el orden de dólares), y por lo tanto una historia del comercio, que es menos estable durante períodos cortos de tiempo.

GDAX captura de pantalla

(USD propagación $0.01)

enter image description here

Bitstamp captura de pantalla

(USD propagación $12.11)

enter image description here

¿Cuál es la razón para esta discrepancia? ¿Cuál es la ganancia de forzar a una más estable a corto plazo BTC precio?

Edit: Otra captura de pantalla de hace un momento. Esta es una especie de ridículo. Los Bots ido mal?

enter image description here

+790
Luis Cota 26 may. 2019 5:28:19

Me estoy poniendo de esta excepción, cuando la estoy usando sendrawtransaction. Y todo lo que quiero hacer es traducir este docs para el código de Python, y he buscado por un tiempo, pero tanto ¿alguien Puede arrojar alguna luz sobre este error? Bitcore Multisig - mala-txns-en-belowout y Bitcoin core "mal-txns-en-belowout" no me pueden obligar a clara. y todos la excepción de trazas se lista a continuación:

Traceback (la mayoría de llamada reciente pasado):

Archivo "multisign.py", la línea 137, en de impresión(ms.go()) Archivo "multisign.py", línea 128, en ir ret = auto.rpc.sendrawtransaction(last_hex) File "/Users/frank/venv/bitcoin/lib/python2.7/site-packages/bitcoinrpc/authproxy.py", línea 141, en llamada elevar JSONRPCException(respuesta['error']) bitcoinrpc.authproxy.JSONRPCException: -26: 16: bad-txns-en-belowout

Toda mi python de código como el siguiente:

importación de json
importación binascii
de pprint de importación pprint
de bitcoinrpc.authproxy de importación AuthServiceProxy, JSONRPCException

# rpc_user y rpc_password se establecen en el bitcoin.conf archivo
rpc_user = 'my_rpc'
rpc_password= 'my_rpc_password'
rpc_host = '192.168.1.86:9332'

rpc_connection = AuthServiceProxy("http://{}:{}@{}".formato(rpc_user, rpc_password, rpc_host))

#print(best_block_hash)

clase MultiSign(objeto):

 def __init__(self, rpc):
 auto.rpc = rpc


 def validate_address(self, addr):
 ret = auto.rpc.validateaddress(addr)
 return ret

 def clave pública(self):
pasar


 def set_addr(self, addr_1, addr_2, addr_3, addr_4):
 auto.addr_1 = addr_1
 auto.addr_2 = addr_2
 auto.addr_3 = addr_3
 auto.addr_4 = addr_4


 def create_multisig(self, nrequired, llaves):
"""
 Obsoleto este <createmultisig>

 @param nrequired: numérico
 @param claves: cadena json matriz de codificación hexadecimal claves públicas

 @return {"address":"multi_sign_address", "redeemScript":"secuencia de comandos"}
"""
 devolver el auto.rpc.createmultisig(nrequired, llaves)

 def add_multisig_address(self, nrequired, llaves):
 devolver el auto.rpc.addmultisigaddress(nrequired, llaves)

 def dumpprivkey(self, addr):
 devolver el auto.rpc.dumpprivkey(addr)

 def send_address(self, dirección, cantidad):
 devolver el auto.rpc.sendtoaddress(addr, cantidad)

 def get_rawtransaction(self, txid, flag=1):
 devolver el auto.rpc.getrawtransaction(txid, la bandera)

 def create_raw(self, txid, vsal, dest_addr, cantidad):
pasar

 def ir(self):
 total_amount = auto.rpc.getbalance()
de impresión(total_amount)
 utxo_vout = 0
 addr1 = auto.rpc.getnewaddress()
 addr2 = auto.rpc.getnewaddress()
 addr3 = auto.rpc.getnewaddress()
 addr4 = auto.rpc.getnewaddress() # dirección de destino que vamos a enviar a 
 raw_change_address = auto.rpc.getrawchangeaddress()
 fee_obj = auto.rpc.estimatesmartfee(6)
 cuota = fee_obj.get("feerate")

 send_amount = total_amount / 2
 change_amount = total_amount / 2 - cuota
 print("send_amount -->%s" % send_amount)

 si change_amount < 0.00001:
de impresión(change_amount)
 raise Exception("fondos Insuficientes")
 change_amount = "%.8f" % change_amount
 send_amount = "%0.8 f" % send_amount
 # ======

 datos = "@landpack"
 si len(datos) > 75:
 print("la longitud de los Datos es {}".formato(len(datos)))
 raise Exception("Demasiados datos, uso OP_PUSHDATA1 lugar")

 hex_format_data = binascii.hexlify(datos)


 # validar cada una de las direcciones
 #pub_obj_addr1 = auto.validate_address(addr1)
 #pub_obj_addr2 = auto.validate_address(addr2)
 #pub_key_addr1 = pub_obj_addr1.get("clave pública")
 #pub_key_addr2 = pub_obj_addr2.get("clave pública")
 pub_obj_addr3 = auto.validate_address(addr3)
 pub_key_addr3 = pub_obj_addr3.get("clave pública")
 # volcado prive clave ..
 priv_addr1 = auto.dumpprivkey(addr1)
 priv_addr2 = auto.dumpprivkey(addr2)
 priv_addr3 = auto.dumpprivkey(addr3)
 # añadir múltiples señal de dirección
 ret = auto.add_multisig_address(2, [addr1, addr2, pub_key_addr3])
 print("==" * 10)
de impresión(ret)
 addr5 = ret.get("dirección")
 redeemScript = ret.get("redeemScript")
#
 txid = auto.send_address(addr5, send_amount)
 # verificar la transacción por txid
 ret = auto.get_rawtransaction(txid, 1)
 vout_obj = ret.get("vsal")
 scriptPubKey = vout_obj[0].get("scriptPubKey")
 hex_value = scriptPubKey.get("hex")
 # crear un raw de la transacción
 ret_hash = auto.rpc.createrawtransaction([{"txid": txid, "vsal": utxo_vout}], {"datos":hex_format_data, addr4: send_amount, raw_change_address: change_amount})
 # signo de la transacción
 sign_raw_transaction = auto.rpc.signrawtransaction(ret_hash, [{"txid":txid, "vsal":utxo_vout, "redeemScript": redeemScript, "scriptPubKey": hex_value, "cantidad": send_amount}],[ priv_addr1])

 # ..
 party_hex = sign_raw_transaction.get("hex")
 sign_party_transaction = auto.rpc.signrawtransaction(party_hex, [{"txid":txid, "vsal":utxo_vout, "redeemScript": redeemScript, "scriptPubKey": hex_value, "cantidad": send_amount}],[ priv_addr3])
 # enviar a brodcas
 last_hex = sign_party_transaction.get("hex")
de impresión(sign_party_transaction)
 ret = auto.rpc.sendrawtransaction(last_hex)


 return ret

si __name__ == '__main__':
 addr = 'tb1qffcx4mpft5lxk9clsz2du4t03elxl4qwx2hu8z'
 ms = MultiSign(rpc=rpc_connection)
ms.validate_address(addr)
de impresión(ms.go())
+783
user9778 6 ene. 2019 9:58:31

Yo no otras minería. La minería nada es rentable o va a ser como más y más gente se prende.

Si usted realmente está determinado a la mina, sin embargo, una gpu/cpu única moneda como gridcoin sería bueno.

Un buen tutorial general se puede encontrar aquí. No es muy detallada, pero será suficiente.

+741
djody 18 ago. 2014 19:15:26

Alguien puede explicarme lo de contracargos y cómo puedo utilizarlo para obtener mi dinero si puedo comprar bitcoins con tarjeta de crédito/débito. He oído acerca de esto por primera vez cuando empecé a usar bitcoins y esta es la única explicación de por qué todos los intercambios no acepta tarjetas de crédito y débito. Sé de transacciones en bitcoin es irreversible, pero puedo usar devolución de cargo para obtener mi dinero de vuelta. En la misma forma en la que puedo comprar algo que otros no bitcoins y devolución de mi dinero de nuevo. Bitcoin es sólo una cosa que no es especial, y si no puedo utilizar debitcard a pagar bitcoins entonces no puedo utilizar debitcard a pagar lo que sea.

Ejemplo: Estoy comprando patatas formulario de la tienda de su irreversible debido a que las papas están en mi bolso y puedo usar devolución de cargo y obtener mi dinero.

Dónde está la diferencia con bitcoins ?

+589
Nicolas Martin 24 sept. 2012 0:59:50

Con Bitcoin, el usuario no puede dar a cualquier tipo de tarjeta de crédito información. En lugar de dar la información para que el comerciante puede utilizar para retirar el dinero. El usuario envía su dinero sin dar ninguna información. Así, no hay ninguna información para un hacker para robar o para un empleado de abuso o vender.

Esto significa que la red puede tener tarifas mucho más bajas. Al comparar las cuotas de una tarjeta de crédito cargos de 100 000% por ciento más altos honorarios por transacción que el Bitcoin red.

Otra ventaja es que es gratis para obtener una dirección Bitcoin.

También hay un projekt en el trabajo, que podría hacer posible el uso de una tarjeta de crédito para pagar con Bitcoins. Llama Openpay.

Por lo que podría llegar a ser posible el uso de Bitcoin en cualquier tienda que tiene VISA/Mastercard.

Pero el beneficio real es que los Bitcoins en un Bitcoin red sólo pertenece al propietario el control de la dirección.

En lugar de tener el dinero en un banco, en el que el dinero que le pertenece al banco. Lo que usted ve en su cuenta bancaria es cuánto dinero tiene prestada para el banco y para esto les dará una tasa de interés.

Por lo tanto, Bitcoins es la única manera de ser dueño de su propio dinero en forma electrónica.

+507
Hebe 14 mar. 2011 10:09:17

Sí...

... Pero va a ser un montón de trabajo.

En primer lugar usted debe buscar en BIP 199 que define htlc secuencias de comandos. Sin embargo, la única que puede sólo te digo cómo crear un htlc de salida.

Pero con la transacción en sí no se hace. Usted necesidad de utilizar el canal derecho del estado y de las teclas de modo que se podía leer PERNO 02, 03 y 05 para aprender acerca de los pares de protocolo y mensajes que usted necesita para el intercambio con los socios de canal (para usted también necesita PERNO 08 y 01 cubriendo la configuración de una sesión de transporte y el formato de mensaje), la clave de la derivación y la exacta onchain especificaciones para htlc de salida y witeness secuencias de comandos. Usted encontrará todos los Tornillos en https://github.com/lightningnetwork/lightning-rfc?files=1

Todo esto se puede hacer en regtest. Si desea utilizar un regular rayo aplicación también se puede ejecutar en regtest modo de cambiar la entrada correspondiente en el archivo de configuración.

+422
w25r 29 jul. 2013 12:04:17

Yo no estoy seguro de entender Bitcoin muy bien. Lo que yo entiendo es que Bitcoin está ahí porque de la red.

¿Qué sucede si la red se cae por cualquier motivo?

¿Qué sucede si el minero que mantiene mis registros de Bitcoin muere o no quiere abrir su ordenador de nuevo?

+347
White1313 31 may. 2019 21:51:32

Esa es la cosa con un seudónimo de la moneda digital.

No es cognoscible a usted y a mí. Los grandes operadores de la piscina podría ser capaz de mirar a su retiro para ver si están gastadas pero no hay manera de saber definitivamente si el reintegro fue por un alojado (compartido) EWallet (p. ej., Mt. Gox) o a la máquina local del monedero.

Con ASIC de hardware, la mayor parte de los costos de producción ya ha sido gastado para adquirir el hardware. Muy poco de el costo de producción será de electricidad. Esta variada de GPUs donde la inversa de la mayoría era de verdad.

Si los mineros están en deuda que será la necesidad de vender su producción a pagar la deuda. Parece probable que la mayoría de los ASIC compras no fueron adquiridos con la deuda por lo que parece probable que la mayoría de los ASIC de los operadores de la mina en realidad no se ven forzados a vender sus extraído BTCs en absoluto.

+239
LRE 4 nov. 2019 2:36:48

Todo comenzó cuando traté de hacer un par de pagos a través de bitcoin. Las transacciones no se confirme. Después de hacer un poco de lectura vi que "zapwallettxes" supuestamente volcado de las transacciones que no se confirme, para que yo pudiera volver a enviar los pagos. Así que me fui corriendo a la rutina. Que fue de más de 24 horas, y aún funciona. La única manera que puedo decir que sigue funcionando es (a) tengo un cursor parpadeante en la pantalla de DOS, y (b) cuando intento ejecutar mi billetera se dice que es ocupada actualmente. Ha alguien tiene alguna experiencia con zapwallettxes ? ¿Cuánto tiempo se necesita para ejecutar?

+229
Chris J 22 ene. 2010 17:45:41

Yo no tengo la solución de Java, pero me puede indicar el error. La conversión a hexadecimal es aparentemente desaparecidos. Cuando hago el hash en el archivo de texto en sí, también tengo el mal resultado:

$ printf 1L88S26C5oyjL1gkXsBeYwHHjvGvCcidr9 > adr.txt
$ openssl dgst -sha256 -binario <adr.txt >tmp_sha256.hex
$ openssl dgst -ripemd160 <tmp_sha256.hex
(stdin)= db151e871af66b1323893e3f527e22f7684718af

de manera que la transformación en un hex matriz de bytes "addressHex" es para asegurarse de que falta algo.

Actualización:

Puedo ver el "bytesToHex()" función, fue este el código del enlace que te puse en el otro hilo? Si es así, intentar volcar la salida de la versión de java en un archivo, y el uso hexdump para verificar. Así que usted puede concentrarse en estas dos líneas (he hecho el comando sed más corto, sin "gato"):

$ printf 1L88S26C5oyjL1gkXsBeYwHHjvGvCcidr9 > adr.txt
$ printf $ sed 's/[[:xdigit:]]\{2\}/\\x&/g' adr.txt ) >adr.hex
$ hexdump -C adr.hex 
00000000 31 4c 88 53 26 c5 6f 79 6a 4c 31 67 6b 58 73 ser |1L.S&.oyjL1gkXs.|
00000010 59 77 48 48 6a 76 47 76 cc 69 64 72 39 |YwHHjvGv.idr9|
0000001d

Aquí, usted debería recibir el mismo resultado por el código de java, entonces estaría bien :-)

+101
Sahanas Doolapandan 17 sept. 2014 8:33:08

Estoy tratando de configurar un bitcoin servicio para mis usuarios. Cómo hacer otros sitios o intercambios de seguir la pista de cada uno de los usuarios únicos de Bitcoin depósito de la dirección? Y ¿cómo la aplicación de la alerta de que el administrador/usuario cuando se efectúa un depósito con éxito después de las 2 de la confirmación?

Qué aplicaciones puede hacer esto? Yo estaba pensando en usar electrum ya que no requieren la descarga de la totalidad de la blockchain. ¿Qué otras aplicaciones que no pueden hacer algo como para gestionar los usuarios de la btc.

+73
ARMAN1995ARM 25 nov. 2019 20:46:06

quien controla el precio del BTC?

No hay una sola persona.

Como todo mercado, el precio es determinado por el individuo compradores y vendedores.

Dado que la mayoría de los compradores y vendedores son humanos, el precio que están dispuestos a comprar o vender a depende en parte irracional o factores emocionales en parte impulsada por la noticia acerca de diversos aspectos de la economía global, así como noticias acerca de cryptocurrencies en general y noticias relacionadas con Bitcoin específicamente.

Algunos de los compradores o los vendedores pueden intentar manipular el mercado, pero, hasta donde yo sé, no hay nada en el Bitcoin peer-to-peer protocolos que faciliten esta en cualquier singulares o de especial manera.


hizo satoshi por ejemplo crear lado de la BTC AI lado de él que decide sus precios basados en el blockchain transacciones?

No, AFAIK.

La evidencia sugiere que la persona o personas detrás de el nombre de Satoshi Nakamoto, ya no están activos en el mundo Bitcoin, ciertamente no en Bitcoin desarrollo. Naturalmente, es posible que se activa bajo otro nombre, pero no hay manera de saberlo. Esta parte es irrebatible.

Hasta donde yo sé, no hay evidencia significativa de que los movimientos de los precios implican BTC en los intercambios de divisas actuar en cualquier forma que pueda contradecir lo que uno podría esperar de la lectura de Satoshi Nakamoto del documento.

He visto ninguna evidencia de que hay un AI activo en el mercado BTC que actúa de forma diferente (es decir. con ningún privilegio especial) a IA activo en otra moneda mercados (por ejemplo, el USD-EUR mercado)

Hasta donde yo sé, no existen documentos o mensajes de correo electrónico publicado por Satoshi Nakamoto, que se refieren a una IA intención de manipular o determinar los tipos de cambio entre BTC y otra moneda.


Notas a pie de página:

Este Q&Un sitio web no es la intención ni adecuado para la discusión en general, no es adecuado para el examen de las teorías de la conspiración. Puede o no puede ser otro de los lugares donde ese tipo de discusión puede ocurrir.

+33
SamCroft 25 nov. 2015 15:39:14

Usted realmente necesita para tener en cuenta algunos factores importantes, que la calculadora es que faltan:

  • La actual tasa de aumento en la dificultad
  • A la espera de la entrega de la minería de hardware
  • El costo de la minería de hardware
  • El costo de la ejecución de la minería de hardware (costo de la electricidad)

He resaltado 2 de los más subestimados factores que normalmente ignorados por los nuevos mineros.

Muchos de minería de órdenes de hardware, puede tener importantes retrasos en el envío, debido a la alta demanda y bajo volumen de producción. A veces usted puede esperar meses para una entrega, momento en el cual la minería de dificultad elevado tan alto como para hacer que el hardware no rentables, incluso con el aumento en BTC/USD precio. Esto es especialmente cierto de nuevo hardware pre-pedidos, ser muy cuidadoso acerca de esos (no creo que la espera de la fecha de envío).

Le recomendamos que utilice esta calculadora en su lugar.

Asegúrese de rellenar un realista de hardware tiempo de entrega (1 unidad por cada 12 días de espera).

Hacer su investigación de lo contrario, usted podría terminar encima de no romper incluso.

+21
user3913 17 ago. 2010 3:38:29

Mostrar preguntas con etiqueta