区块链的数学原理来源于拜占庭将军问题,但其实这在中国古代军事中,一道虎符即可解决。但目前即使火热朝天的区块链,就交易结算而言,要建立这样安全且高效的信任机制,还需克服许多成本和效率的问题。
为什么现在区块链每秒只能解决几笔交易?
中国密码学学会会员、前海梦创产业合伙人孙海东表示,我们知道区块链技术是2009年发明的比特币的底层技术,但更深一层地说,区块链技术是因为密码学的成长才会产生的。“换句话说,今天区块链技术所用的密码学是二十年前的密码学成果,在信息技术、软件技术和密码技术经过二十年的演进后,再用一个老的密码学成果来推动今天大家所要的可信区块链,那肯定会出现更多的问题。比如,为什么现在区块链每秒只能解决几笔交易?具体应该找到怎样的方法才能真正解决问题?”
首先,这些问题究竟在所谓的区块链——我们叫超级账本里面的密码如何构成的?孙海东介绍说:
- 今天超级账本服务的产品主要是在现代密码学、软件技术、网络技术和网络社会构建下的一种商对商、商对客、人与人的服务范式,所以,在这个社会新媒体治理的过程中,任何一个在网络空间里,要参与超级账本公开化记账的人员,第一要务是有个中心化的认证系统。
“如果没有一个中心化的认证系统来赋予你身份和身份识别,超级账本就不会形成网络上的人文生态。”现在在网上的身份识别是PKI(公钥基础设施)体系,已经沿用了十几年。
- 第二个是策略管理——PMI,即授权管理基础设施,它依赖于PKI的支持提供访问控制和特权管理。
“就是允许你进行角色管理,因为没有角色管理就没有生态合作。一旦PMI完成之后,就进入业务的模块。”孙海东解释道,但是我们知道,超级账本的实际转账过程中会有哈希同步。为什么要搞两次哈希?根据著名密码学家王晓云发现,是因为PKI出了问题。
“比如说,发一个纸币,大家拿到纸币之后,是可以互相交易的。如果超级账本的某一块分布节点发布了一个公开的有价交易,我们就需要用两次哈希来保证哈希结果的安全,进行交易内容的公开性保护和转账过程保护,这就是现在的区块链信任技术。所以区块链技术是在密码技术不成熟的情况下才会出现的。”
简而言之,就是不能让人有修改公开性的超级账本的历史的能力。假设有一个区块链A-B-C,任何接收到这个区块链的新生节点,必须能够很方便地验证交易A之后确实发生了交易B,交易B之后确实发生了交易C。在密码学中, 防止数据被改动有一个很方便的工具,就是hash(哈希)。如果C之中包含了B的哈希值,那么如果有任何人尝试发送改动过的B(大可以设为B')给新节点,新节点立刻就能发现B'的哈希值和C中记录的不符。所以只要新节点获取到了区块链中最新的一个块,它就能往回验证整个历史的合法性。
由上述也可见,哈希值的计算量是很大的。“一般意义上,PKI身份认证来保证用户可信以及叠加hash来保证分布数据库的明文数据不可篡改就可以了,比特币的成功就是如此。但除去比特币交易,将超级帐本应用于更多分布式的多元身份参与的应用场景下,原来的区块链技术肯定不够用。”
比特币因为业务相对单纯,所以对可信技术与支撑体系的要求不高,“所以问题出现在密码上——就是要有支持超级账本这个可信媒介的密码信息安全支撑体系的创新。如果没有创新的话,可能靠现有的区块链技术,超级账本是很难真正全面有效走向社会当中去的。”
密码创新弥补交易性能短板
“密码学需要创新,所以我们国家花了将近二十年来做分布式密码认证技术和相关的密码技术体系。”孙海东微信名称唤作“移山新愚公”,关于其公司的简介,网络上也甚少,“密码人有两个特点,一个是技术追求特别狂;第二个是技术实现特别小心,一定要用数学理论来反复证明。”
用了将近二十年的时间,孙海东依托的团队获得了一个密码技术市场应用的国家批准,将可以正式进入市场。此前,该团队的核心人员之一还发明过国家的“商业密码4号”,它曾是中国第一次公开向全世界开源的密码技术,其安全性,迄今还被国际社会所认同,目前已经在国际密码学社会上存活了10年。
“我们希望创造一个像人民币一样,央行一旦发给我们一个身份认证,任意两个人之间就不需要找央行了,就像纸币一样利用算法交易的一套密码。”有了这样一套密码,“我们可以利用新的认证算法,而把区块链所耗费的时间去掉,因为我们保证了身份识别,身份验证、传输验证和交易验证,所以完成了新的密码系统创新。”
如果做到这一点,也许就能像古代的虎符认证技术那样——一物一密,一人一密,一次一密。
新时代的虎符认证技术,基本上就可以实现超级账本和新的区块链技术的真正效率,实现一个能够把两次哈希的时间节省掉的交易过程。
当然,密码不能解决所有问题,国内区块链技术公司布比的联合创始人杨帆表示,“作为安全出身的人,我深知密码的重要。但事实上不光是密码学推动区块链的创新,也是现实中的应用需求推动着底层技术的进步,比如密码算法。”
本文作者:温晓桦
本文转自雷锋网禁止二次转载,原文链接