“区块链就像一台魔法计算机,任何人都能够上传程序并自我执行,程序执行前和执行后的所有状态都公开可见,密码经济学为程序严格按照协议执行提供了机制保障。”——Vitalik Buterin
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本(分布式数据库)。
广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。
如何理解上述定义呢?
1)一个分布式的链接账本,每个账本就是一个“区块”;
2)基于分布式的共识算法来决定记账者;
3)账本内交易由密码学签名和哈希算法保证不可篡改;
4)账本按产生的时间顺序链接,当前账本含有上一个账本的哈希值,账本间的链接保证不可篡改;
5)所有交易在账本中可追溯。