[BIP Proposal] Token Protocol Specification



Summary:

A proposal has been made by Luca Venturini for a protocol to manage digital assets (tokens) on top of the Bitcoin blockchain. The idea is to enable a semantic layer that permits reading bitcoin transactions as operations related to tokens, allowing for plausible deniability while permitting public auditability on each issued token. It allows for atomic buy and sell transactions between tokens and Bitcoin, and between different types of tokens. Tokens are not burned or deleted, and every Bitcoin address contains many types of tokens.The article describes a series of transactions involving the issuance and transfer of tokens using Bitcoin. Alice generates tokens to be distributed to various recipients, with the newly generated token type named after the transaction hash or one of the addresses involved. Bob then gives shares of the company to his husband, Giacomo, through a new transaction that spends the output of the previous issuance transaction. Daniel later sells three of his shares to Frank in an atomic transaction that gives bitcoins to Daniel and shares to Frank.The protocol for token issuances is also defined, highlighting that every Bitcoin transaction is an issuance of tokens except for transactions with only one output or the first output being a cut. Power of Continuation (POC) is given to outputs spent in transactions that continue the issuance of the same type of tokens. Token transfers are also discussed, with tokens assigned to outputs based on their signal value.The article discusses the process of making atomic exchange transactions using a Bitcoin wallet that allows coin selection. It explains how cross token atomic transactions work and outlines the inputs and outputs of such transactions. There are technical notes on consolidated wallets, UTXOs, and transactions, and a reference implementation will be included when the protocol is reviewed and accepted by the community.


Updated on: 2023-06-12T18:11:56.672845+00:00