在日常生活中,人们经常需要就一些事情达成共识,并且需要保证共识的结果不会丢失或被篡改。对于有组织的群体来说,我们通常能够找到一种有效的方法来达成共识。例如,在策划老同学聚会时需要确定聚会的时间和地点,聚会发起人可以通过电话、微信、电子邮件等途径与大家进行反复沟通,最终达成共识并通知到所有的聚会参与人。然而,对于没有确定的组织形式并且相互之间缺少信任的群体,达成共识就成为一个困难的任务。例如,消费者和商家之间如果缺少信任,那么一旦发生消费纠纷就很难达成共识。此时,我们需要一个公正、中立、权威的第三方来帮助达成共识。
随着现代信息技术的发展,各种各样的信息系统已经渗入我们生活的方方面面,如通信软件、电子银行、在线购物、扫码支付等。大多数情况下我们都会选择信任服务的提供者,例如,相信银行能够安全地保存我的账户余额和流水,相信在线购物平台和支付机构能够正确地处理我的交易数据。在发生纠纷并且难以达成共识的情况下,我们通常选择去寻找一个权威中立的第三方来仲裁,例如向中国银行保险监督管理委员会、各地的消费者权益保护委员会等监管机构投诉。然而,总是存在一些我们很难找到一个权威中立的第三方来进行仲裁的场景,或者仲裁成本太高、难以承受。例如,在境外电商网站上发生购物纠纷时,寻找权威中立第三方仲裁机构解决问题的成本会非常高。
比特币系统是一个全球范围内的去中心化加密数字货币系统,其主要功能就是发行比特币并记录比特币的交易。由于不存在中心化的发行机构,比特币的发行和交易都需要系统的全体参与者通过达成共识的方式予以确认和记录。为了方便读者理解这一点,我们把比特币系统与传统货币系统进行如下对比:
(1)传统的货币系统都有一个发行机构来负责货币的供应,通过发行新货币和回收旧货币来控制市场上流通的货币总量。例如,中国人民银行是人民币的发行机构,美国联邦储备系统是美元的发行机构。而比特币没有发行机构,由系统所有参与者通过比特币软件达成共识,来实现新货币的发行。
(2)传统货币的电子交易记录保存在银行、信用卡组织等金融机构的信息系统之中,由金融机构来保证交易记录的正确性、完整性和安全性。而比特币系统中是没有中心机构来负责维护交易记录的,任何人都可以通过安装运行比特币软件来加入比特币系统,比特币的交易记录就保存在每一个运行了比特币软件的计算机中,通过算法来保证交易记录的正确性、完整性和安全性。
比特币系统需要对全球各地同时发生的交易进行记录,包括每条交易的内容和交易发生的顺序。由于没有中心机构进行记录,比特币系统就需要所有的参与者能够对记录的内容达成共识,并且安全地保存所有交易记录,防止已经达成共识的交易记录被篡改。
在类似于比特币系统这样的去中心化环境下,为了能够实现群体间的共识,需要一些基础条件,主要包括以下几个方面:
(1)在去中心化环境下,系统的每个参与者都是平等的。我们需要一种对等的系统架构来保证任意两个参与者之间都能够直接进行交互,不需要通过固定的中心节点来进行对接。
(2)参与者相互之间进行交流时需要安全可靠的交流手段。一方面保证发送者发送的消息能够到达接收者,并且保证消息内容不被篡改;另一方面接收者能够确信收到的消息来自正确的发送者,而不是冒名者。
(3)各个参与者都需要保存系统中达成的共识结果,这就需要一种能够安全保存共识结果的技术手段,让每个参与者都能够快速确认所收到的共识结果是否正确,并识别出伪造的共识结果。
(4)为了鼓励系统的参与者积极参与达成共识的过程,我们需要一种合理的激励机制,让共识过程的参与者能够获得收益,这样才能保证系统正常运转下去。
(5)在参与者达成共识的过程中,我们需要一种公平、正确且高效的共识算法,也就是达成共识决策的操作步骤。只要每个参与者都正确执行共识算法,就能够在确定的时间内达成共识,任何违反共识算法的参与者都不能从达成共识的过程中获得收益。
……
展开