¿Qué significan "prev_out" y "n" en los datos API de blockchain.info?

Al obtener información sobre transacciones con la API de blockchain.info, cada transacción contiene exactamente un objeto "prev_out", y dentro de ese objeto, "n" siempre es igual a 0 o 1.

¿Qué representan/significan estas cosas?

Respuestas (3)

Una transacción consta de un número de entradas y un número de salidas. Las salidas definen un script que debe ejecutarse para poder gastar las monedas en la salida. Las entradas proporcionan datos para ingresar en un script de salida para que se ejecute correctamente y para gastar las monedas en él.

Por lo tanto, una entrada de transacción debe poder hacer referencia a la salida que está dispuesto a gastar. Los resultados de una transacción están ordenados, por lo que se puede hacer referencia a un resultado especificando el ID de transacción en el que se ha definido y el índice que tiene en la lista de resultados especificados en esa transacción.

El prev_outcampo es el hash de la transacción (txid) y el nes el índice de la salida.

No es cierto que cada transacción contenga exactamente un prev_outvalor. Sin embargo, muchas transacciones lo hacen. Esto se debe a que muchas transacciones tienen solo una entrada. Sin embargo, debe saber que es posible tener múltiples entradas.

Una transacción típica de bitcoin se compone de entradas y salidas. Las monedas no gastadas de salidas anteriores son referenciadas por las entradas. Estas monedas se agrupan y luego se redistribuyen a las salidas, que ahora representan la misma cantidad de monedas no gastadas (menos las tarifas).

Las entradas hacen referencia a las monedas no gastadas por el hash de la transacción y el índice de la salida que se está canjeando.

Aunque puede tener tantas entradas y salidas como desee (en teoría, podría escribir una transacción que haga referencia a cada moneda existente y la redistribuya a diez millones de direcciones nuevas), en la práctica, la mayoría de las transacciones solo tienen una salida (la destinatario) o dos salidas (el destinatario y la dirección de "cambio"), por lo que "n" suele ser, pero no siempre, 0 o 1.

Por ejemplo, si observa https://blockchain.info/tx/017ee876b7078170066da40894b291e496dc09b7fb3edff4e2e7e8262545c7b1?format=json , puede ver que el valor "n" en el único diccionario "prev_out" es 170. Eso se debe a que esta transacción está gastando monedas que provienen de una transacción anterior con 170 o más salidas.

El tx anterior es un hash de una transacción anterior. El índice es el resultado específico de la transacción a la que se hace referencia. ver: https://en.bitcoin.it/wiki/Transactions