Stacks Improvement Proposals.
Every proposal to change Stacks, from a first idea to a ratified standard or protocol upgrade. Open one to read it, see how the advisory boards voted and join the discussion.
65 proposals · showing 1–15
- SIP-000RatifiedStacks Improvement Proposal Process
A Stacks Improvement Proposal (SIP) is a design document that provides information to the greater Stacks ecosystem's participants concerning the design of the Stacks blockchain and its ongoing operation. Each SIP shall provide a clear and concise description of features, processes, and/or standards for the Stacks blockchain and its operators to adopt, with sufficient details provided such that a reasonable practitioner may use the document to create an independent but compatible implementation of the proposed improvement. SIPs are the canonical medium by which new features are proposed and des…
MetaGovernanceJude Nelson, Ken Liao23 Jun 2020 - SIP-001RatifiedBurn Election
This proposal describes a mechanism for single-leader election using _proof-of-burn_ (PoB). Proof of burn is a mechanism for bootstrapping a new blockchain on top of an existing blockchain by rendering the tokens unspendable (i.e. "burning" them). Proof of burn is concerned with deciding which Stacks block miner (called _leader_ in this text) is elected for producing the next block, as well as deciding how to resolve conflicting transaction histories. The protocol assigns a score to each leader based on the fraction of tokens it burned, which is used to (1) probabilistically select the next le…
ConsensusTechnicalJude Nelson, Aaron Blankstein19 Dec 2018 - SIP-002RatifiedThe Clarity Smart Contract Language
In order to support applications which require validation of some pieces of their logic, we present a smart contracting language for use with the Stacks blockchain. This smart contracting language can be used on the Stacks blockchain to support programatic control over digital assets within the Stacks blockchain (e.g., BNS names, Stacks tokens, etc.) While application-chains may use any smart-contract language that they like, this smart contracting language's VM will be a part of blockstack-core, and, as such, any blockstack-core node will be able to validate application chains using this smar…
ConsensusTechnicalAaron Blankstein, Ludo Galabru29 Nov 2018 - SIP-003RatifiedStacks P2P Network
This SIP describes the design of the Stacks peer network, used for relaying blocks, transactions, and routing information. The document describes both the overall protocol design and rationale, and provides descriptions of each message's wire format (where applicable).
StandardTechnicalJude Nelson28 Feb 2019 - SIP-004RatifiedCryptographic Commitment to Materialized Views
Blockchain peers are replicated state machines, and as such, must maintain a materialized view of all of the state the transaction log represents in order to validate a subsequent transaction. The Stacks blockchain in particular not only maintains a materialized view of the state of every fork, but also requires miners to cryptographically commit to that view whenever they mine a block. This document describes a Merklized Adaptive Radix Forest (MARF), an authenticated index data structure for efficiently encoding a cryptographic commitment to blockchain state. The MARF's structure is part of t…
ConsensusTechnicalJude Nelson15 Jul 2019 - SIP-005RatifiedBlocks, Transactions, and Accounts
This SIP describes the structure, validation, and lifecycle for transactions and blocks in the Stacks blockchain, and describes how each peer maintains a materialized view of the effects of processing all state-transitions encoded in the blockchain's sequence of transactions. It presents the account model for the Stacks blockchain, and describes how accounts authorize and pay for processing transactions on the network.
ConsensusTechnicalJude Nelson, Aaron Blankstein23 Jul 2019 - SIP-006RatifiedClarity Execution Cost Assessment
This document describes the measured costs and asymptotic costs assessed for the execution of Clarity code. This will not specify the _constants_ associated with those asymptotic cost functions. Those constants will necessarily be measured via benchmark harnesses and regression analyses. Furthermore, the _analysis_ cost associated with this code will not be covered by this proposal. The asymptotic cost functions for Clarity functions are modifiable via an on-chain voting mechanism. This enables new native functions to be added to the language over time. This document also describes the memory…
ConsensusTechnicalAaron Blankstein, Reed Rosenbluth19 Oct 2019 - SIP-007RatifiedStacking Consensus
This SIP proposes a new consensus algorithm, called Stacking, that uses the proof-of-work cryptocurrency of an established blockchain to secure a new blockchain. An economic benefit of the Stacking consensus algorithm is that the holders of the new cryptocurrency can earn a reward in a base cryptocurrency by actively participating in the consensus algorithm. This SIP proposes to change the mining mechanism of the Stacks blockchain. SIP-001 introduced proof-of-burn (PoB) where a base cryptocurrency is destroyed to participate in mining of a new cryptocurrency. This proposal argues that a new mi…
ConsensusTechnicalMuneeb Ali, Aaron Blankstein +514 Jan 2020 - SIP-008RatifiedClarity Parsing and Analysis Cost Assessment
This document describes the measured costs and asymptotic costs assessed for parsing Clarity code into an abstract syntax tree (AST) and the static analysis of that Clarity code (type-checking and read-only enforcement). This will not specify the _constants_ associated with those asymptotic cost functions. Those constants will necessarily be measured via benchmark harnesses and regression analyses.
ConsensusTechnicalAaron Blankstein5 Mar 2020 - SIP-009RatifiedStandard Trait Definition for Non-Fungible Tokens
Non-fungible tokens or NFTs are digital assets registered on blockchain with unique identifiers and properties that distinguish them from each other. It should be possible to uniquely identify, own and transfer a non-fungible token. This SIP aims to provide a flexible and easy-to-implement standard that can be used by developers on the Stacks blockchain when creating their own NFTs. This standard only specifies a basic set of requirements, non-fungible tokens can have more features than what's specified in this standard.
StandardTechnicalFriedger Müffke, Muneeb Majeed10 Dec 2020 - SIP-010RatifiedStandard Trait Definition for Fungible Tokens
Fungible tokens are digital assets that can be sent, received, combined, and divided. Most forms of cryptocurrencies are fungible tokens. They have become a building block of almost all blockchains. This SIP aims to provide a flexible and easy-to-implement standard that can be used by developers on the Stacks blockchain when creating their own tokens.
StandardTechnicalHank Stoever, Pascal Belloncle25 Jan 2021 - SIP-011DraftThe buy-in-ustx Standard for non-custodial Marketplace traits
This standard aims to formalize a the commonly used traits to offer fungible or non-fungible tokens for sale, at a certain price in STX, from a non-custodial wallet.
StandardTechnicalwerner.btc (werner at stx.fan), Friedger +231 Dec 2022 - SIP-012RatifiedBurn Height Selection for a Network Upgrade to Introduce New Cost-Limits
The Stacks 2.0 blockchain artificially constrains block goodput in two consensus-critical ways: it assesses storage costs for lists based on their maximum length instead of actual length, and it constrains the number of indexed I/O operations well below what the reference implementation is capable of handling. Changing either of these is breaking change, which requires a network-wide upgrade. This SIP proposes executing a breaking change to not only address these two constraints, but also to update all Clarity cost functions to more accurately reflect their true performance. The breaking chang…
ConsensusGovernanceTechnicalAsteria, Aaron Blankstein +98 Oct 2021 - SIP-013RatifiedStandard Trait Definition for Semi-Fungible Tokens
Semi-Fungible Tokens, or SFTs, are digital assets that sit between fungible and non-fungible tokens. Fungible tokens are directly interchangeable, can be received, sent, and divided. Non-fungible tokens each have a unique identifier that distinguishes them from each other. Semi-fungible tokens have both an identifier and an amount. This SIP describes the SFT trait and provides a reference implementation.
StandardTechnicalMarvin Janssen12 Sept 2021 - SIP-015RatifiedStacks Upgrade of Proof-of-Transfer and Clarity
This SIP proposes a set of updates to three major areas of the Stacks blockchain: Stacking, the Proof-of-Transfer (PoX) consensus algorithm as implemented in the Stacks chain and originally proposed in SIP-007. The proposed changes improve the user and developer experience of participating in Stacking, and add support for new behaviors and PoX reward address types. Clarity, the smart contract language supported on the Stacks blockchain. The proposed changes fix bugs and add new native functions and global variables that improve its support for interacting with off-chain services and blockchain…
ConsensusTechnicalGovernanceEconomicsAaron Blankstein, Mike Cohen +121 Dec 2021
zadao.ai