├── .gitignore ├── README.md ├── concepts-contracts.md ├── concepts-enforcement.md ├── concepts-governance.md ├── concepts-instrument-management.md ├── concepts-instrument-transfers.md ├── concepts-messaging.md ├── concepts-operations.md ├── concepts-oracles.md ├── concepts-permissions.md ├── concepts-registers.md ├── concepts-rules.md ├── concepts-tokens.md ├── concepts-transactions.md ├── config └── toc-docs.yaml ├── example-concert-entry.md ├── example-family-trust.md ├── example-frequent-flyer-points.md ├── example-loyalty-points.md ├── example-movie-tickets.md ├── example-transportation-tickets.md ├── images ├── 028contract2.svg ├── 056bitcoin1.svg ├── IMAGE ARCHIVE │ ├── Confiscation.svg │ ├── Exchange-transfer-signature-request.svg │ ├── actions.svg │ ├── addition-action.svg │ ├── alteration-action.svg │ ├── asset-creation.png │ ├── asset-modification-by-vote.png │ ├── asset-modification-by-vote.vsdx │ ├── asset-modification-unilateral.png │ ├── atomic-swap-order-of-operations.svg │ ├── atomic-swap-process-order-of-operations.svg │ ├── atomic-swap-settlement-action.svg │ ├── atomic-swap-settlement-signature-request-message.svg │ ├── atomic-swap-settlement-signature-request.svg │ ├── atomic-swap-settlement.svg │ ├── atomic-swap-transfer-action.svg │ ├── atomic-swap-transfer-final.svg │ ├── atomic-swap-transfer-offer-message.svg │ ├── atomic-swap-transfer-offer.svg │ ├── atomic-swap-transfer-signature-request-message.svg │ ├── atomic-swap-transfer-signature-request.svg │ ├── atomic-swap-transfer-template.svg │ ├── ballot-cast-action.svg │ ├── ballot-counted-action.svg │ ├── basic-settlement-example.svg │ ├── basic-transfer-example.svg │ ├── bob-airmile-transfer-final.svg │ ├── bob-dianne-family-addition-action.svg │ ├── candy-bar-pre-paid-settlement.svg │ ├── candy-bar-pre-paid-transfer-final.svg │ ├── candy-bar-pre-paid-transfer-template.svg │ ├── candy-bar-settlement.svg │ ├── candy-bar-transfer-final.svg │ ├── candy-bar-transfer-template.svg │ ├── carols-receipt-message.svg │ ├── cinema-final-settlement.svg │ ├── cinema-settlement-template.svg │ ├── cinema-transfer-final.svg │ ├── cinema-transfer-template.svg │ ├── confiscation-action.svg │ ├── confiscation.JPG │ ├── contract-amendment-action.svg │ ├── contract-amendment-by-vote.png │ ├── contract-amendment-by-vote.svg │ ├── contract-amendment-unilateral.png │ ├── contract-amendment-unilateral.svg │ ├── contract-establishment.png │ ├── contract-establishment.svg │ ├── contract-formation-action-amendment.svg │ ├── contract-formation-action.svg │ ├── contract-formation-decision-tree.svg │ ├── contract-formation.svg │ ├── contract-offer-action-final.svg │ ├── contract-offer-action-template.svg │ ├── contract-offer-action.svg │ ├── contract.svg │ ├── dianne-edward-family-addition-action.svg │ ├── dianne-fran-family-addition-action.svg │ ├── diannes-booking-settlement-template.svg │ ├── diannes-booking-transfer-signed.svg │ ├── diannes-booking-transfer-template.svg │ ├── establishment-action.svg │ ├── exchange-order-of-operations.svg │ ├── exchange-settlement-example-final.svg │ ├── exchange-settlement-example.svg │ ├── exchange-transfer-example-final.svg │ ├── exchange-transfer-example-template.svg │ ├── exchange-transfer-example.svg │ ├── exchange-transfer-offer-message.svg │ ├── exchange-transfer-offer.svg │ ├── exchange-transfer-signature-request-message.svg │ ├── freeze-action.svg │ ├── image (4).png │ ├── initiative.JPG │ ├── instrument-creation-action-amendment.svg │ ├── instrument-creation-action.svg │ ├── instrument-creation.svg │ ├── instrument-definition-action.svg │ ├── instrument-enforcement-confiscation.svg │ ├── instrument-enforcement-freeze.svg │ ├── instrument-enforcement-reconciliation.svg │ ├── instrument-enforcement-thaw.svg │ ├── instrument-modification-action.svg │ ├── instrument-modification-by-vote.svg │ ├── instrument-modification-unilateral.svg │ ├── instrument-transfer-exchange.svg │ ├── instrument-transfer-send.svg │ ├── instrument-transfer-swap.svg │ ├── main-concepts-authorization-flags.svg │ ├── main-concepts-oracles.svg │ ├── main-concepts-transaction-overview.svg │ ├── message-action.svg │ ├── one-receiver-settlement-example.svg │ ├── one-receiver-transfer-example.svg │ ├── order-action-confiscation.svg │ ├── order-action-freeze.svg │ ├── order-action-reconciliation.svg │ ├── order-action-thaw.svg │ ├── proposal-action.svg │ ├── reconciliation-action.svg │ ├── rejection-action.svg │ ├── removal-action.svg │ ├── result-action.svg │ ├── static-contract-formation-action.svg │ ├── tbact-contract-formation.svg │ ├── tbact-contract-offer.svg │ ├── tbact-home-definition-action.svg │ ├── tbact-instrument-creation.svg │ ├── tbact-instrument-definition.svg │ ├── tbact-instrument-settlement.svg │ ├── tbact-instrument-transfer.svg │ ├── thaw-action.svg │ ├── two-receiver-settlement-example.svg │ ├── two-receiver-transfer-example.svg │ ├── two-receivers-settlement-example.svg │ ├── two-receivers-transfer-example.svg │ ├── vote-action.svg │ └── vote-order-of-operations.svg ├── addition-action.svg ├── alteration-action.svg ├── atomic-swap-process-order-of-operations.svg ├── atomic-swap-settlement-action.svg ├── atomic-swap-settlement-request-message-1.svg ├── atomic-swap-settlement-request-message.svg ├── atomic-swap-settlement-signature-request-message.svg ├── atomic-swap-transfer-action.svg ├── atomic-swap-transfer-offer-message.svg ├── atomic-swap-transfer-signature-request-message.svg ├── authorization-flags.svg ├── ballot-cast-action.svg ├── ballot-counted-action.svg ├── bob-airmile-settlement-final.svg ├── bob-airmile-transfer-final.svg ├── bob-dianne-family-addition-action.svg ├── candy-bar-final-transfer-1.svg ├── candy-bar-final-transfer.svg ├── candy-bar-pre-paid-settlement-1.svg ├── candy-bar-pre-paid-settlement.svg ├── candy-bar-pre-paid-transfer-final-1.svg ├── candy-bar-pre-paid-transfer-final.svg ├── candy-bar-pre-paid-transfer-template-1.svg ├── candy-bar-pre-paid-transfer-template.svg ├── candy-bar-settlement-1.svg ├── candy-bar-settlement.svg ├── candy-bar-transfer-final.svg ├── candy-bar-transfer-template-1.svg ├── candy-bar-transfer-template.svg ├── chevron-pointing-to-the-left-1.svg ├── chevron-pointing-to-the-left-2.svg ├── chevron-pointing-to-the-left.svg ├── cinema-final-settlement-1.svg ├── cinema-final-settlement.svg ├── cinema-settlement-template-1.svg ├── cinema-settlement-template.svg ├── cinema-transfer-final.svg ├── cinema-transfer-template.svg ├── concepts-oracles.svg ├── concert-venue-edison-settlement.svg ├── concert-venue-edison-transfer.svg ├── confiscation-action.svg ├── connection-1.svg ├── connection.svg ├── contract-address-change-action.svg ├── contract-amendment-action.svg ├── contract-formation-action-amendment.svg ├── contract-formation-action.svg ├── contract-formation-decision-tree.svg ├── contract-offer-action-template.svg ├── contract-offer-action.svg ├── dianne-edward-family-addition-action.svg ├── dianne-fran-family-addition-action.svg ├── diannes-booking-multi-user-signature-order-of-operations.svg ├── diannes-booking-multicontract-signature-order-of-operations.svg ├── diannes-booking-transfer-template.svg ├── diannes-holiday-final-settlement.svg ├── diannes-holiday-multi-contract-settlement-process.svg ├── display-1.svg ├── display-2.svg ├── display.svg ├── dominics-pizza-confiscation-action.svg ├── dominics-pizza-contract-formation.svg ├── dominics-pizza-contract-offer.svg ├── dominics-pizza-harry-settlement.svg ├── dominics-pizza-harry-transfer-order-of-operations.svg ├── dominics-pizza-harry-transfer.svg ├── dominics-pizza-jo-anne-settlement.svg ├── dominics-pizza-jo-anne-transfer.svg ├── dominics-pizza-loyalty-points-instrument-creation.svg ├── dominics-pizza-loyalty-points-instrument-definition.svg ├── dominics-pizza-order-confiscation.svg ├── dominics-pizza-slice-coupons-instrument-creation.svg ├── dominics-pizza-slice-coupons-instrument-definition.svg ├── edison-ticket-settlement.svg ├── edison-ticket-transfer.svg ├── establishment-action.svg ├── exchange-settlement-example.svg ├── exchange-transfer-example.svg ├── exchange-transfer-offer-message.svg ├── exchange-transfer-signature-request-message.svg ├── freeze-action.svg ├── instrument-1.svg ├── instrument-2.svg ├── instrument-3.svg ├── instrument-creation-action-amendment.svg ├── instrument-creation-action.svg ├── instrument-definition-action.svg ├── instrument-modification-action.svg ├── locomotive-1.svg ├── locomotive.svg ├── main-concepts-oracles.svg ├── message-action.svg ├── one-receiver-settlement-example.svg ├── one-receiver-transfer-example.svg ├── order-action-confiscation.svg ├── order-action-freeze.svg ├── order-action-reconciliation.svg ├── order-action-thaw.svg ├── order-of-operations.svg ├── private-line-final-transfer.svg ├── private-line-settlement.svg ├── private-line-transfer-template.svg ├── proposal-action.svg ├── reconciliation-action.svg ├── rejection-action.svg ├── removal-action.svg ├── result-action.svg ├── static-contract-formation-action.svg ├── tbact-contract-formation.svg ├── tbact-contract-offer.svg ├── tbact-instrument-creation.svg ├── tbact-instrument-definition.svg ├── tbact-instrument-settlement.svg ├── tbact-instrument-transfer.svg ├── terminal.svg ├── thaw-action.svg ├── transactions-overview.svg ├── turnstiles-1.svg ├── turnstiles-2.svg ├── turnstiles-3.svg ├── turnstiles-4.svg ├── turnstiles-5.svg ├── turnstiles.svg ├── two-receivers-settlement-example.svg ├── two-receivers-transfer-example.svg ├── vote-action.svg └── vote-order-of-operations.svg ├── intro-philosophy.md ├── intro-preface.md ├── protocol-actions.md ├── protocol-instruments.md ├── protocol-intro.md ├── protocol-messages.md └── protocol-resources.md /.gitignore: -------------------------------------------------------------------------------- 1 | tmp 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # docs 2 | Tokenized Protocol Documentation 3 | -------------------------------------------------------------------------------- /concepts-registers.md: -------------------------------------------------------------------------------- 1 | # Registers 2 | 3 | - [Introduction](#introduction) 4 | - [Register Actions](#register-actions) 5 | - [Establishment](#establishment) 6 | - [Addition](#addition) 7 | - [Alteration](#alteration) 8 | - [Removal](#removal) 9 | 10 | 11 | 12 | ## Introduction 13 | 14 | The Tokenized Protocol has a full set of register actions that are able to support a wide range of general purpose register functions such as whitelisting, blacklisting, and more. Registers do not need to be operated by Tokenized smart contracts. 15 | 16 | 17 | 18 | ## Register Actions 19 | 20 | There are four actions involved in the creation and management of a registry. 21 | 22 | - Establishment 23 | - Addition 24 | - Alteration 25 | - Removal 26 | 27 | 28 | 29 | ### Establishment 30 | 31 | The Establishment action establishes a register. 32 | 33 | ![Establishment action](https://raw.githubusercontent.com/tokenized/docs/master/images/establishment-action.svg?sanitize=true) 34 | Establishment action 35 | 36 | 37 | 38 | ### Addition 39 | 40 | The Addition action adds a record to the register. 41 | 42 | ![Addition action](https://raw.githubusercontent.com/tokenized/docs/master/images/addition-action.svg?sanitize=true) 43 | Addition action 44 | 45 | 46 | 47 | ### Alteration 48 | 49 | The Alteration action alters (amends/modifies) a record ont the register. 50 | 51 | ![Alteration action](https://raw.githubusercontent.com/tokenized/docs/master/images/alteration-action.svg?sanitize=true) 52 | Alteration action 53 | 54 | 55 | 56 | ### Removal 57 | 58 | The Removal action removes a record from the register. 59 | 60 | ![Removal action](https://raw.githubusercontent.com/tokenized/docs/master/images/removal-action.svg?sanitize=true) 61 | Removal action 62 | -------------------------------------------------------------------------------- /concepts-tokens.md: -------------------------------------------------------------------------------- 1 | # Tokens 2 | 3 | - [Introduction](#introduction) 4 | - [Token Types](#token-types) 5 | - [Token Identification](#token-identification) 6 | - [Token Fungibility](#token-fungibility) 7 | - [Modifying Tokens](#modifying-tokens) 8 | - [Token Balances](#token-balances) 9 | 10 | 11 | 12 | ## Introduction 13 | 14 | A token is defined, in this context, as a digital record of ownership that is managed by a smart contract. The term 'token' implies a sense of physicality in that it can only be in one place at one time. However, at a technical level, it is simply a digital ledger entry that records the ownership rights of a certain entity for a given instrument, and the subsequent changes of ownership over time to the Bitcoin (BSV) ledger. The protocol doesn't recognize two owners of a token at the same point in time, and the smart contract governs this rule. 15 | 16 | With Tokenized tokens, the owner of the instrument is the entity that possesses the associated token by controlling the private keys to the Bitcoin public address that the token is held at. For the ownership of the instrument to change, the token must be transferred to the new owners. 17 | 18 | A token is created by a smart contract with an Instrument Creation action, at the request of the administration of a contract issuer by way of the Instrument Definition action. The administration specifies what rules/terms the smart contract uses to control the token(s) and the smart contract will adhere to these terms, but only if they are in accordance with the rules of the protocol. Tokens can only be transferred from one pkh to another by way of a Settlement, or Confiscation action published to the blockchain by the smart contract in response to a valid request action. Tokens can only be created or destroyed by an Instrument Creation action or a Reconciliation action. 19 | 20 | It is up to the administration to ensure that the rules under which tokens are managed and exchanged are in-line with the legal and regulatory requirements of the jurisdiction that they are subject to. The protocol provides enough expressiveness and functionality to cover all the administration's compliance requirements. 21 | 22 | 23 | 24 | ## Token Types 25 | 26 | A token is a concept, and as a concept the definition does not vary. A token is a token. However, the instrument that the token represents varies significantly with respect to the metadata that defines it. Instrument types are broadly defined by a 3-letter code called the Instrument Type, which is used by the wallet, smart contract and the rest of the ecosystem to inform them how the metadata is to be parsed and presented. 27 | 28 | The metadata is defined by the user and confirmed by the smart contract at the creation stage. The user can specify any metadata as long as it adheres to the protocol rules. 29 | 30 | 31 | 32 | ## Token Identification 33 | 34 | The identity of a token is centred around its Instrument ID (Instrument ID = `Instrument Type + base58(Instrument Code + checksum)`) which should be unique on the Bitcoin network. However, the Instrument ID is always associated with a particular contract address and the real identity of a token should always be referenced by the Contract Address + Instrument ID. Instrument ID's are generated by creating a Sha256 hash of the Contract's PKH and the index of the instrument. This is to ensure they are created by an administration in a random way such that there cannot exist multiple copies of the same Instrument ID except through extreme incidents of chance. The potential for fraud is minimised by ensuring users cannot be misled into buying the wrong instrument with a copied Instrument ID. 35 | 36 | The Instrument ID is generated by the issuer's wallet when the tokens are created and is used by the token until they are destroyed. The Instrument ID can never be changed and attempts to do so will be rejected by the smart contract. 37 | 38 | 39 | 40 | ## Token Fungibility 41 | 42 | Fungibility is the property of a good or a commodity whose individual units are essentially interchangeable, where each unit is indistinguishable from any other unit. Tokens that are created with the same instrument ID are considered fungible tokens. These tokens can be exchanged and will carry the same value as any other token created in the same instrument ID. 43 | 44 | It is possible to create non-fungible tokens by creating tokens that have unique instrument IDs. These tokens can represent unique qualities such as seat numbers or other details for things such as in-game collectibles or other such items. 45 | 46 | 47 | 48 | ## Modifying Tokens 49 | 50 | Depending on the rules of the instrument and smart contract, most tokens can have their metadata modified using on-chain messages to the smart contract. 51 | 52 | Modifications can be made to any individual field (within rules) but modifications to the payload require the full data encapsulated within the payload to be overwritten. 53 | 54 | 55 | 56 | ## Token Balances 57 | 58 | Token balances are held at Bitcoin public key hashes (PKH). Token balances at a PKH are only incremented or decremented by the following actions: 59 | 60 | - [Instrument Creation](../protocol/actions#action-instrument-creation) 61 | - [Settlement](../protocol/actions#action-settlement) 62 | - [Confiscation](../protocol/actions#action-confiscation) 63 | - [Reconciliation](../protocol/actions#action-reconciliation) 64 | 65 | Settlement and Confiscation actions transfer tokens from a PKH(s) to another PKH(s). Tokens can only be created or destroyed by an Instrument Creation action or a Reconciliation action. A PKH can hold any number of tokens, up to the max value of uint64 per instrument (InstrumentID), for any number of instruments managed by an unlimited amount of smart contracts. 66 | -------------------------------------------------------------------------------- /config/toc-docs.yaml: -------------------------------------------------------------------------------- 1 | Intro: 2 | pages: 3 | intro/preface: "Preface" 4 | intro/philosophy: "Philosophy" 5 | 6 | Concepts: 7 | pages: 8 | concepts/contracts: "Contracts" 9 | concepts/transactions: "Transactions" 10 | concepts/operations: "Operations" 11 | concepts/rules: "Rules" 12 | concepts/tokens: "Tokens" 13 | concepts/instrument-management: "Instrument Management" 14 | concepts/instrument-transfers: "Instrument Transfers" 15 | concepts/governance: "Governance" 16 | concepts/enforcement: "Enforcement" 17 | concepts/permissions: "Permissions" 18 | concepts/oracles: "Oracles" 19 | concepts/registers: "Registers" 20 | concepts/messaging: "Messaging" 21 | 22 | Specification: 23 | pages: 24 | protocol/intro: "Introduction" 25 | protocol/actions: "Actions" 26 | protocol/instruments: "Instruments" 27 | protocol/messages: "Messages" 28 | protocol/resources: "Resources" 29 | 30 | Examples: 31 | pages: 32 | example/frequent-flyer-points: "Frequent Flyer" 33 | example/movie-tickets: "Movie Tickets" 34 | -------------------------------------------------------------------------------- /example-concert-entry.md: -------------------------------------------------------------------------------- 1 | # Concert entry 2 | 3 | - [Introduction](#introduction) 4 | - [Ticket Purchase Transfer](#ticket-purchase-transfer) 5 | - [Ticket Purchase Settlement](#ticket-purchase-settlement) 6 | - [4 Months Later](#4-months-later) 7 | - [Entry Pass Redemption Transfer](#entry-pass-redemption-transfer) 8 | - [Entry Pass Redemption Settlement](#entry-pass-redemption-settlement) 9 | 10 | 11 | 12 | ## Introduction 13 | 14 | Edison is very excited to hear that his favourite band from the late 90's is on it's way to his local entertainment venue and moves immediately to secure a ticket. He goes to the venue's booking interface and selects a VIP ticket including a back stage pass so that he can meet the band members after the show. 15 | 16 | 17 | 18 | ## Ticket Purchase Transfer 19 | 20 | The website provides a Transfer request template for his wallet that purchases a VIP pass in exchange for 0.451BSV. 21 | 22 | ![Venue's Ticket Transfer](https://raw.githubusercontent.com/tokenized/docs/master/images/concert-venue-edison-transfer.svg?sanitize=true) 23 | Edison's Ticket Transfer 24 | 25 | Edison adds several inputs to the template to reach the 0.451BSV amount needed, plus the cost of the settlement fees before sending the transaction back to the venue for signing. This request/response action is handled off-chain via an API. 26 | 27 | 28 | 29 | ## Ticket Purchase Settlement 30 | 31 | The venue's smart contract responds with a settlement, sending the token to Edison's wallet. 32 | 33 | ![Venue's Ticket Settlement](https://raw.githubusercontent.com/tokenized/docs/master/images/concert-venue-edison-settlement.svg?sanitize=true) 34 | Edison's Ticket Settlement 35 | 36 | 37 | 38 | ## 4 months later 39 | 40 | The big night has arrived, and Edison has arrived at the venue where the concert is taking place. He joins the queue for entry into the backstage area and opens his wallet ready to exchange his token for a pass. 41 | When he reaches the front of the queue, he is presented with an address to use to redeem his backstage pass. 42 | 43 | 44 | 45 | ## Entry Pass Redemption Transfer 46 | 47 | His wallet prepares a transfer action that requests the token be sent to the given address. The tokens are collected by the security company who are handling the venue entries on the night. 48 | 49 | ![Edison's Ticket Transfer](https://raw.githubusercontent.com/tokenized/docs/master/images/edison-ticket-transfer.svg?sanitize=true) 50 | Edison's Ticket Transfer 51 | 52 | 53 | 54 | ## Entry Pass Redemption Settlement 55 | 56 | The smart contract receives the transfer order and evaluates it for correctness before building a settlement response. It sends this directly to the network where it is detected by the security company's wallet. 57 | 58 | ![Edison's Ticket Settlement](https://raw.githubusercontent.com/tokenized/docs/master/images/edison-ticket-settlement.svg?sanitize=true) 59 | Edison's Ticket Settlement 60 | 61 | Edison is given his backstage pass which comes with a commemorative lanyard and is ushered into the waiting area to meet the band... 62 | -------------------------------------------------------------------------------- /images/028contract2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /images/056bitcoin1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/Confiscation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Order Action (Confiscate) Transactions 8 | 9 | 10 | 11 | 12 | Response Transaction (Result) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Result Action Payload 19 | 20 | 0: 21 | Dust 22 | Issuer 23 | 24 | 25 | 26 | 27 | N: 28 | Result Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | -InstrumentID-Target Address(es)-Deposit Address-Authority Name (Optional)-Authority Public Key-Signature Algorithm-Order Signature-Supporting Evidence 43 | 44 | 45 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/addition-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 27 | 28 | 29 | 31 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | Page-1 45 | 47 | 48 | 49 | 50 | Sheet.11 51 | Addition Action Transaction 52 | 53 | 54 | 55 | Addition Action Transaction 56 | 57 | Sheet.12 58 | Transaction Structure Input 1: Registry Output 1: Registry Va... 59 | 60 | 61 | 63 | 64 | 65 | 66 | Transaction StructureInput 1:RegistryOutput 1:RegistryValue 1:ChangeOther outputs: Addition action 71 | 72 | Sheet.13 73 | Addition Action Details: Identity details / message 74 | 75 | 76 | 78 | 79 | 80 | 81 | Addition ActionDetails:Identity details / message 83 | 84 | 85 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/alteration-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 27 | 28 | 29 | 31 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | Page-1 45 | 47 | 48 | 49 | 50 | Sheet.11 51 | Alteration Action Transaction 52 | 53 | 54 | 55 | Alteration Action Transaction 56 | 57 | Sheet.12 58 | Transaction Structure Input 1: Registry Output 1: Registry Va... 59 | 60 | 61 | 63 | 64 | 65 | 66 | Transaction StructureInput 1:RegistryOutput 1:RegistryValue 1:ChangeOther outputs: Alteration action 71 | 72 | Sheet.13 73 | Alteration Action Details: Alteration details / message 74 | 75 | 76 | 78 | 79 | 80 | 81 | Alteration ActionDetails:Alteration details / message 83 | 84 | 85 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/asset-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/asset-creation.png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/asset-modification-by-vote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/asset-modification-by-vote.png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/asset-modification-by-vote.vsdx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/asset-modification-by-vote.vsdx -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/asset-modification-unilateral.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/asset-modification-unilateral.png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/ballot-cast-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Ballot Cast Action Transaction 8 | 9 | 10 | 11 | 12 | Response Transaction (Ballot Cast) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Ballot Cast Action Payload 19 | 20 | 0: 21 | Response Costs 22 | Token Holder 23 | 24 | 25 | 26 | 27 | N: 28 | Vote Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | InstrumentIDTx-ID of VoteVote Choices 37 | 38 | 39 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/ballot-counted-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Ballot Counted Action Transaction 8 | 9 | 10 | 11 | 12 | Response Transaction (Ballot Counted) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Ballot Counted Action Payload 19 | 20 | 0: 21 | Dust 22 | Smart Contract 23 | 24 | 25 | 26 | 27 | N: 28 | Ballot Counted Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | InstrumentIDTx-ID of VoteVote Choices 37 | 38 | 39 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/confiscation.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/confiscation.JPG -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/contract-amendment-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | Contract Amendment Action Transaction 4 | 5 | 6 | 7 | 8 | Issuer 9 | Request Transaction (Contract Amendment) 10 | 11 | INPUTS 12 | OUTPUTS 13 | 0: 14 | VALUE 15 | 0: 16 | Smart Contract 17 | Contract Fees + Response Cost 18 | 19 | 20 | 21 | 22 | N: 23 | Contract Amendment Action 24 | N/A 25 | 26 | 27 | 28 | 29 | Contract Amendment Action Payload 30 | 31 | Not Shown: Change 32 | 33 | DETAILS 34 | -Change Issuer Address (optional)-Change Operator Address (optional)-Contract Revision-Amendments-Ref Tx-ID (only for governance related amendments) 39 | 40 | 41 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/contract-amendment-by-vote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/contract-amendment-by-vote.png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/contract-amendment-unilateral.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/contract-amendment-unilateral.png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/contract-establishment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/contract-establishment.png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/establishment-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 27 | 28 | 29 | 31 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | Page-1 45 | 47 | 48 | 49 | 50 | Sheet.11 51 | Establishment Action Transaction 52 | 53 | 54 | 55 | Establishment Action Transaction 56 | 57 | Sheet.12 58 | Transaction Structure Input 1: Registry Output 1: Registry Va... 59 | 60 | 61 | 63 | 64 | 65 | 66 | Transaction StructureInput 1:RegistryOutput 1:RegistryValue 1:ChangeOther outputs: Establisment action 71 | 72 | Sheet.13 73 | Establishment Action Details: Registry name / establishment m... 74 | 75 | 76 | 78 | 79 | 80 | 81 | Establishment ActionDetails:Registry name / establishment message 83 | 84 | 85 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/image (4).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/image (4).png -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/initiative.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tokenized/docs/bd495cc0b3bb5652f70b810bed6e46791c410651/images/IMAGE ARCHIVE/initiative.JPG -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/one-receiver-settlement-example.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | INPUTS 9 | OUTPUTS 10 | 0: Smart Contract 12 | 0: Issuer1: BillN: Settlement Action 15 | VALUE 16 | DustDustN/ANot shown: Operator Fee 20 | 21 | 22 | 23 | 24 | Settlement Action Payload 25 | Response Transaction (Settlement) 26 | Settlements 27 | Issuer: 0 tokens 28 | Bill: 100 tokens 29 | 30 | 31 | 32 | 33 | 34 | 35 | INSTRUMENTID: SHC1BvBMSEYstWetqTFn5Au4m4GFg7xJ... 36 | One Receiver Settlement Example 37 | 38 | 39 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/one-receiver-transfer-example.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Request Transaction (Transfer) 8 | 9 | INPUTS 10 | OUTPUTS 11 | 0: Issuer 12 | 0: Smart Contract1: Bill2: IssuerN: Transfer Action 16 | VALUE 17 | 18 | 19 | 20 | 21 | Transfer Action Payload 22 | Senders 23 | Issuer: 100 tokens 24 | Receivers 25 | Bill: 100 tokens 26 | INSTRUMENTID: SHC1BvBMSEYstWetqTFn5Au4m4GFg7xJ... 27 | 28 | Response Costs + Contract FeesDustChange (Minimum: Dust value)N/A 32 | 33 | 34 | 35 | 36 | 37 | One Receiver Transfer Example 38 | 39 | 40 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/order-action-confiscation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Order Action (Confiscate) Transactions 8 | 9 | 10 | 11 | 12 | Response Transaction (Result) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Result Action Payload 19 | 20 | 0: 21 | Dust 22 | Issuer 23 | 24 | 25 | 26 | 27 | N: 28 | Result Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | -InstrumentID-Target Address(es)-Deposit Address-Authority Name (Optional)-Authority Public Key-Signature Algorithm-Order Signature-Supporting Evidence 43 | 44 | 45 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/order-action-freeze.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Issuer 8 | Request Transaction (Order - Freeze) 9 | 10 | INPUTS 11 | OUTPUTS 12 | 0: 13 | VALUE 14 | Order (Freeze) Action Transaction 15 | 0: 16 | Smart Contract 17 | Contract Fees + Response Cost 18 | 19 | 20 | 21 | 22 | N: 23 | Order (Freeze) Action 24 | N/A 25 | 26 | 27 | 28 | 29 | Order (Freeze) Action Payload 30 | 31 | Not Shown: Change 32 | 33 | DETAILS 34 | -InstrumentID-Target Address(es)-Qty of tokens being frozen for each address-Name of the Authority who issued the order (optional)-Public Key of Authority (Optional)-Authority Signature (Optional)-Supporting Evidence-Freeze Period (optional)-Message 43 | 44 | 45 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/order-action-reconciliation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Order Action (Reconciliation) Transactions 8 | 9 | 10 | 11 | 12 | Response Transaction (Order - Reconciliation) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Order (Reconciliation) Action Payload 19 | 20 | 0: 21 | Dust 22 | Issuer 23 | 24 | 25 | 26 | 27 | N: 28 | Result Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | -InstrumentID-Target Address(es)-Reference TX-Bitcoin Dispersion-Message 39 | 40 | 41 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/order-action-thaw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Order (Thaw) Action Transaction 8 | 9 | 10 | 11 | 12 | Response Transaction (Thaw) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Order (Thaw) Action Payload 19 | 20 | 0: 21 | Response Costs 22 | Issuer 23 | 24 | 25 | 26 | 27 | N: 28 | Vote Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | -InstrumentID-Target Address(es)-Name of the Authority who issued the order (optional)-Public Key of Authority (Optional)-Authority Signature (Optional)-Supporting Evidence-Message 41 | 42 | 43 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/removal-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 27 | 28 | 29 | 31 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | Page-1 45 | 47 | 48 | 49 | 50 | Sheet.11 51 | Removal Action Transaction 52 | 53 | 54 | 55 | Removal Action Transaction 56 | 57 | Sheet.12 58 | Transaction Structure Input 1: Registry Output 1: Registry Va... 59 | 60 | 61 | 63 | 64 | 65 | 66 | Transaction StructureInput 1:RegistryOutput 1:RegistryValue 1:ChangeOther outputs: Removal action 71 | 72 | Sheet.13 73 | Removal Action Details: Removal details / message 74 | 75 | 76 | 78 | 79 | 80 | 81 | Removal ActionDetails:Removal details / message 83 | 84 | 85 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/result-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Result Action Transaction 8 | 9 | 10 | 11 | 12 | Response Transaction (Result) 13 | 14 | INPUTS 15 | OUTPUTS 16 | 0: 17 | VALUE 18 | Result Action Payload 19 | 20 | 0: 21 | Dust 22 | Smart Contract 23 | 24 | 25 | 26 | 27 | N: 28 | Result Action 29 | N/A 30 | Not Shown: Contract Fees 31 | Smart Contract 32 | DETAILS 33 | 34 | -Instrument being voted on (if Instrument Specific)-List of changes from Proposal-Tx-ID of Vote Action-Tallied results for all changes being voted on-Pass or Fail result as applicable to the type of vote 39 | 40 | 41 | -------------------------------------------------------------------------------- /images/IMAGE ARCHIVE/two-receivers-settlement-example.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | INPUTS 9 | OUTPUTS 10 | 0: Smart Contract 12 | 0: John (1)1: Bill2: Angela3: John (2)N: Settlement Action 17 | VALUE 18 | DustDustDustDustN/ANot shown: Contract Fee 24 | 25 | 26 | 27 | 28 | Settlement Action Payload 29 | Response Transaction (Settlement) 30 | Settlements 31 | John (1): 0 tokens 32 | Bill: 100 tokens 33 | Angela: 100 tokensJohn (2): 100 tokens 34 | 35 | 36 | 37 | 38 | 39 | 40 | INSTRUMENTID: SHC1BvBMSEYstWetqTFn5Au4m4GFg7xJ... 41 | Two Receivers Settlement Example 42 | 43 | 44 | -------------------------------------------------------------------------------- /images/addition-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Addition Transaction (Register Action) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Addition Action Payload 24 | 25 | 0: 26 | Change 27 | Register 28 | 29 | 30 | 31 | 32 | 1: 33 | Addition Action 34 | N/A 35 | Register 36 | DETAILS 37 | 38 | - Identity Details- Addition Message 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /images/alteration-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Alteration Transaction (Register Action) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Alteration Action Payload 24 | 25 | 0: 26 | Change 27 | Register 28 | 29 | 30 | 31 | 32 | 1: 33 | Alteration Action 34 | N/A 35 | Register 36 | DETAILS 37 | 38 | - Alteration Details- Entry Tx-ID- Alteration Message 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /images/atomic-swap-settlement-request-message.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Message Transaction (Settlement Request) 12 | 13 | INPUTS 14 | OUTPUTS 15 | 0: Smart Contract 1 16 | 0: Smart Contract 2N: Message Action 18 | VALUE 19 | Dust0Not shown: Change 22 | 23 | 24 | 25 | 26 | Message Action Payload 27 | 28 | MESSAGE TYPE: 1003 - Settlement Request 29 | Message Receivers 30 | Smart Contract 2 31 | 32 | MESSAGE PAYLOAD: Settlement Request 33 | 34 | 35 | -------------------------------------------------------------------------------- /images/ballot-cast-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Response Transaction (Ballot Cast) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Ballot Cast Action Payload 24 | 25 | 0: 26 | Response Costs 27 | Token Holder 28 | 29 | 30 | 31 | 32 | 2: 33 | Vote Action 34 | Bitcoin Change 35 | N/A 36 | Smart Contract 37 | DETAILS 38 | 39 | InstrumentIDTx-ID of VoteVote Choices 42 | 1: 43 | Token Holder 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /images/ballot-counted-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Response Transaction (Ballot Counted) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Ballot Counted Action Payload 24 | 25 | 0: 26 | Dust 27 | Smart Contract 28 | 29 | 30 | 31 | 32 | 2: 33 | Ballot Counted Action 34 | Contract Fees 35 | N/A 36 | Smart Contract 37 | DETAILS 38 | 39 | InstrumentIDTx-ID of VoteVote Choices 42 | 1: 43 | Contract Operator 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /images/bob-dianne-family-addition-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | INPUTS 9 | OUTPUTS 10 | 0: 11 | VALUE 12 | 13 | 14 | 15 | 16 | Addition Action Payload 17 | 18 | 0: 19 | Airline Points Registry 20 | Change 21 | 22 | 23 | 24 | 25 | N: 26 | Addition Action 27 | N/A 28 | Airline Points Registry 29 | Oracle Transaction (Addition) 30 | Details: 31 | 32 | Establish Familial Link between:Bob’s Airline AccountDianne’s Airline Account 35 | 36 | 37 | -------------------------------------------------------------------------------- /images/chevron-pointing-to-the-left-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /images/chevron-pointing-to-the-left-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /images/chevron-pointing-to-the-left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /images/connection-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /images/connection.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /images/dianne-edward-family-addition-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | INPUTS 9 | OUTPUTS 10 | 0: 11 | VALUE 12 | 13 | 14 | 15 | 16 | Addition Action Payload 17 | 18 | 0: 19 | Airline Points Registry 20 | Change 21 | 22 | 23 | 24 | 25 | N: 26 | Addition Action 27 | N/A 28 | Airline Points Registry 29 | Oracle Transaction (Addition) 30 | Details: 31 | 32 | Establish Familial Link between:Dianne’s Air Mile AccountEdward’s Air Mile Account 35 | 36 | 37 | -------------------------------------------------------------------------------- /images/dianne-fran-family-addition-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | INPUTS 9 | OUTPUTS 10 | 0: 11 | VALUE 12 | 13 | 14 | 15 | 16 | Addition Action Payload 17 | 18 | 0: 19 | Airline Points Registry 20 | Change 21 | 22 | 23 | 24 | 25 | N: 26 | Addition Action 27 | N/A 28 | Airline Points Registry 29 | Oracle Transaction (Addition) 30 | Details: 31 | 32 | Establish Familial Link between:Dianne’s Air Mile AccountFran's Air Mile Account 35 | 36 | 37 | -------------------------------------------------------------------------------- /images/display-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /images/display-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /images/display.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /images/dominics-pizza-contract-formation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Dominic's Pizza Contract 8 | Response Transaction (Contract Formation) 9 | 10 | INPUTS 11 | OUTPUTS 12 | 0: 13 | VALUE 14 | 0: 15 | Dominic's Pizza 16 | Dust 17 | 18 | 19 | 20 | 21 | 1: 22 | Tokenized 23 | Contract Fees 24 | 25 | 26 | 27 | 28 | Contract Offer Action Payload 29 | 30 | N/A 31 | 32 | DETAILS 33 | Details from Contract Offer TransactionRevision = 0Timestamp 37 | 2: 38 | Contract Formation Action 39 | 40 | 41 | -------------------------------------------------------------------------------- /images/dominics-pizza-loyalty-points-instrument-creation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Dominic's Pizza Contract 8 | Response Transaction (Instrument Creation) 9 | 10 | INPUTS 11 | OUTPUTS 12 | 0: 13 | VALUE 14 | 0: 15 | Dominic's Pizza 16 | Dust 17 | 18 | 19 | 20 | 21 | 2: 22 | Instrument Creation Action 23 | Contract Fee 24 | 25 | 26 | 27 | 28 | Instrument Creation Action Payload 29 | 30 | N/A 31 | 32 | DETAILS 33 | Details from Instrument Definition TransactionRevision = 0Timestamp 37 | 0: 38 | Tokenized 39 | 40 | 41 | -------------------------------------------------------------------------------- /images/dominics-pizza-order-confiscation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Request Transaction (Order - Confiscate) 12 | 13 | INPUTS 14 | OUTPUTS 15 | VALUE 16 | Order (Confiscate) Action Payload 17 | 18 | 0: 19 | Contract Fees + Response Cost 20 | Dominic's Pizza (1) 21 | 22 | 23 | 24 | 25 | 2: 26 | Order Action 27 | Bitcoin Change 28 | N/A 29 | Dominic's Pizza Contract 30 | DETAILS 31 | 32 | InstrumentID: INSTRUMENTID: LOYef5fd20FF3Dka2... Loyalty PointsTarget Address(es): Jo-Anne (3) (20 points)Deposit Address: Dominic's PizzaMessage: Incorrect number of points given sorry!!! 36 | 0: 37 | 38 | 39 | -------------------------------------------------------------------------------- /images/dominics-pizza-slice-coupons-instrument-creation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Dominic's Pizza Contract 8 | Response Transaction (Instrument Creation) 9 | 10 | INPUTS 11 | OUTPUTS 12 | 0: 13 | VALUE 14 | 0: 15 | Dominic's Pizza 16 | Dust 17 | 18 | 19 | 20 | 21 | 2: 22 | Instrument Creation Action 23 | Contract Fee 24 | 25 | 26 | 27 | 28 | Instrument Creation Action Payload 29 | 30 | N/A 31 | 32 | DETAILS 33 | Details from Instrument Definition TransactionRevision = 0Timestamp 37 | 1: 38 | Tokenized 39 | 40 | 41 | -------------------------------------------------------------------------------- /images/establishment-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Establishment Transaction (Register Action) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Establishment Action Payload 24 | 25 | 0: 26 | Change 27 | Register 28 | 29 | 30 | 31 | 32 | 1: 33 | Establishment Action 34 | N/A 35 | Register 36 | DETAILS 37 | 38 | - Register Name- Establishment Message 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /images/instrument-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /images/instrument-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /images/instrument-3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /images/locomotive-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /images/locomotive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /images/order-action-reconciliation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Request Transaction (Order - Reconciliation) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Order (Reconciliation) Action Payload 24 | 25 | 0: 26 | Contract Fees + Response Cost 27 | Adminstration 28 | 29 | 30 | 31 | 32 | 2: 33 | Order Action 34 | Bitcoin Change 35 | N/A 36 | Smart Contract 37 | DETAILS 38 | 39 | - InstrumentID- Target Address(es)- Reference TX- Bitcoin Dispersion- Message 44 | 1: 45 | Administration 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /images/removal-action.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Removal Transaction (Register Action) 18 | 19 | INPUTS 20 | OUTPUTS 21 | 0: 22 | VALUE 23 | Removal Action Payload 24 | 25 | 0: 26 | Change 27 | Register 28 | 29 | 30 | 31 | 32 | 1: 33 | Removal Action 34 | N/A 35 | Register 36 | DETAILS 37 | 38 | - Removal Details- Entry Tx-ID- Removal Message 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /images/turnstiles-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /images/turnstiles-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /images/turnstiles-3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /images/turnstiles-4.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /images/turnstiles-5.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /images/turnstiles.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /intro-preface.md: -------------------------------------------------------------------------------- 1 | # Preface 2 | 3 | - [Introduction](#introduction) 4 | - [Key Components](#key-components) 5 | - [Specification](#specification) 6 | - [Support](#support) 7 | 8 | 9 | 10 | ## Introduction 11 | 12 | The Tokenized Protocol is an open source application layer protocol that utilizes the Bitcoin SV network for passing and storing messages. The protocol focuses on data (aka records) captured from financial, legal, commercial and accounting activities for all types of legal entities and ownership structures. It aims to replace current financial messaging (eg. bank to bank (SWIFT), security exchanges (FIX) and fiat payment systems (credit cards, e-money, etc.), as well as other EDI standards like X12, etc. However, it also provides the framework for issuing any kind of token for any type of use case. 13 | 14 | The protocol utilizes smart contracts, tokens, registers and messages as the building blocks to provide users and issuers with all of the tools required to manage their financial and legal lives in a more secure, private and low-cost way - while at the same time providing a streamlined user experience. 15 | 16 | This documentation is intended to provide a clear and concise set of information on how to use the protocol. It also acts as the reference material for developers who wish to build an implementation. 17 | 18 | 19 | 20 | ### Key Components 21 | 22 | The Tokenized Protocol operates using two key components: 23 | 24 | - [Smart Contract](https://github.com/tokenized/smart-contract): An autonomous agent service, hosted by the issuer or a third party provider on behalf of the issuer. 25 | 26 | - [Tokenized Wallet](https://github.com/tokenized/wallet): An enhanced bitcoin wallet, operated by the user or administration of the contract issuer. 27 | 28 | The smart contract and wallet both operate with the Tokenized Protocol and interact by [broadcasting actions](../protocol/actions) to the Bitcoin network. These actions are commonly prepared in the form of a request, coming from the wallet, and a response, from the smart contract — each providing a cryptographically proven event between two or more parties, solidified in the immutable blockchain. 29 | 30 | 31 | 32 | ## Specification 33 | 34 | The Tokenized Protocol defines action messages that provide various methods for common use cases, such as governance and compliance. A unique aspect of the Tokenized Protocol is its precise alignment with real-world scenarios and coverage of the various requirements when conducting business. 35 | 36 | An example of an action message is the creation of an instrument token, prepared as an [Instrument Definition](../protocol/actions#action-instrument-definition) request and sent by the wallet to the smart contract. The Instrument Definition contains all the information about the instrument, including the instrument class, the number of issued tokens, a unique code, metadata and other details. 37 | 38 | Each action message contains many data fields that are populated to form the final protocol message, sent across the Bitcoin network. The message contents include the value of each data field concatenated together. This method provides maximum efficiency for storing the data on the blockchain. 39 | 40 | It is crucial when converting these messages that every implementation uses the same specification. Find the source of truth for the Tokenized specification via the Tokenized GitHub repository: 41 | 42 | - [Tokenized Protocol Specification](https://github.com/tokenized/specification) 43 | 44 | This repository is a reference for the Tokenized Protocol structure. All definitions for message types and instrument types are stored in YAML to be parsed and compiled into various programming languages. 45 | 46 | 47 | 48 | ## Support 49 | 50 | The Tokenized team are available to give support for protocol-specific queries and requests. If the protocol does not satisfy your needs, use case, or you have constructive feedback, then please feel free to contact us or reach out through our community resources ([Telegram](https://t.me/joinchat/TWC9JGKemPMwZjc1), [Twitter](https://twitter.com/Tokenized_com) or our [forum](https://forum.tokenized.com/)). 51 | --------------------------------------------------------------------------------