论文部分内容阅读
区块链是随着比特币等数字加密货币逐渐兴起而盛行的一种新型去中心化分布式系统,具有去中心化、时序数据、集体维护、可编程和安全可信等特点。目前,区块链已经引起政府部门、金融机构、科技企业和资本市场的高度重视与广泛关注。如何在一个去中心化的分布式系统中高效地达成共识是区块链技术研究的重要问题。比特币采用区块链技术作为支撑系统的基础架构,应用工作量证明(Proof ofWork,PoW)共识机制实现节点间的共识,系统安全由共识过程中产生的强大算力保证。矿工通过加入矿池而获得稳定收益,通过贡献算力进行合作挖矿获得相应收益。矿工之间达成“友好”共识,不仅保证系统安全,同时也保证挖矿环境友好型——算力不被浪费。然而,矿工也可以通过攻击,成为“free rider”与其他矿工共同分享系统收益,这种攻击形成“不友好”共识,对于攻击者而言,将获得高于贡献算力的收益,而其他矿工将获得低于攻击者不进行攻击时应得的收益。当所有矿工都互相攻击时,每个矿工收益为零,系统收益也将为零,这就是矿工挖矿困境,对应于博弈论中的囚徒困境,即对于单一矿工来说攻击是最优选择,却不是系统最优的。本文提出基于零行列式(Zero Determinant,ZD)策略解决矿工挖矿问题,对节点的策略选择进行优化,促进节点与系统获得更高的收益。首先在PoW共识过程中,考虑矿工算力是否相同两种情形,分析矿工策略选择的纳什均衡存在条件,将单矿工ZD策略应用到挖矿模型中,对其进行博弈优化,并得出相关结论。进而考虑两类特殊的ZD策略:pinning策略可以控制对手收益;extortion策略可以强迫对手收益与自己收益满足线性关系。在某些条件下,pinning策略与extortion策略都可以相对提高系统收益,但矿工仍然存在攻击的可能,系统收益未达到最高值。基于单矿工选择ZD策略的优势与不足,最终考虑多矿工多ZD策略。矿池中有多个矿工时,分析并比较矿工挖矿从无到有选择ZD策略时,系统收益变化情况。基于马尔科夫链证明多矿工多ZD策略可以保证矿工达成友好共识,进而合作挖矿,摆脱挖矿困境,进而获得系统收益最高值。最终通过仿真验证ZD策略的有效可行性。有效共识机制的设计不仅是比特币系统的安全保证,更是区块链至关重要的问题。在区块链PoW共识算法中,矿工挖矿的纳什均衡为攻击,即矿工挖矿困境的最优选择是互相攻击,这种攻击将造成区块链系统算力的浪费,也会致使矿工之间达成“破坏性共识”,系统完全失去可信任,最终将不能继续运行。因此,设计出实现友好共识的方法是区块链技术继续发展的一个至关重要的问题。本文从博弈论角度来理解和剖析PoW共识算法,提出应用ZD策略对PoW共识算法中矿工策略选择进行优化,经过两次改进,最终考虑多矿工多ZD策略。多ZD策略使矿工合作挖矿,系统收益达到最优值。本文通过分析矿工挖矿过程,基于博弈论知识消除挖矿困境,为区块链广阔的研究前景和应用提供理论知识,同时也为优化区块链共识算法提供新的思路和方法。