Blockchain
The blockchain object represents essential information about a specific blockchain platform. This data structure includes details about the protocol, consensus algorithm, native token, and various technical specifications.
Data structure
| Field | Type | Description | Mandatory | Reference |
|---|---|---|---|---|
| protocol | string | Name of the blockchain protocol | Yes | |
| consensusAlgorithm | string | Consensus algorithm used by the blockchain | Yes | |
| consensusProtocol | string | Consensus protocol used by the blockchain | Yes | |
| nativeToken | CDID | Native token or cryptocurrency of the blockchain | Yes | object.digital.token |
| onchainGovernance | string | On-chain governance mechanism | No | |
| blockTime | string | Average time between blocks (in seconds) | Yes | |
| smartContracts | boolean | Indicates whether the blockchain supports smart contracts | Yes | |
| smartContractLanguage | array of strings | List of supported smart contract languages | No | |
| permissionless | boolean | Indicates whether the blockchain is permissionless | Yes | |
| nodeLanguage | array of strings | List of programming languages for node implementation | No | |
| website | string | Official website URL of the blockchain | No | |
| testnetLaunchDate | Date | Testnet launch date | No | |
| mainnetLaunchDate | Date | Mainnet launch date | No |
Example
"blockchain": {
"protocol": "Ethereum",
"consensusAlgorithm": "Ethash (PoW) / Beacon Chain (PoS)",
"consensusProtocol": "Proof of Work transitioning to Proof of Stake (Eth 2.0)",
"nativeToken": "4E1FCC73-5C7F-4D8F-965B-DB5F5B5B42D5",
"onchainGovernance": "N/A",
"blockTime": "15",
"smartContracts": true,
"smartContractLanguage": ["Solidity", "Vyper"],
"permissionless": true,
"nodeLanguage": ["Go", "Rust", "C++", "Python", "Java"],
"website": "https://ethereum.org",
"testnetLaunchDate": "2015-07-30",
"mainnetLaunchDate": "2015-07-30"
}