In a narrow sense, a blockchain is a list of data records (called blocks) linked in chronological order using cryptography and a distributed ledger to prevent data tampering and forging. In a broad sense, the blockchain technology is a new distributed infrastructure and computing paradigm that uses the blockchain data structure to verify and store data, distributed node consensus algorithms to generate and update data, cryptography to ensure security of data transmission and access, and smart contracts formed by automated scripts to implement programming and operate data.
A distributed ledger is a database shared, replicated, and synchronized among network members. It records transactions between network participants, such as exchange of assets and data. Use of a distributed ledger eliminates the time and expenditure of ledger reconciliation.
- Decentralized and trustless: Data copies are stored on nodes. No central node or a third-party organization is responsible for data control.
- Collectively maintaining data consistency: Each participant uses a public key as its identity. Nodes independently check the data validity and collectively determine the data to be written to the ledger, by consensus.
- Reliable data, difficult to be tampered with: Data is stored in blocks. Each node stores all blocks. Data access permissions can be customized. Block chaining prevents data tampering.
A smart contract, also called chaincode, is a code logic that runs on a blockchain and is automatically executed under a specific condition. It is an important method for a user to implement service logic when using a blockchain. Thanks to the blockchain features, the execution results of smart contracts are reliable and cannot be forged or tampered with.
- Cheating is prevented. Smart contracts are automatically triggered when conditions are met. Execution results are verified independently.
- Results cannot be modified because the data is stored in the blockchain.
- Contract content is reliable because it is stored in the blockchain.
- Privacy is protected. Only specified participants can obtain contract content and data.
Peers are network nodes that maintains ledgers. One or more peers form a peer organization.
Orderers are nodes that order transactions into a block.
A channel isolates the ledger data of a transaction from other transaction data in a consortium blockchain to ensure confidentiality. Each channel can be considered as a sub-blockchain and corresponds to a specific ledger. The ledger in a channel is invisible to other channels.
A majority of independent participants in a system need to achieve consensus on a transaction or operation, for example, verification of double-spending transactions, verification of transaction validity, and the decision on whether to write verified data to the existing ledger.
A hash value of a digital content segment can be used to verify data integrity. Any minor modification to digital content leads to a significant change in the hash value. A qualified hash algorithm can be used to easily obtain a hash value from digital content, but it is almost impossible to calculate the original digital content by using a hash value.