目标
设计一套在一个完全开放且不可靠环境下运行的软件,让其去管理运行在去中心化点对点系统上的分布式账本。管理所有权。
所研究系统的特征
- 完全去中心化的点对点系统,计算机资源由系统用户提供
- 节点通过互联网连接
- 节点数量,节点是否值得信任,以及节点的可靠性均未知
- 初衷是为了管理数字资产的所有权,如消费积分或者加密货币
要完成的任务
-
描述所有权:交易是描述所有权转移的好方法
-
保护所有权:密码学提供了一种在个人层面保护交易的方法
-
存储数据:区块链类似对于账本的数字化
-
账本可以发送到一个不可信任的环境:将在不可信网络种拥有在不可信节点上运行的账本副本,将账本的控制权交给整个网络。。结果是一个只能添加新区块的链式数据结构:可以添加新区块但是无法更改过去已添加区块内的数据。
-
分发账本:将账本的副本提供给想维护账本的节点。除此之外还涉及对等节点之间的交互问题。
-
向账本添加交易记录:只允许添加有效和经过授权的交易记录。所有计算机节点互相监督。
-
决定那些账本代表了真实的交易记录:通过让点对点系统中的每个节点决定那些记录代表真相,少数服从多数节点的决定。