密码学与安全之区块链
账户设计
- UTXO
- Accountbased
区块链结构
默克尔树
密码学技术
- 通过使用非对称加密的椭圆曲线数字签名算法,确保交易的身份验证和不可抵赖。
- 通过使用各种哈希算法来实现PoW共识机制。
- 通过哈希算法对交易和区块内容进行计算而产生的哈希指针,一方面通过哈希指针将多个交易记录组成哈希树,作为区块的主体内容;另一方面通过哈希指针将多个区块头组成一个链条,形成区块链。采用这样的结构,可以防止交易和区块信息的被篡改,同时能实现交易的快速验证。
- 用于数据隐私保护相关技术:包括盲签名、环签名、同态加密、零知识证明等。
共识机制
共识机制:区块链事务达成分布式共识的算法
- PoW(工作量证明) 通过与或运算,计算出一个满足规则的随机数,即获得本次记账权,发出本轮需要记录的数据,全网其它节点验证后一起存储。
- PoS(权益证明) PoW的一种升级共识机制,本质上是采用权益证明来代替PoW的算力证明,记账权由最高权益的节点获得,而不是最高算力的节点。
- DPos(股份授权证明机制) 类似于董事会投票,持币者投出一定数量的节点,代理他们进行验证和记账。
- DAG
- PBFT:Practical Byzantine Fault Tolerance(实用拜占庭容错算法)
- RCP
- BFT
智能合约
P2P
分布式
理论:FLP、CAP
- 2pc 3pc
- paxos
- raft
- zab
- Viewstamped Replication
Token
基于ERC-20标准,任何人都可以在以太坊上发行自定义的Token,这个Token可以代表任何权益和价值。现在,用Token来作为某种权益证明进行ICO,已是一个普遍的做法。
3.2 Token三基本要素: Token本质是一种可以流动的加密的数字权益证明,它有三个基本要素,缺一不可:
第一: 数字权益证明,Token必须是以数字形式存在的权益凭证,它必须代表某种权利和价值,也就是说资产必须可数字化。
第二: 安全和可信,Token自身必须具有真实、防篡改、保护隐私等基本安全性能力,区块链上的Token在技术上由密码学予以保障。每一个Token就相当于密码学技术保护下的一份权利,这种保护,比任何法律、权威和枪炮提供的保护更坚固、更可靠。
第三可流通和交易,也就是说Token必须能够在一个可信基础网络中流动,从而随时随地可以被验证、被交易、被兑换。
事实上,Token可以代表一切权益证明,从身份证到学历文凭,从货币到票据,从钥匙、门票到积分、卡券,从股票到债券,人类社会全部权益证明,都可以用Token来代表。
人类社会的文明发展,就是建立在无穷的权益证明之上的,所有的账目、所有权、使用权、资格、证明等等都是权益证明。Token被广泛译为“代币”,但其所代表的,不仅仅是货币,或许恰恰相反,Token实际落地后,非代币类的应用恐怕会远远走在代币前面。
3.3 Token价值来自于共识 区块链被《经济学人》喻为“信用的机器”,它真正解决的,是数宇世界的信任问题,而又是通过什么方式解决的信任问题? 答案很简单,那就是: Token。
Token是必须存在的,而且Token是有价值的。那价值来自哪里? 来自于社区内的共识。
目前区块链主流的共识机制有三种:
(1) PoW工作量证明: 即解码挖矿,大家分币,比拼的是算力,这也是保证比特币系统一直安全的共识机制;
(2) PoS权益证明: 基于币龄机制,解决工作量证明的能源浪费问题,相当于把维护系统稳定的责任交给了大股东,
(3) DPoS授权股权证明: 通过投票机制将所有用户的权利集中到少数人手中。即交由这些受托人负责维护货币系统运行,类似于现实世界中的董事会决策。
不论哪种共识机制,仔细去看背都离不开Token。也就是说,为了鼓励各节点共同参与进来,维护区块链系统的安全运行,各种共识机制都需要一个权益机制,作为参与者的酬劳和激励,也就是通过经济平衡的手段,来防止对总账本内容进行篡改。
参考资料
https://www.jianshu.com/p/2313baa43e1b
https://www.jianshu.com/p/fb84928aeff7