Públicamente la destrucción de bitcoins por el establecimiento de altas tasas de transacción

He estado pensando acerca de un sistema que le permite públicamente destruir bitcoins para permitir a la gente a construir redes de protección en contra de Sybil ataques aparte de la dificultad de conseguir las direcciones IPv4. Como alternativa a la destrucción de las monedas, he estado pensando en dar todos, pero uno de satoshi para el nodo que incluye la transacción en un bloque. Quiero decir, siempre y cuando no se controlan más del 10% de la red, no va a cambiar realmente cuánto le cuesta a la "destrucción" de las monedas.

Aquí está el problema: Supongamos que un nodo se crea una de estas transacciones, pero no la emite. En lugar de ello, tienen que esperar hasta que se las arreglan para incluir en un bloque, luego de la difusión de la cuadra. Incluso si sólo el control de 0.1% de la mezcla de energía, se puede encontrar el bloque en alrededor de una semana.

No puedo pensar en una buena solución para esto. Puede usted?

+814
Thomas Martino 27 mar. 2018 8:33:47
20 respuestas

Aquí es una gran respuesta de cómo calcular el tamaño de la transacción antes de enviar. (Asegúrese de leer la última edición.)

Como para el cargo, tienes que hacerlo bien: cualquiera que sea el monto de las entradas NO es enviado a otras direcciones, se convierte en la tarifa de transacción para los mineros.

+947
JAllen 03 февр. '09 в 4:24

La respuesta es la integración-android subproyecto de bitcoin-wallet.

Comience con el repositorio de código fuente para el Bitcoin Wallet.

El código fuente para pagos dentro de las aplicaciones es en la BitcoinIntegration.java el archivo, que es en la integración de android directorio.

Instrucciones para la elaboración de este subproyecto y ejemplo de código fuente para el uso que se da en esta presentación por el Señor Schildbach

También hay un ejemplo de aplicación para android que muestra esta característica.

Mi agradecimiento a Andreas Schildbach para personalmente me envía la respuesta a esta pregunta!

+933
GanitK 15 jun. 2017 21:58:56

Usted no tiene que seleccionar las transacciones más antiguas, que son las mismas como las transacciones recientes en blockchain del utxo vista. Cuando la construcción de una transacción, usted puede tomar el tamaño de la transacción en consideración, lo que podría afectar el pago de la transacción.

En general, cada salida es 148bytes y cada entrada es 34bytes. Aquí es una manera más precisa para calcular el pago de la transacción.

Cómo calcular el tamaño de la transacción antes de enviar

+893
Boomtown 22 oct. 2019 3:19:10

estoy tratando de ver todos los tx hash y la balanza en una dirección que no es dueño de:

$ bitcoin-cli importaddress 1M43pksKTGpBd8J8XzjStjgnX5vie1kpya
$ # espere 5 minutos mientras bitcoind, presumiblemente, explora todos los tx
$ # para esta dirección
$ bitcoin-cli getbalance 1M43pksKTGpBd8J8XzjStjgnX5vie1kpya
0.00000000

bitcoind afirma que esta dirección no tiene saldo, mientras que blockchain.info en la actualidad muestra un saldo final de 0.00993754 BTC

¿por qué no es trabajo?

sin embargo, el listunspent comando aparece a la lista el saldo de las operaciones correctamente:

$ bitcoin-cli listunspent 1M43pksKTGpBd8J8XzjStjgnX5vie1kpya
[
{
 "txid" : "0fdcdeff329b91fb9888720c958d550c39716f92abec4e5b6ff7c53a22bb31c2",
 "vsal" : 0,
 "address" : "1M43pksKTGpBd8J8XzjStjgnX5vie1kpya",
 "cuenta" : "",
 "scriptPubKey" : "76a914dbf61ed2ce1def33a34d89ab7b05ccc25d9cf02288ac",
 "cantidad" : 0.00010000,
 "confirmaciones" : 3608,
 "disponibles" : false
},
{
 "txid" : "db1beb183808e8b41064405d43bd6c684874b5f328bfb565c4e16cc2baaa0d18",
 "vsal" : 1,
 "address" : "1M43pksKTGpBd8J8XzjStjgnX5vie1kpya",
 "cuenta" : "",
 "scriptPubKey" : "76a914dbf61ed2ce1def33a34d89ab7b05ccc25d9cf02288ac",
 "cantidad" : 0.00983754,
 "confirmaciones" : 4459,
 "disponibles" : false
}
]

sumando los fondos aquí: 0.00983754 + 0.00010000 = 0.00993754 coincide con el blockchain.info figura. tal vez getbalance solo se muestra disponibles los fondos?

+878
KayCeePee 7 feb. 2016 4:09:31

Clark Moody es lo que yo elijo para un rápido vistazo, ya que ofrece básica candeleros, MA y cartera de pedidos cartera de pedidos pero no se visualiza (tan lejos como puedo ver), de todos modos si quieres más profundo en ambas direcciones:

ambos tienen acceso a los principales intercambios de Bitcoin, y son gratis.

+790
user7876 13 feb. 2013 8:10:12

Hay múltiples vectores de ataque para esto.

Si el comerciante acepta en 0/sin confirmar, a continuación, hay una raza de ataque en el que un atacante (estafador) enviará una transacción para el "comerciante" (o a un nodo más cercano a la comerciante) y una transacción independiente que gasta el doble de esas mismas monedas a otros nodos, tales como los nodos de minería. Dependiendo del comerciante de la configuración que el ratio de éxito de esta puede variar. El rango donde el atacante tiene éxito varía de cerca de 0% a cerca del 100%, pero simple de las medidas adoptadas por el comerciante (desactivar oyente, conectar explícitamente a bien conectados los nodos) impiden que la mayoría de los riesgos de este ataque.

Si el comerciante acepta en 0/sin confirmar, independientemente de las protecciones de una raza de ataque, a continuación, el Finney ataque es posible. En este sentido, el también atacante tiene el control de un minero que se ha extraído con éxito, pero aún no anunció un bloque con un especial de transacción que también no ha sido anunciado. Tan pronto como el bloque se extrae, el atacante pasa la moneda de ese especial transacción con un comerciante, asegura la entrega de los bienes adquiridos, a continuación, transmite el bloque que contiene el especial de transacción que invalida el pago, el comerciante ya aceptado. En un desincentivo para esto es que para cada par de segundos que el bloque se lleva a cabo, los costos de la atacante, en promedio, alrededor de $1 por lo que incluso con esta vulnerabilidad, hay herramientas disponibles para un comerciante para gestionar el riesgo de forma de pago en 0/sin confirmar todavía puede ser reconocido.

Como el número de confirmaciones requerida se incrementa el éxito de un doble pasar ataque de gota, y un comerciante que requiere 6/no confirmado es esencialmente seguro (basado en la probabilidad de éxito) en contra de la doble gasta donde los mineros intentos de volver a escribir los bloques. Básicamente, esto es sólo el éxito para un atacante una vez que el 51% de la mayoría de la red de hashing es alcanzado. El consenso es que, aunque técnicamente es posible, no tiene sentido económico (sin ánimo de lucro de hacerlo). Así que si "factible" significa que debe traer un beneficio, entonces este 51% de ataque método no ser uno de los métodos de preguntar acerca de.

+759
webGautam 14 oct. 2015 6:56:46

El uso de la Bittrex websockets API soy capaz de conseguir el resumen de las actualizaciones para todos los mercados y las actualizaciones de exchange para mercados específicos.

Sin embargo, no soy capaz de recibir la orden de la historia (en contraposición a las actualizaciones).

El mercado de las actualizaciones de exchange se recibe regularmente después de invocar el hub método: "SubscribeToExchangeDeltas".

Estoy tratando de conseguir el fin de la historia a través de la invocación de los concentradores método: "QueryExchangeState".

Pero esto no parece funcionar y no me da un error ... ?

¿Alguien tiene experiencia con esto o tiene el mismo problema o sabe de un ingenioso truco, por favor hágamelo saber!

El código que estoy utilizando es así:

importación pprint
de las solicitudes de importación de la Sesión # pip instalar las solicitudes de
de signalr Conexión de importación # pip install signalr-cliente


def handle_received(*args, **kwargs):

print('\nreceived')
print('\nargs:')
pprint.pprint(args)
print('\nkwargs:')
pprint.pprint(kwargs)


def print_error(error):
 print('error:' el error)


def main():
 con la Sesión() para la sesión:
 conexión = Conexión("https://www.bittrex.com/signalR/", la sesión)
 chat = conexión.register_hub('corehub')
conexión.start()

 conexión.recibido += handle_received
 conexión.error += print_error

 para el mercado en el ["BTC-MEME"]:
 el chat.servidor.invoke('SubscribeToExchangeDeltas', de mercado)
 el chat.servidor.invoke('QueryExchangeState', de mercado)
pasar

 mientras que la Verdadera:
conexión.wait(1)

si __name__ == "__main__":
main()
+733
Dilbert Doe 28 feb. 2019 20:05:50

Ahora, supongo que probablemente todas las cryptocurrencies que tienen ningún valor en absoluto es imposible solo mía para cualquier realistas cluster minero de instalación, para una persona normal.

Sin embargo, yo he tenido curiosidad acerca de esto por un momento: ¿Cómo se mina en solitario? Si quiero correr sgminer en digamos Vertcoin, usando sólo mi propia minero, cómo lo harías?

No estoy buscando alguna respuesta que describe el concepto, pero lo de los comandos sería realmente problema para conseguir este trabajo con sgminer (omitiendo el rendimiento de los argumentos específicos de curso)?

+732
Biscut 16 sept. 2014 9:43:57

Básicamente lo que Murch, dijo. Usted tiene que utilizar la clave privada para firmar la transacción.

Hay un punto en el que quiero añadir, sin embargo. Esto es posible enviar las monedas sin importar la clave privada en un equipo que está conectado a Internet. De hecho, esta es la manera en que se ejecuta correctamente exchange o billetera en línea de servicio debe mantener su almacenamiento en frío. Normalmente, los fondos se acaba de enviar a la dirección pública del almacenamiento en frío. Cuando llega el momento de enviar las monedas de almacenamiento en frío, la clave privada es importado en un equipo sin conexión, la transacción es generado y firmado, y la firma de la transacción es emitida entonces utilizar otro ordenador que esté conectado a la red). Esto aumenta la seguridad ya que evita que los atacantes tengan acceso a la clave privada, porque ellos simplemente no tienen manera de conectarse a la computadora fuera de línea en el que está almacenado.

+666
doss 27 ago. 2011 11:40:15

Recientemente me encontré con algunas ondas en un Android cartera llamado RippleWallet. Esta aplicación no existe en la Play Store y no recuerdo de donde lo descargué (tonto lo sé, pero fue hace 2 años y no me importaba mucho). Cuando trato de enviar estas ondas, la aplicación no responde y no hacer nada. Así sabes si estas monedas se han perdido para siempre? O tal vez yo pueda tener acceso a ellos mediante la búsqueda de la clave secreta usando adb o cualquier otro tipo de explorador de archivos? Yo no sé ni qué buscar..

Gracias de antemano,

PS : Esta es mi primera vez posteando, hágamelo saber si he violado alguna de las reglas.

+560
user286223 2 sept. 2018 12:03:44

Soy un trabajo en el sitio web donde la gente debe ser capaz de depósito BTC a sus saldos de cuenta y, a continuación, hacer algo con estas declaraciones. Me di cuenta de que necesito determinista de la cartera y generar dirección diferente para cada usuario (basado en el id de usuario) y, quizás por diferentes depósito (basado en el total de los usuarios de depósito conde - he leído que es mejor practicle usar 1 dirección 1 transacciones). Me gustaría ser capaz de notificar a los usuarios cuando vemos sin confirmar la transacción y cuando se confirmó (agregar la cantidad depositada al balance de los usuarios).

Depósito de flujo:

1.1 en rawtx comprobar si uno de salida de direcciones se encuentra en la base de datos ya que algunos usuarios de depósito de la dirección

1.2 si es que algunos usuarios de la dirección de crear nuevo depósito en DB con 0 confirmaciones y marca como pendiente

1.3 notificar al usuario que podemos ver su depósito, pero no está confirmado aún y él se BTC en su balance una vez que esta transacción llega a 6 confirmaciones

1.4 en rawblock obtener todos los depósitos con menos de 6 confirmaciones y consulta blockchain.info para obtener confirmaciones de recuento (véase el problema c).

1.5 actualización confirmationCount y si es >= 6 asignar monedas para equilibrar + notificar al usuario sobre el equilibrio de cambio a partir de ahora, su depósito será marcado como confirmado

Ahora los problemas:

a) Si el servidor se desconecta por cualquier razón (error de la aplicación/red de problemas/mantenimiento) potencially usuario todavía puede depositar monedas previamente copiado la dirección y no vamos a atrapar a ese transacción - por lo que nunca va a pasar 1.1. En ZMQ puedo detectar el problema de la red, mediante la comprobación de sequenceNumber (y de consulta RPC por falta de información?). Yo no puede consultar todas las direcciones de inicio de la aplicación para comprobar si había algún depósitos mientras que la aplicación fue tan meaby que debo persistir último bloque de identificación (conocido en mi app - actualizado después 1.4) en DB y en el inicio simplemente revise todos los nuevos bloques para la que ya han confirmado las transacciones (y realizar 1.1, 1.5) y comprobar mempool para todas las transacciones sin confirmar y realizar los pasos de 1.1 - 1.5.

b) Mi otra idea de resolver un) problema fue mantener el seguimiento de sincronizado de direcciones y usuarios en las aplicaciones de la memoria/redis. Después de que el usuario se conecta(registros/inicios de sesión) comprobar si el usuario ya estaba sincronizado en este curso de la vida (en este inicio de la aplicación del nodo index.js, matan, nodo inde.js sería de 2 vidas - espero que sepas a qué me refiero) si el usuario está sincronizado hacer nada y si no explorar todas las direcciones de usuario para todas las transacciones y comprobar si ya están añadidos a la DB. Y mark usuario como sincronizadas. A partir de ahora, 1.4, 1.5 debe tener cuidado de que el resto (?).

c) prefiero no uso de servicios externos, tales como blockchain.info y acaba de obtener información a través de RPC, pero toda la confirmación de comprobar el flujo parece complicado porque de borde casos como el doble de pasa/bloque de reorganización. También tuve tiempo duro con bitcoin-core RPC (es meaby fue porque por primera vez sincronizado bitcoind y luego se agregan los índices y todavía la sincronización).

d) Meaby hay algunos otros más seguro/fácil/escalable manera de hacer esto?

+522
sumon 26 jul. 2016 15:16:37

He comprado una suscripción VPN usando Tor y Bitcoins. El comercial del proveedor de servicios VPN no sé quién soy.

A continuación son mis preguntas:

  1. Podría alguien decirme si el envío de Bitcoins a través de Tor proporciona más anonimato que el envío de ellos a través de mi servicio de VPN?

  2. Es cierto que el envío de Bitcoins a través de Tor es muy lento?

  3. ¿Cuáles son las otras ventajas de enviar Bitcoins a través de Tor?

+511
NlightNFotis 25 jun. 2016 19:10:35

Estoy corriendo Bitcoin-Qt v0.8.6-beta y de la Armería 0.90-beta de OSX 10.9. Me he quedado estancada en "30 segundos" durante varias horas. Esto ha ocurrido dos veces ahora. Monitor de actividad muestra ninguna actividad de disco, pero ~90-120% de uso de cpu. Bitcoin-Qt es totalmente sincronizado y muestra una marca de verificación verde.

Se agradece cualquier ayuda, gracias!

EDITAR: El archivo de registro contiene un montón de mensajes similares a este:

-ERROR - 1394339952: (leveldb_wrapper.cpp:1145) Bloque de altura excede DupID tabla de búsqueda -ERROR - 1394339952: (leveldb_wrapper.cpp:1145) Bloque de altura excede DupID tabla de búsqueda -ADVERTIR - 1394339952: (BlockUtils.cpp:4617) Tx: d5fdcc541e25de1c -ERROR - 1394339952: (leveldb_wrapper.cpp:1145) Bloque de altura excede DupID tabla de búsqueda -ERROR - 1394339952: (leveldb_wrapper.cpp:1145) Bloque de altura excede DupID tabla de búsqueda -ADVERTIR - 1394339952: (BlockUtils.cpp:4617) Tx: 982051fd1e4ba744

screenshot

+487
Agdamella 22 abr. 2013 4:31:48

Hay varias soluciones en el mercado, y actualmente la más publicitada es, probablemente, BTC-Pagar. También apoya a los rayos, por lo que debe estar muy preparada para el futuro.

+475
Flatness 4 ene. 2013 14:37:41

de hecho, el consenso actual reglas se definen en el código de cliente bitcoin que se utiliza hoy en día por la mayoría. esta es la definición de la expresión "consenso". mañana podemos tener otra consenso de normas.

la página de la wiki https://en.bitcoin.it/wiki/Protocol_rules es bueno, pero no describe BIP16 y muchas otras mejoras del protocolo que ya se puso como consenso de normas (CSV, CLTV instrucciones de manejo, puede ser otra cosa)

algunas de las cosas mencionadas en la página de la wiki parece ser malo, por ejemplo, la transacción puede ser de menos de 100 bytes (tx mensajes destacados, regla #6)

+459
jun ndamjx 13 nov. 2019 23:55:05

bpub parece ser la extendida clave privada prefijo para el Blockcypher testnet.

Bitcoin direcciones y claves privadas suelen tener un prefijo para ayudar a diferenciar la red/tipo de clave.

El original xpub notación viene de BIP32, significado extendido de clave pública. Esta expandida en ypub con BIP49, y finalmente zpub con BIP49+ (utilizado en BIP84).

Varias monedas puede definir su propio prefijo simplemente alterando la bytes. Litecoin, por ejemplo, a menudo se utiliza la Ltub.

Funciona de la misma manera como cambiar el prefijo de la dirección, salvo que el cambio de cuatro bytes, en lugar de uno.

+324
SchizoidMan 17 dic. 2013 1:45:27

Inicialmente, "polvo" se efectuaron transacciones no estándar en cometer 8de9bb53:

Definir el polvo de la transacción salidas, y hacer que no estándar

+294
user56367 30 abr. 2013 16:07:13

Hay un papel de la cartera de un generador de un Bitcoin Rayo direcciones? ¿Cómo se puede generar en javascript?

+263
Lalit Gangwar 5 sept. 2019 6:25:41

La red de hash-la tasa es principalmente un reflejo de Bitcoin del tipo de cambio. Si el tipo de cambio sube, luego de minería de datos hash de la tasa de seguir. Es lag, pero la mayoría va a seguir la dirección y, en menor medida, la magnitud de la variación en la tasa de cambio.

Mientras que hay algunos de los que va a la mina, independientemente de la rentabilidad, cada bit adicional de la mezcla tiene el efecto de disminuir la rentabilidad-desplazando a aquellos que son de minería de datos para obtener un beneficio económico.

Así que en total, la red de hash tasa de sí mismo no dice mucho acerca de la moneda de la salud. Ahora para cada individuo que va y gasta $20K vale la pena en la minería de hardware, se puede asumir que un individuo cree en el futuro de bitcoin suficiente para el riesgo de ese tipo de inversión, si los beneficios fue la razón para que persigan la realización de esta empresa.

+188
jobe 3 jun. 2011 15:49:22

por qué a veces los bloques de 16 operaciones y, a veces, más de 2000? Lo he comprobado en https://blockexplorer.com/blocks. Gracias

+20
Fred Dickinson 28 may. 2015 21:37:53

Mostrar preguntas con etiqueta