Sharkaroo
Digital Securities + Blockchain Development

STANDARDS

Protocols & Standards

Standards make things play nice!

Most of the following standards are emerging and in-flux.

Many of the standards outlined here are ERC (Ethereum Request For Comments) and focused upon Ethereum , however many standards have been or are in the process of being forked to other blockchain frameworks such as Stellar or Corda.

ERC-20 FINALIZED

Base technical standard used for smart contracts on the Ethereum blockchain for implementing tokens. Github also see EIPS.
ERC-20 SHOULD NEVER BE USED DIRECTLY FOR DEVELOPMENT, IT HAS CRITICAL PROBLEMS, superseded by ERC-223, ERC-721, ERC-1400 and others which are backward compatible with ERC-20.

ERC-165

Creates a standard method to publish and detect what interfaces a smart contract implements. Github also see EIPS.

ERC-223

A superset of the ERC20 token standard. It is a step forward towards economic abstraction at the application/contract level allowing the use of tokens as first class value transfer assets in smart contract development. It is also a more safe standard as it doesn't allow token transfers to contracts that don't support token receiving and handling. Github.

ERC-621

Creates a means to increase and decrease token supply. Github.

ERC-721 FINALIZED

Non fungible (unique, irreplaceable, not interchangeable) ideal for unique digital assets such as video games. Provides basic functionality to track and transfer non fungible tokens. Github also see EIPS & erc721.org.

ERC-725

Allows for self-sovereign identity. Users should be able to own and manage their identity instead of ceding ownership of identity to centralized organizations. Describes proxy smart contracts that can be controlled by multiple keys and other smart contracts. ERC 735 is an associated standard to add and remove claims to an ERC 725 identity smart contract. These identity smart contracts can describe humans, groups, objects, and machines. Github also see erc725alliance.org

ERC-735

Deals with the management of claims made about an ERC 725 identity. It facilitates an emergence of a web of trust, by relying on the claims of trusted third parties about a given identity. Github also see HackerNoon.

ERC-777

Improves upon ERC-20 standard. This standard defines a universal registry smart contract where any address (contract or regular account) can register which interface it supports and which smart contract is responsible for its implementation. This standard keeps backward compatibility with ERC-165. GitHub, also see EIPS

ERC-827

Allows the token to execute a function in the receiver contract contract after the approval or transfer happens. The function is executed by the token proxy, a simple proxy which goal is to mask the msg.sender to prevent the token contract to execute the function calls itself. The ERC20 token standard is widely accepted but it only allows the transfer of value, ethereum users are available to transfer value and data on transactions, with these extension of the ERC20 token standard they will be able to do the same with ERC20 tokens. Note: current vulnerability vs. reentrancy attacks. Github.

ERC-884

Extension to ERC-20 to comply with Delaware General Corporate Law. Github also see Medium. Comment: could likely be easily adapted to encompass Wyoming, Montana and Colorado state-specific crypto laws, perhaps international jurisdictions.

ERC-888

Allows calculation and payment of dividends to the token holders. To calculate the total amount of dividends, the system determines the sum of funds on the smart-contract and divides it proportionately to the amount of tokens, which are held by system participants. Github.

ERC-1155 FINALIZED

Common interface for managing smart contracts that allow multiple tokens (fungible and non-fungible). A smart contract interface that can represent any number of Fungible and Non-Fungible token types. Existing standards such as ERC-20 require deployment of separate contracts per token type. The ERC-721 standard's token ID is a single non-fungible index and the group of these non-fungibles is deployed as a single contract with settings for the entire collection. In contrast, the ERC-1155 Multi Token Standard allows for each token ID to represent a new configurable token type, which may have its own metadata, supply and other attributes. Github, also see Enjin. Updated 6/17/2019 Formal Ethereum Standard.

ERC-1400

Standard developed by Polymath, formerly ST-20. Has since evolved into a suite of standards encompassing: ERC-1594: Core Security Token Standard, ERC-1410 Transparency to Different Ownership Categories, ERC-1644: A Method for Controlling and Managing Security Tokens and, ERC-1643 Document Management. Github.

ERC-1404

Tokensoft originated standard which provides restricted transfer of tokens based upon jurisdictional regulations including interjurisdictional transfers. GitHub also see erc1404.org and Medium.

ERC-1410

This standard sits under the ERC-1400 umbrella set of standards related to security tokens. Describes an interface to support an owners tokens being grouped into partitions, with each partition being represented by an identifying key and a balance. Tokens are operated upon at a partition granularity, but data about the overall supply of tokens and overall balances of owners is also tracked. GitHub.

ERC-1450

StartEngine standard to extend ERC-20 to that enables issuing tokens representing securities that are required to comply with one or more of the following Securities Act Regulations: Regulation Crowdfunding, Regulation D, and Regulation A. GitHub also see EIPS.

ERC-1462

Open source developed extension to ERC-20 standard token that provides compliance with securities regulations and legal enforceability. GitHub also see discussion.

ERC-1594

Sits under the ERC-1400 umbrella set of standards related to security tokens. Provides a standard to support off-chain injection of data into transfers / issuance / redemption and the ability to check the validity of a transfer distinct from it's execution. GitHub.

ERC-1643

This standard sits under the ERC-1400 umbrella set of standards related to security tokens. Provides a standard to support attaching documentation to smart contracts, specifically security token contracts in the context of ERC-1400. GitHub.

ERC-1644

Allows a token to transparently declare whether or not a controller can unilaterally transfer tokens between addresses. GitHub.

ERC-1820

This standard defines a universal registry smart contract where any address (contract or regular account) can register which interface it supports and which smart contract is responsible for its implementation. This standard keeps backward compatibility with ERC165. Github, also see EIPS.

ERC-1973

ERC-20 Extension initially developed by KrawlCat, for programmatically tiered token rewards, allows for efficient scaling by Dapps. GitHub also see EIPS.

DS Token

Securitize created a suite of protocols for all lifecycle stages of security tokens, including third-party integration. Github, also see White Paper and Medium.

R-Token

Created by Harbor; Smart Contracts for applying regulatory compliance to tokenized securities issuance and trading, full-stack environment. R-Token is a permissioned token on the Ethereum blockchain, enabling token transfers to occur if and only if they are approved by an on-chain Regulator Service. The Regulator Service can be configured to meet relevant securities regulations, Know Your Customer (KYC) policies, Anti-Money Laundering (AML) requirements, tax laws, and more. Implemented with the correct configurations, the R-Token standard makes compliant transfers possible, both on exchanges and person to person, in ICOs and secondary trades, and across jurisdictions. R-Token enables ERC-20 tokens to be used for regulated securities. Github, Medium, also see HackerNoon.

SRC-20

Swarmfund token standard: adhere to rules and restrictions - set by token issuers - that ensure that only qualified investors can participate in a token sale and that all secondary trading is regulatory compliant. ERC-1400 compliance in development. GitHub.

MAP (Market Access Protocol)

Swarmfund, superseeds SRC-20, backward compatible. This is the first comprehensive standard that Sharkaroo has encountered. MAP enables the flow of compliant securities transactions to be processed on the blockchain by determining how market access data is stored, read, written and audited in accordance with the SRC20 protocol — the cryptographic standard for security tokens. To compliantly sell, purchase, or transfer securities, a number of conditions, qualifications, and restrictions must effectively coordinate to permit a successful transaction. GitHub, also see Medium & STO Filter. Updated 6/17/2019 just updated Stellar (see Github).

Framework Proposed and Finalized Standards

Ethereum Improvement Proposals (EIPS)

Authentication

OAuth 2.0 & API Discovery

Google API Discovery Service to build client libraries, IDE plugins, and other tools that interact with Google APIs. The Discovery API provides a list of Google APIs and a machine-readable "Discovery Document" for each API.
Google API Client Libraries.

OAUTH 3.0

This standard has stalled out, last updated in 2017, however the work looks promising. GitHub.

Frameworks Sharkaroo is Working on, Prototyping, or Evaluating

Inter Exchange (Sharkaroo Standard)

Sharkaroo standard for multiple secondary market (cross border) to smart contract interaction. Currently under development.

Token Equity Convertible

Originally proposed by Pillar VC.

Digital Warrant

Debt to Equity Convertible Token

Debt Tokens

Fiat or Crypto Dividend or Debt Distribution

Revenue Sharing Tokens

Excellent Primers on STO & Smart Contract Standards

Krypital Group: From Github to See the Future of STO standards

Hackernoon: The Security Token Standard

Technologies to Watch

Updated: 5/31/2019

Hyperledger Transact: Hyperledger-based smart contract

Corda High Quality Liquid Asset (HQLA)

Updated: 6/17/2019

Interconnected Blockchain Environments

Polkadot

Cosmos

Potential ISO Standards…Finally!

International Token Standardization Association (ITSA)

Did we miss something important?

Sorry, let us know.

info@sharkaroo.io