Transacción usando demasiadas piezas

Las transacciones se han formado con demasiadas piezas de diferentes edades, lo que hace que la transacción tenga un tamaño enorme y, por lo tanto, requiera tarifas muy altas.

Pregunta

¿Hay alguna manera de reducir el tamaño de la transacción?

Historia

Tengo un sistema de pago que acepta bitcoins. Por lo tanto, mi cliente (el dueño de la tienda) recibe muchas transacciones de montos relativamente pequeños (cantidades de $30 a $400). Y de vez en cuando trata de mover lo que tiene en su dirección para cambiarlo por dólares. Usamos la API de Blockcypher. El problema es que cuando construimos la transacción, el script se forma con toda la suma de las diferentes piezas, indicando qué piezas formarán el pago, como yo lo veo, esto se hace usando la edad.

Un ejemplo de cómo estas piezas están en la lista de entrada está aquí:

"inputs": [
  {
    "prev_hash": "094be5d93ec5a5299fc8f64501855010649e3bb15d56f41ac9b5291d0XXXXX",
    "output_index": 0,
    "script": "483045022100d73dd1a8499caac0d237f5f2df17786722b4e50120756bc63c4f5f513b4f4244022019d20416762f21870e63fe035e2a0599217bc62323430ca428c2d1c8930b67270121035a3ce00ccf0701a28f124e634f4243ef2b40650aad5b0433eba4feXXXXXXX",
    "output_value": 1883692,
    "sequence": 4294967295,
    "addresses": [
      "1Lpua75bYTfeVUaEYDEkzY1vxwaVFvUNNr"
    ],
    "script_type": "pay-to-pubkey-hash",
    "age": 498654
  },
  {
    "prev_hash": "1917bb8a51642541f9d4b20beeec02a57193d5ede91e7fc79a6b7aXXXXXXX",
    "output_index": 0,
    "script": "483045022100d5f54e8b89fe080b16236a742bce0d4512f83d382a683bee96a25d5c1ff41a0802206844d81b0c2d909e4d893733a7f317caaa49a408f69c0414cee0685ac96883850121035a3ce00ccf0701a28f124e634f4243ef2b40650aad5b0433ebaXXXXXXXX",
    "output_value": 2470000,
    "sequence": 4294967295,
    "addresses": [
      "1Lpua75bYTfeVUaEYDEkzY1vxwaVFvUNNr"
    ],
    "script_type": "pay-to-pubkey-hash",
    "age": 498665
  },

¿Es realmente necesario indicar la antigüedad de las piezas utilizadas? ¿Hay alguna forma de reducir el tamaño del script de transacción? Esto está costando demasiado en honorarios a mi cliente. Estamos hablando de transacciones que cuestan cientos o más dólares.

Gracias de antemano.

Respuestas (1)

¿Es realmente necesario indicar la antigüedad de las piezas utilizadas?

La "edad" se muestra solo en la API de Blockcypher. La transacción en sí no tiene dicho campo.

¿Hay alguna manera de reducir el tamaño del script de transacción?

Sí. Usar segwit

¿Existe documentación sobre cómo crear transacciones SegWit?