在8月18日的“SCDC 2022 海峡链开发者大会”上,海峡链研究院院长毛岱山进行了《海峡链技术专利分析介绍》的主题演讲。对“海峡链”目前拥有的专利情况,以及未来“海峡链”的研究重点进行了简单介绍。
一、“海峡链”专利情况
“海峡链”上线至今,已经拥有了25项国家专利,主要涵盖以下几个方面:
在IPFS方面,“海峡链”拥有7项国家专利。“海峡链”拥有自主研发的“许可IPFS网络”,其一大特点是与IPFS的深度结合。为此,我们在IPFS上投入了很多资源进行研究和改造,比如:对IPFS的网络结构进行了轻重节点的区分,对IPFS的密码学进行改造使其兼容国密算法,以及对IPFS上的文件进行权限管理等等,这些研究工作催生了多项专利。
在区块链底层技术方面,“海峡链”拥有6项国家专利,涵盖了共识算法、密码学、节点管理、多方签名等多个领域。在这些技术领域我们将会持续投入研究。
**在监管方面,“海峡链”拥有4项国家专利。**监管一直都是“海峡链”关注的重点,从项目建立之初我们就把监管作为核心要点,监管的设计体现在“海峡链”的各个方面。关于“海峡链”监管的设计,大家可以从《海峡链技术白皮书-整体篇》中了解到相关的技术细节。“海峡链”在智能合约的监管、链上数据的监管、数据上链前的检查等方面都获得了国家专利。
在跨链方面,“海峡链”同样拥有4项国家专利。“海峡链”是多链结构,我们在数据锚定、数据提交竞争、跨链隐私保护等方面都有深入研究和相关专利。
**在隐私保护和隐私计算方面,“海峡链”拥有3项国家专利,**涉及到同态加密、数据交换等方面。此外,在应用层,“海峡链”拥有1项国家专利。
二、“海峡链”技术创新情况
接下来,通过三个“海峡链”的具体专利,来向大家介绍“海峡链”的技术创新情况。
首先,介绍的是IPFS领域的专利。在“海峡链”上,我们希望构建一个能够让存储供应商主动参与,并提供存储服务的IPFS网络。在构建IPFS网络过程中,遇到的第一个问题就是:如何公平衡量重节点提供的存储容量。解决这个问题涉及到两个证明,分别是存在性证明和有效性证明。
- 存在性证明,就是证明重节点确实在本地保存了文件片,而不是只存储了CID,也不是在被检查到的时候才从IPFS网络中临时拉取文件片;
- 有效性证明,就是证明重节点保存的文件片是真正有效文件的分片,而不是随机生成的无效内容。
那么,**《去中心化存储服务的证明方法、装置、设备及存储介质》**这个专利是用于解决存在性证明的。
上图的核心数据结构分为两层,上层是个Merkle树结构,树叶是ProofLeaf,树根是存储证明根。
ProofLeaf是什么呢?ProofLeaf是针对每一个文件片生成的一个哈希值,由一个随机数和文件片的原始数据连接后生成的一个哈希值,再将这个哈希值与节点的pid进行一次哈希运算后得到。
通过上图的数据结构,把存储证明根在链上公开,后续就可以为每个文件片生成一个可验证的证明。这个证明对每个存储节点来说都是不同的,因为存储证明根包含了pid,并且它与一个挑战随机数有关,因此,存储证明根具有有效期。
下面,我们来看下这个机制是如何工作的。
从重节点的角度来看,链上被分为多个epoch,每个epoch又分为多个slot,每个slot里包含多个区块。
epoch和slot分别有什么作用呢?每个epoch对应着一个存储证明的挑战随机数,也就是在每个epoch里,重节点都需要根据挑战随机数生成存储证明根。存储证明根的生成成本比较高,一个epoch通常需要一天的时间。
slot代表的是对重节点的奖励周期。因为epoch的时间较长,如果一天才对重节点进行一次奖励,这对重节点来说风险太高。所以,我们把一个epoch分成多个slot,在每个slot结束都可以对重节点进行一次奖励,这能够让更多的重节点有机会获得奖励。而一个epoch的时长,一个epoch分为多少个slot,均由监管委员会在核心链上投票决定,这样就可以根据IPFS网络里实际保存的文件量,对重节点的激励进行合理的动态调节,让重节点始终有动力去为IPFS提供存储服务。未来,我们计划将这种动态调节机制通过智能合约来实现,用算法取代投票,进一步提高效率和公平性。
第二项介绍的是区块链底层技术的专利。**《一种去中心化应用兼容多种密码学体系的方法》**此项专利涉及到多种密码学知识。
密码学有诸多不同的算法,比如非对称加密就有RSA、ECC、SM2等等。在以下几个场景中,需要能够满足一条区块链同时支持多种不同的密码学算法的情况:
- 不同密码学要求的DApp运行在同一条区块链上;
- 跨链验证不同链的交易;
- 在不分叉的情况下,兼容新的更高效的密码学算法。
密码学方案众多,能否有办法在一条链上兼容多种密码学方案?针对这个问题,我们进行了研究,并给出了解决方案。即在密文内容的前面加上一个密码标识,密文接收者通过密码标识,即知道使用哪种密码学方案解析密文内容。密码标识可以是简单的数字序号,每个序号代表不同的密码学套件。
那么,“海峡链”是如何实现对一个新的密码学套件支持的呢?首先需要在“海峡链”上注册新的密码标识,并且给出这个密码标识对应的标准,最好也有参考的实现。然后节点会考虑进行升级,升级完成后,节点声明支持新的密码标识,等到大于2/3的节点都完成了升级,才能正式启用新的密码标识。
最后介绍的是监管相关的专利:《一种区块链中解决跨链数据可用性的方法》,解决的是数据可用性问题。
什么是数据可用性?数据可用性是指区块链网络对用户、参与者、监管者提供获取交易、状态等数据的能力。
数据可用性有什么价值呢?在多链或跨链情况下,数据可用性是安全闭环的一个重要部分,没有提供数据可用性的链,是不安全的;在监管方面,它使得监管者在不运行节点的情况下,就可以获取链上的交易。
当下一些主流的区块链,例如:Polygon、Cosmos以及大部分的Layer2都没有提供数据可用性,因此,它们均存在安全隐患。
RollUp提供了数据可用性,这也是为什么Vitalik这么推崇RollUp的原因。不过,RollUp提供数据可用性的方法是把交易压缩后存放在链上,这个方法提供的数据有上限,而且会让区块体积变大,存在限制。
以太坊2.0是通过随机抽样的方式保障数据有效性的,这个方案很复杂,需要多方配合才能实现。
而“海峡链”结合自主研发的“许可IPFS网络”来解决数据可用性问题。在“海峡链”的子链把数据锚定到核心链的时候,会将生成数据可用性文件上传到“许可IPFS网络”,并把对应的CID存入锚定数据中。核心链获得CID之后就可以在“许可IPFS网络”上获得数据可用性文件,这就解决了“海峡链”各链之间的数据可用性问题。
三、“海峡链”重点研究方向
下一个阶段,“海峡链”的重点研究方向主要集中在预言机、链上随机数、DID、隐私计算等方面。
目前,现有的预言机基本都是去中心化预言机。而考虑到现实世界中,有非常多的数据是由中心化机构所提供,所以我们将提供中心化预言机和去中心化预言机,来满足不同的场景需求。
在很多应用中,链上随机数都是非常重要的,对DApp有很大的价值。但是,让DApp自己生成可信的链上随机数是很困难的,因此“海峡链”将在链上提供随机数功能,方便DApp的开发。
对数据的隐私保护是非常重要的课题,隐私计算可以做到“数据可用不可见”,是保护数据隐私,解决数据孤岛问题的重要技术手段,“海峡链”将会持续加大研究投入。
当然还有很多其他研究课题,这里就不一一展开。总之,“海峡链”将始终专注于区块链基础技术研究,致力于搭建区块链底层基础设施,为各行业开发者提供区块链基础设施服务。