Author

Topic: PETICIÓN AYUDA FUNCIONALIDAD EXTRA DE BITCOIN CORE (Read 251 times)

legendary
Activity: 1548
Merit: 1037

He hecho un ejemplo y ha funcionado perfecto!!
Mil gracias!


sr. member
Activity: 494
Merit: 476
Si tienes las direcciones en un archivo llamado foo:

Code:
$ cat foo
1HDxecyWwdexueCVwufqKt25BLMr48LHVQ
19H4nrVGsLzVv88G2cUQ2urprQbaPGWmj4
1PvuoMFfUAKXxocVkDARVi9NgPqHwPTLCz
1MAuSFtppxDdMFLLZapB8ZwjdDwdK3Hcsw
1Bd9G8aDmz6hsKtdnGVNNrx7j2i4W7dZ2K
1LmxAj5C1Eq4jVSaVP5VUYvEJ5tBpdScj2
1PUSpaK8kGBD7zQzPCy13ZMrUbKtFtTNBH
19cvsYVDiYC9bWbwsnNnsfa1anzWPniyhg
1CP68Xw8gY9zvYf3yYgCJVM32Dp1g8aGsz
13NH4dLmgJ4XHwa44Ktiixc2PqGtFLHzGP
15L9LmujyGFD36XcJHwAopT2Dnwibb9fbx
1EySzhVCKiqJzQsgbVMWtj7yNQb2e5LGrg
16Lom6tfdYAuX4w2csa954Nwv4dfJ1k4Tq
1Kk7bJZ37WnYQ9Nh57RecH27iSyk5QZbXX
1EHSGTZu6X17uMC6qsgaadv6fNpkGS2bsT
1JfR7xRMU2pBDxdHbNoPWbwTcCm3Tq7PWf
1Q8BwF5Nx3jtY2eF5fMg4xCReJwoahaz5v
1FyctMpvNCbHhV5wfbyeEGeeuPCVvz2eHw
1GT413z4xoMBsjTnT6GX2tzkSPXUSN4n15
1GPmJwGKwKESySbS8SiZZFYwY113THXfCA

Esto te crea la llamada a bitcoin-cli correcta:

Code:
echo -n 'bitcoin-cli sendmany "" '\''{"'; echo -n $(xargs 

(hay que cambiar "1direccionfee" por una dirección tuya de donde restar la comisión; de lo contrario se resta de todas las 20 salidas y a la gente le llega menos de 0.02)

Code:
$ echo -n 'bitcoin-cli sendmany "" '\''{"'; echo -n $(xargs bitcoin-cli sendmany "" '{"1HDxecyWwdexueCVwufqKt25BLMr48LHVQ":0.02, "19H4nrVGsLzVv88G2cUQ2urprQbaPGWmj4":0.02, "1PvuoMFfUAKXxocVkDARVi9NgPqHwPTLCz":0.02, "1MAuSFtppxDdMFLLZapB8ZwjdDwdK3Hcsw":0.02, "1Bd9G8aDmz6hsKtdnGVNNrx7j2i4W7dZ2K":0.02, "1LmxAj5C1Eq4jVSaVP5VUYvEJ5tBpdScj2":0.02, "1PUSpaK8kGBD7zQzPCy13ZMrUbKtFtTNBH":0.02, "19cvsYVDiYC9bWbwsnNnsfa1anzWPniyhg":0.02, "1CP68Xw8gY9zvYf3yYgCJVM32Dp1g8aGsz":0.02, "13NH4dLmgJ4XHwa44Ktiixc2PqGtFLHzGP":0.02, "15L9LmujyGFD36XcJHwAopT2Dnwibb9fbx":0.02, "1EySzhVCKiqJzQsgbVMWtj7yNQb2e5LGrg":0.02, "16Lom6tfdYAuX4w2csa954Nwv4dfJ1k4Tq":0.02, "1Kk7bJZ37WnYQ9Nh57RecH27iSyk5QZbXX":0.02, "1EHSGTZu6X17uMC6qsgaadv6fNpkGS2bsT":0.02, "1JfR7xRMU2pBDxdHbNoPWbwTcCm3Tq7PWf":0.02, "1Q8BwF5Nx3jtY2eF5fMg4xCReJwoahaz5v":0.02, "1FyctMpvNCbHhV5wfbyeEGeeuPCVvz2eHw":0.02, "1GT413z4xoMBsjTnT6GX2tzkSPXUSN4n15":0.02, "1GPmJwGKwKESySbS8SiZZFYwY113THXfCA":0.02}' 1 "" '["1direccionfee"]'

Eso lo pones en el cron, y a tirar. Mejor hacer una prueba antes.

Pero que conste que la solución del locktime me parece la más elegante.
legendary
Activity: 1548
Merit: 1037

Muchas gracias, en principio parece fácil
Haré una prueba con fracciones y luego ya la definitiva

Te contaré!!

legendary
Activity: 1623
Merit: 1608
-Tengo 1 bitcoin (por ejemplo) en un monedero (El que sea mas fácil para hacerlo).
-El 20 de Octubre del 2018 a las 12:00h del mediodía hora peninsular, quiero mandar 20 transacciones de 0,02 bitcoins (En total 0.40 bitcoins + el Fee de los mineros) a las siguiente 20 addresess (Cuyas clave privada la tengo, obvio):

1HDxecyWwdexueCVwufqKt25BLMr48LHVQ
19H4nrVGsLzVv88G2cUQ2urprQbaPGWmj4
1PvuoMFfUAKXxocVkDARVi9NgPqHwPTLCz
1MAuSFtppxDdMFLLZapB8ZwjdDwdK3Hcsw
1Bd9G8aDmz6hsKtdnGVNNrx7j2i4W7dZ2K
1LmxAj5C1Eq4jVSaVP5VUYvEJ5tBpdScj2
1PUSpaK8kGBD7zQzPCy13ZMrUbKtFtTNBH
19cvsYVDiYC9bWbwsnNnsfa1anzWPniyhg
1CP68Xw8gY9zvYf3yYgCJVM32Dp1g8aGsz
13NH4dLmgJ4XHwa44Ktiixc2PqGtFLHzGP
15L9LmujyGFD36XcJHwAopT2Dnwibb9fbx
1EySzhVCKiqJzQsgbVMWtj7yNQb2e5LGrg
16Lom6tfdYAuX4w2csa954Nwv4dfJ1k4Tq
1Kk7bJZ37WnYQ9Nh57RecH27iSyk5QZbXX
1EHSGTZu6X17uMC6qsgaadv6fNpkGS2bsT
1JfR7xRMU2pBDxdHbNoPWbwTcCm3Tq7PWf
1Q8BwF5Nx3jtY2eF5fMg4xCReJwoahaz5v
1FyctMpvNCbHhV5wfbyeEGeeuPCVvz2eHw
1GT413z4xoMBsjTnT6GX2tzkSPXUSN4n15
1GPmJwGKwKESySbS8SiZZFYwY113THXfCA


Todas las transacciones deben ser hechas el mismo día a la misma hora y dentro de los 60 segundos del minuto correspondiente (Entre las 12:00h y las 12:01h del día en cuestión).

Hay muchas formas de hacerlo, pero importar una clave privada en Bitcoin Core tarda mucho tiempo porque se tiene que evaluar la cadena de bloques en su totalidad.

Así que vamos a hacerlo desde el ordenador con Electrum. Por cierto, Electrum ha mejorado muchísimo ultimamente. Me encanta.

1. Menú "Tools" / "Send to many".
2. En la caja de texto "Pay to" se añaden tantas filas como destinatarios. En cada fila, el destinatario y los BTC a enviar separados por comas. En tu caso sería:

1HDxecyWwdexueCVwufqKt25BLMr48LHVQ, 0.02
19H4nrVGsLzVv88G2cUQ2urprQbaPGWmj4, 0.02
1PvuoMFfUAKXxocVkDARVi9NgPqHwPTLCz, 0.02
1MAuSFtppxDdMFLLZapB8ZwjdDwdK3Hcsw, 0.02
1Bd9G8aDmz6hsKtdnGVNNrx7j2i4W7dZ2K, 0.02
1LmxAj5C1Eq4jVSaVP5VUYvEJ5tBpdScj2, 0.02
1PUSpaK8kGBD7zQzPCy13ZMrUbKtFtTNBH, 0.02
19cvsYVDiYC9bWbwsnNnsfa1anzWPniyhg, 0.02
1CP68Xw8gY9zvYf3yYgCJVM32Dp1g8aGsz, 0.02
13NH4dLmgJ4XHwa44Ktiixc2PqGtFLHzGP, 0.02
15L9LmujyGFD36XcJHwAopT2Dnwibb9fbx, 0.02
1EySzhVCKiqJzQsgbVMWtj7yNQb2e5LGrg, 0.02
16Lom6tfdYAuX4w2csa954Nwv4dfJ1k4Tq, 0.02
1Kk7bJZ37WnYQ9Nh57RecH27iSyk5QZbXX, 0.02
1EHSGTZu6X17uMC6qsgaadv6fNpkGS2bsT, 0.02
1JfR7xRMU2pBDxdHbNoPWbwTcCm3Tq7PWf, 0.02
1Q8BwF5Nx3jtY2eF5fMg4xCReJwoahaz5v, 0.02
1FyctMpvNCbHhV5wfbyeEGeeuPCVvz2eHw, 0.02
1GT413z4xoMBsjTnT6GX2tzkSPXUSN4n15, 0.02
1GPmJwGKwKESySbS8SiZZFYwY113THXfCA, 0.02


3. Selecciona la comisión para el minero (Fee) con la barra deslizable.
4. ATENCIÓN: Ahora debes pulsar el botón Preview (NO PULSAR EL BOTÓN SEND, ya que entonces la transacción se publicaría inmediatamente).
Cuando se pulsa el botón Preview, aparece la descripción completa de la transacción, aún sin firmar y que aún no se ha enviado.
5. Pulsa el botón Sign. Así la transacción se firma con la(s) claves(s) privada(s) de tu wallet, pero aún no se envía.
6. Pulsa el botón Save. Así la transacción firmada aún no se envía pero aparecerá bajo la pestaña History.
7. Cuando sea el 20 de octubre del 2018 a las 12:00h del mediodía hora peninsular, te conectas a Electrum, haces doble click en la transacción que estará en la pestaña History, y pulsas el botón Broadcast.

El paso 7 requiere tu presencia activa a la hora exacta. Es una acción rápida, de unos pocos segundos: solo hay que pulsar el botón Broadcast. Todos los destinatarios reciben los BTC exactamente al mismo tiempo.

Si no te gusta este último paso y prefieres que la fecha esté programada de antemano, entonces necesitarás una máquina conectada a internet con cron o con cualquier otro scheduler. Los primeros 6 pasos serían los mismos. Si tienes interés, se podría buscar una forma más o menos sencilla de programar el cron.
legendary
Activity: 1548
Merit: 1037


Las soluciones que se han comentado aquí son excelentes: básicamente, crear una única raw transaction con 1000 salidas, con una comisión adecuada y programarlo en un cron o scheduler.

Otra solución que también puede valer es crear una raw transaction con un locktime igual al tiempo a partir del cual quieres que se incluya en un bloque. En ese caso, no necesitarías el cron; podrías lanzar la transacción inmediatamente y si el tiempo no está demasiado lejos en el futuro (quizás unos días), es probable que también termine por incluirse en la cadena de bloques.

Si en vez de Bitcoin Core, quieres hacerlo de manera visual e interactiva desde un navegador, puedes probar con esto:
https://coinb.in
Sección New Transaction, y marcando el locktime que prefieras.


Buenas!!
Tal como hemos hablado te especifico por aquí con mas exactitud lo que necesito a ver si con tu sabia explicación soy capaz (Los datos son un ejemplo).

-Tengo 1 bitcoin (por ejemplo) en un monedero (El que sea mas fácil para hacerlo).
-El 20 de Octubre del 2018 a las 12:00h del mediodía hora peninsular, quiero mandar 20 transacciones de 0,02 bitcoins (En total 0.40 bitcoins + el Fee de los mineros) a las siguiente 20 addresess (Cuyas clave privada la tengo, obvio):

1HDxecyWwdexueCVwufqKt25BLMr48LHVQ
19H4nrVGsLzVv88G2cUQ2urprQbaPGWmj4
1PvuoMFfUAKXxocVkDARVi9NgPqHwPTLCz
1MAuSFtppxDdMFLLZapB8ZwjdDwdK3Hcsw
1Bd9G8aDmz6hsKtdnGVNNrx7j2i4W7dZ2K
1LmxAj5C1Eq4jVSaVP5VUYvEJ5tBpdScj2
1PUSpaK8kGBD7zQzPCy13ZMrUbKtFtTNBH
19cvsYVDiYC9bWbwsnNnsfa1anzWPniyhg
1CP68Xw8gY9zvYf3yYgCJVM32Dp1g8aGsz
13NH4dLmgJ4XHwa44Ktiixc2PqGtFLHzGP
15L9LmujyGFD36XcJHwAopT2Dnwibb9fbx
1EySzhVCKiqJzQsgbVMWtj7yNQb2e5LGrg
16Lom6tfdYAuX4w2csa954Nwv4dfJ1k4Tq
1Kk7bJZ37WnYQ9Nh57RecH27iSyk5QZbXX
1EHSGTZu6X17uMC6qsgaadv6fNpkGS2bsT
1JfR7xRMU2pBDxdHbNoPWbwTcCm3Tq7PWf
1Q8BwF5Nx3jtY2eF5fMg4xCReJwoahaz5v
1FyctMpvNCbHhV5wfbyeEGeeuPCVvz2eHw
1GT413z4xoMBsjTnT6GX2tzkSPXUSN4n15
1GPmJwGKwKESySbS8SiZZFYwY113THXfCA


Todas las transacciones deben ser hechas el mismo día a la misma hora y dentro de los 60 segundos del minuto correspondiente (Entre las 12:00h y las 12:01h del día en cuestión).


Muchas gracias!!


legendary
Activity: 1623
Merit: 1608
Las soluciones que se han comentado aquí son excelentes: básicamente, crear una única raw transaction con 1000 salidas, con una comisión adecuada y programarlo en un cron o scheduler.

Otra solución que también puede valer es crear una raw transaction con un locktime igual al tiempo a partir del cual quieres que se incluya en un bloque. En ese caso, no necesitarías el cron; podrías lanzar la transacción inmediatamente y si el tiempo no está demasiado lejos en el futuro (quizás unos días), es probable que también termine por incluirse en la cadena de bloques.

Si en vez de Bitcoin Core, quieres hacerlo de manera visual e interactiva desde un navegador, puedes probar con esto:
https://coinb.in
Sección New Transaction, y marcando el locktime que prefieras.
legendary
Activity: 3346
Merit: 3125

A ver si me explico......

Tengo instalado el cliente Bitcoin Core o cualquier otro cliente.
Necesito cargar en ese monedero digamos 2 btc programarlo para que el día xx a la hora xx:xx envíe por ejemplo 0,001 btc a 1000 direcciones distintas ( 1btc mas fee ) que previamente le he indicado al cliente por un excell, un txt o como sea. Es importante que los envíos se hagan simultáneamente y en menos de 1 minuto.

Supongo que sera un programa/bot/plugin o lo que sea que entra en el cliente CORE y lo hace de forma automática.
Alguien sabe como? Se presta a ayudarme?.... Lo agradecería a miembros reputados de este foro.

Gracias por adelantado!




Si quieres que la transacción sea rápida, lo mejor va a ser enviar los btc a1000 direcciones distintas en la misma transacción.

Lo que yo te recomendaría es que armes la transacción de forma manual y que la tengas lista para publicarla en cualquier momento. como comenta womanderful, podrías usar cron para dejarle instrucciones a linux de el momento en el que quieras hacer el envío.

Hacer esto desde un archivo excel es complejo, pero nadie dijo que enviar btc a 1000 direcciones sería simple, así que buena suerte. Te dejo el enlace para que veas como construir una transacción de forma manual, espero te sea de ayuda:

https://stackoverflow.com/questions/38152663/bitcoin-how-to-build-raw-transaction
sr. member
Activity: 494
Merit: 476
programarlo para que el día xx a la hora xx:xx

Si estás en Linux, esta parte la hace cron.


envíe por ejemplo 0,001 btc a 1000 direcciones distintas ( 1btc mas fee ) que previamente le he indicado al cliente por un excell, un txt o como sea. Es importante que los envíos se hagan simultáneamente y en menos de 1 minuto.

Esto lo resuelves con una llamada al RPC sendmany mediante bitcoin-cli (https://bitcoin.stackexchange.com/questions/50834/how-to-do-sendmany-without-accounts#50840). Solo hay que masticarse antes el txt para transformarlo en la llamada correcta.
legendary
Activity: 1548
Merit: 1037

A ver si me explico......

Tengo instalado el cliente Bitcoin Core o cualquier otro cliente.
Necesito cargar en ese monedero digamos 2 btc programarlo para que el día xx a la hora xx:xx envíe por ejemplo 0,001 btc a 1000 direcciones distintas ( 1btc mas fee ) que previamente le he indicado al cliente por un excell, un txt o como sea. Es importante que los envíos se hagan simultáneamente y en menos de 1 minuto.

Supongo que sera un programa/bot/plugin o lo que sea que entra en el cliente CORE y lo hace de forma automática.
Alguien sabe como? Se presta a ayudarme?.... Lo agradecería a miembros reputados de este foro.

Gracias por adelantado!


Jump to: