Conceptos básicos de la red

Tokens

Los tokens Stacks (STX) son los tokens nativos de la red Stacks. La fracción más pequeña es un micro-STX: 1.000.000 de micro-STX forman un Stacks (STX).

Las cantidades de STX deben almacenarse como enteros (de 8 bytes) y representan la cantidad de micro-STX.

Comisiones

Las comisiones se utilizan para incentivar a los mineros a confirmar transacciones en la blockchain de Stacks. La comisión se calcula en función de la tasa de comisión estimada y del tamaño de la transacción en bruto en bytes. La tasa de comisión es una variable determinada por el mercado. Para la testnet, está fijada en 1 micro-STX.

Nonces

Cada cuenta lleva un propiedad noncearrow-up-right que indica el número de transacciones procesadas para la cuenta dada. Los nonces son códigos de un solo uso, que comienzan en 0 para cuentas nuevas, y se incrementan en 1 en cada transacción.

Los nonces se añaden a todas las transacciones y ayudan a identificarlas para garantizar que las transacciones se procesen en orden y evitar el procesamiento duplicado.

circle-info

El mecanismo de consenso también asegura que las transacciones no se "reproduzcan" (replay) de dos maneras. Primero, los nodos consultan sus salidas de transacción no gastadas (UTXOs) para satisfacer sus condiciones de gasto en una nueva transacción. Segundo, los mensajes enviados entre nodos revisan los números de secuencia.

Cuando se construye una nueva transacción de transferencia de tokens, se debe obtener y establecer el nonce más reciente de la cuenta.

Cómo se detectan y resuelven las brechas de nonce

Las transacciones de Stacks deben ejecutarse estrictamente en orden de nonce. Cuando se envía una transacción con un nonce superior al esperado, la red no la rechaza de inmediato; en su lugar, registra la brecha y espera a que lleguen los nonces faltantes.

A continuación hay una explicación conceptual, con respuestas visuales de la API, de cómo se comporta el sistema cuando los nonces se envían fuera de orden.

1

Estado inicial (sin transacciones pendientes)

Interpretación

  • Todas las transacciones hasta el nonce 241 se han ejecutado

  • La red espera el nonce 242 siguiente

  • No hay transacciones esperando actualmente en el mempool

  • No existen brechas de nonce

2

Envío de un nonce futuro (245)

Interpretación

  • Una transacción con nonce 245 ahora está en el mempool

  • Nonces 242, 243, y 244 faltan

  • La ejecución no puede continuar hasta que se envíen esos nonces

  • possible_next_nonce refleja el nonce más alto observado + 1

3

Envío de una brecha parcial (243)

Interpretación

  • Nonce 243 ahora está presente en el mempool

  • Nonces 242 y 244 siguen faltando

  • La ejecución sigue bloqueada

  • La API distingue entre:

    • detected_mempool_nonces → presentes pero no ejecutados

    • detected_missing_nonces → requeridos pero aún no vistos

4

Rellenando más brechas (244)

Interpretación

  • Nonces 243 y 244 ambos están esperando en el mempool

  • Nonce 242 todavía falta

  • La ejecución permanece pausada en 241

5

Todos los nonces requeridos presentes (242)

Interpretación

  • Todos los nonces requeridos (242–245) ya están disponibles

  • No quedan brechas

  • La red puede ejecutar las transacciones secuencialmente

6

Tras completar la ejecución

Interpretación

  • Todas las transacciones pendientes se han ejecutado

  • El nonce de la cuenta ha avanzado a 245

  • El siguiente nonce válido ahora es 246

  • El estado del mempool está limpio de nuevo

Última actualización

¿Te fue útil?