Minting a Token
This documentation provides a high-level overview of how the protocol works. While the core concepts and flows are accurate, certain implementation details and design choices may evolve over time as the system matures. Please treat this as a conceptual guide rather than a source of exact specifications.
TLDR: Token issuers on Spark mint new tokens by generating token metadata and linking it to Spark outputs, called Token Transaction Outputs (TTXOs). These minting operations undergo validation by Spark Operators (SOs) to ensure compliance with issuance rules. Once validated, SOs store and track the token metadata as part of Spark state.
Minting on Spark is the process of generating new tokens and injecting them into circulation. On Spark, token minting follows a specific lifecycle that ensures the security of issued funds.
Here’s how it works: an Issuer generates a Spark Token Transaction, signs it with their Issuer Private Key, and broadcasts it to a Spark Operator group (also known as a Spark Entity). This group verifies the signatures, signs the transaction themselves, and then propagates it to the LRC-20 Node Gossip Network (more on this later).
Think of it like a Cashier’s Check. A bank locks up a set amount of funds and issues a signed check that can be redeemed at any time, risk-free. Similarly, a Spark Issuer pre-signs a transaction input, ensuring that it can always be redeemed on Bitcoin L1, with zero risk of the funds becoming unavailable at exit.