区块链的六大核心算法 区块链核心算法
一、区块链技术的六大核心算法
区块链技术的六大核心算法
区块链核心算法一:拜占庭协定
拜占庭的故事大概是这么说的:拜占庭帝国拥有巨大的财富,周围10个邻邦垂诞已久,但拜占庭高墙耸立,固若金汤,没有一个单独的邻邦能够成功入侵。任何单个邻邦入侵的都会失败,同时也有可能自身被其他9个邻邦入侵。拜占庭帝国防御能力如此之强,至少要有十个邻邦中的一半以上同时进攻,才有可能攻破。然而,如果其中的一个或者几个邻邦本身答应好一起进攻,但实际过程出现背叛,那么入侵者可能都会被歼灭。于是每一方都小心行事,不敢轻易相信邻国。这就是拜占庭将军问题。
在这个分布式网络里:每个将军都有一份实时与其他将军同步的消息账本。账本里有每个将军的签名都是可以验证身份的。如果有哪些消息不一致,可以知道消息不一致的是哪些将军。尽管有消息不一致的,只要超过半数同意进攻,少数服从多数,共识达成。
由此,在一个分布式的系统中,尽管有坏人,坏人可以做任意事情(不受protocol限制),比如不响应、发送错误信息、对不同节点发送不同决定、不同错误节点联合起来干坏事等等。但是,只要大多数人是好人,就完全有可能去中心化地实现共识
区块链核心算法二:非对称加密技术
在上述拜占庭协定中,如果10个将军中的几个同时发起消息,势必会造成系统的混乱,造成各说各的攻击时间方案,行动难以一致。谁都可以发起进攻的信息,但由谁来发出呢?其实这只要加入一个成本就可以了,即:一段时间内只有一个节点可以传播信息。当某个节点发出统一进攻的消息后,各个节点收到发起者的消息必须签名盖章,确认各自的身份。
在如今看来,非对称加密技术完全可以解决这个签名问题。非对称加密算法的加密和解密使用不同的两个密钥.这两个密钥就是我们经常听到的”公钥”和”私钥”。公钥和私钥一般成对出现,如果消息使用公钥加密,那么需要该公钥对应的私钥才能解密;同样,如果消息使用私钥加密,那么需要该私钥对应的公钥才能解密。
区块链核心算法三:容错问题
我们假设在此网络中,消息可能会丢失、损坏、延迟、重复发送,并且接受的顺序与发送的顺序不一致。此外,节点的行为可以是任意的:可以随时加入、退出网络,可以丢弃消息、伪造消息、停止工作等,还可能发生各种人为或非人为的故障。我们的算法对由共识节点组成的共识系统,提供的容错能力,这种容错能力同时包含安全性和可用性,并适用于任何网络环境。
区块链核心算法四:Paxos算法(一致性算法)
Paxos算法解决的问题是一个分布式系统如何就某个值(决议)达成一致。一个典型的场景是,在一个分布式数据库系统中,如果各节点的初始状态一致,每个节点都执行相同的操作序列,那么他们最后能得到一个一致的状态。为保证每个节点执行相同的命令序列,需要在每一条指令上执行一个“一致性算法”以保证每个节点看到的指令一致。一个通用的一致性算法可以应用在许多场景中,是分布式计算中的重要问题。节点通信存在两种模型:共享内存和消息传递。Paxos算法就是一种基于消息传递模型的一致性算法。
区块链核心算法五:共识机制
区块链共识算法主要是工作量证明和权益证明。拿比特币来说,其实从技术角度来看可以把PoW看做重复使用的Hashcash,生成工作量证明在概率上来说是一个随机的过程。开采新的机密货币,生成区块时,必须得到所有参与者的同意,那矿工必须得到区块中所有数据的PoW工作证明。与此同时矿工还要时时观察调整这项工作的难度,因为对网络要求是平均每10分钟生成一个区块。
区块链核心算法六:分布式存储
分布式存储是一种数据存储技术,通过网络使用每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在网络中的各个角落。所以,分布式存储技术并不是每台电脑都存放完整的数据,而是把数据切割后存放在不同的电脑里。就像存放100个鸡蛋,不是放在同一个篮子里,而是分开放在不同的地方,加起来的总和是100个。
二、区块链如何上链存证
优化营商环境解密区块链证据存证、核验的技术原理区块链证据
存证、核验
电子数据的存证技术原理,简而言之就是把某一电子数据予以保存,用以证明该电子数据在某一时间点的存在。区块链存证方式就是通过对原始数据进行哈希值运算后,将所形成的哈希值摘要上传区块链加密保存,而不上传原始数据本身。
原始数据仍存储在本地具有被修改的可能,法官如何确认当事人提交的证据与原始数据一致未被篡改呢?链上数据又有没有可能被篡改呢?
这就要从区块链存证的技术原理说起。
加密存储
区块链存证证据并不是存储电子数据本身,而是将电子数据对应的哈希值存储于区块链,又称哈希值上链。哈希算法是单向加密函数,在现有技术条件下很难被破译,任何一个原始数据(及其完全等同的复制件)有且只对应一个哈希值,哈希值也因此被称为“数据指纹”。对原始数据的任何修改都会导致其哈希值的变动,从而无法通过后续的核验比对。
多节点分布式存储
区块链采用“分布式账本”技术,即在一个分布有多个节点的系统中,每个节点都独立保存和更新数据,没有维护各节点的中央机构,各节点通过共识机制对数据更新进行确认,由此保证链上数据不被篡改。
举个例子:
有个村子原来由村会计记账,村长保管账本(中心化记账),但会计和村长为私利串通做假账,村民无可奈何。采用分布式账本技术(去中心化)后,改为公共账本,全村人手一份账本,村中每发生一笔账目,都要广播给全村人知道,村民再将该笔账目计入自己的账本中。
若51%以上的村民确认这笔账目有效,按照少数服从多数的原则达成共识,该笔账目就会被计入公共账本中,同时全村人都会将该笔账目添加到自己保管的那份账本中。
若该笔账目有假,则无法通过全村的共识确认,将会被作废。公共账本以多数村民手中一致的版本为准。
链式数据结构
区块链上的数据单元是“区块”,后一个区块除了记载一般数据,还包裹了上一个区块的哈希值,如此传递、环环相扣成“链”,而且电子数据存储于区块链附有时间记录,具有时序性,这使得任何一个区块无法被单独修改,且随着时间经过,修改链上数据的难度和成本也直线提升。
聚焦案例
该技术被应用到我院首例“区块链证据核验”案件中。
银行与贷款人签订电子合同后,银行业务系统使用区块链存证平台提供的哈希计算程序对电子合同文件等相关电子数据自动进行哈希运算,形成相应哈希值后将哈希值上传至区块链电子存证平台存证。双方发生纠纷后线上立案时,银行在线提交了经区块链存证的电子证据。
此后在庭审举证、质证环节,法院当场对银行所提交的电子证据再次进行哈希值运算后,将所得出哈希值与区块链存证平台上的哈希值进行比对,得出“该证据自上链之日起未被篡改”的核验结果,由此辅助法官快速判断该证据自上链后是否被篡改,进而对其真实性做进一步认证。
区块链存证及其核验技术的运用,有效解决了在线诉讼中电子证据真实性认定的难题,有效降低了当事人的存证、举证和质证成本,减轻当事人诉累,同时大幅提高了法院的认证效率,审判质效得到了进一步的提升。
法条速递
《人民法院在线诉讼规则》
第十六条【区块链技术存储数据的效力】当事人作为证据提交的电子数据系通过区块链技术存储,并经技术核验一致的,人民法院可以认定该电子数据上链后未经篡改,但有相反证据足以推翻的除外。
第十七条【区块链技术存储数据的审核规则】当事人对区块链技术存储的电子数据上链后的真实性提出异议,并有合理理由的,人民法院应当结合下列因素作出判断:
(一)存证平台是否符合国家有关部门关于提供区块链存证服务的相关规定;
(二)当事人与存证平台是否存在利害关系,并利用技术手段不当干预取证、存证过程;
(三)存证平台的信息系统是否符合清洁性、安全性、可靠性、可用性的国家标准或者行业标准;
(四)存证平台的信息系统是否符合相关国家标准或者行业标准中关于系统环境、技术安全、加密方式、数据传输、信息验证等方面的要求。
第十八条【上链前数据的真实性审查】当事人提出电子数据上链存储前已不具备真实性,并提供证据证明或者说明理由的,人民法院应当予以审查。
人民法院根据案件情况,可以要求提交区块链技术存储电子数据的一方当事人,提供证据证明上链存储前数据的真实性,并结合上链存储前数据的具体来源、生成机制、存储过程、公证机构公证、第三方见证、关联印证数据等情况作出综合判断。当事人不能提供证据证明或者作出合理说明,该电子数据也无法与其他证据相互印证的,人民法院不予确认其真实性。
第十九条【区块链存储数据真实性补强认定】当事人可以申请具有专门知识的人就区块链技术存储电子数据相关技术问题提出意见。人民法院可以根据当事人申请或者依职权,委托鉴定区块链技术存储电子数据的真实性,或者调取其他相关证据进行核对。
致谢:在此特别感谢腾讯集团法务综合部法律创新中心产品总监蒋鸿铭先生对本文撰写的指导和支持。
区块链电子存证如何实现?为了提高司法审判效率,2021年6月17日,最高人民法院发布了《人民法院在线诉讼规则》(下称“规则”),该规则将于2021年8月1日正式实施。其中,《规则》对电子证据、区块链存证的法律效力作了详细的规定,并对司法实践中遇到的诸多问题予以了回应。
关于电子化材料,《规则》中特别指出:经审核的电子化材料可以直接在诉讼中使用。最高人民法院副院长表示,全国法院系统采用在线举证质证、庭审语音识别、文书电子送达等新技术进行审判,区块链电子存证、智能合约执行等技术日益成熟,取得便民利民、审判公正高效成效。
《规则》的发布,表明了国家司法机关对区块链存证技术优势的肯定。区块链作为一种去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
具体来说,区块链网络是由多个机构或公司服务器作为节点所构成的网络,该网络上某节点会对一个时间段内所产生的数据打包形成第一个块,然后将该块同步到整个区块链网络。网络上的其他节点对接收到的块进行验证,验证通过后加到本地服务器。
之后,某节点会将新产生的数据及本地服务器内已有块的信息放在一起打包形成第二个块,其他节点接收该块并验证通过后,将第二个块加到本地服务器,第一个块与第二个块相连,之后的网络内部的数据均经上述相同方式打包成块,块与块首尾相连形成链,该链即为区块链。
若需要修改块内数据,则需要修改此区块之后所有区块的内容,并将区块链网络所有机构和公司备份的数据进行修改。因此,区块链有难以篡改、删除的特点,在确认诉争电子数据已保存至区块链后,其作为一种保持内容完整性的方法具有可靠性,因此也可以成为被法院认可的电子存证。
区块链存证是怎样应用的?为了满足川渝两地区域协同发展过程中人民群众不断增长的诉讼服务需求,我们的区块链存证技术将在川渝两地跨域立案、信访联控、线上诉讼、联席会议等各项合作中发挥存证、认证、取证等一系列作用,使得远距离、无接触合作变得更规范、便捷、高效。为川渝高院实现普惠均等、便捷高效、智能精准的诉讼服务提供助力。
简单介绍一下区块链存证的应用——“实槌”可信电子证据平台
实槌”可信电子证据平台通过与司法鉴定机构、公证处、仲裁机构、互联网法院等合作,实现链上存证、链上取证、链上出证,降低电子数据证据保全成本,方便电子数据的取证及证据认定,提高司法证据保全领域的诉讼效率。
目前,“实槌”可信电子证据平台的证据溯源模式已得到北京、厦门、广州、深圳等多个法院认可,且已有部分银行及国企已开始采用“实槌”可信电子证据平台。
如何区块链技术,让电子数据转变为合法有效的电子证据?随着互联网和信息技术的快速发展,诉讼中大量证据逐渐以电子数据存证的形式呈现,借助区块链技术,在司法实践中,如何克服电子数据“取证难、易丢失、易伪造”的天然缺陷,确保其能作为呈堂证供呢?
区块链基于多方共识、不可篡改、透明可追溯等技术特征,可以有效解决电子证据“数量大、证据分散、取证难、易被篡改、难以认定”等问题,实现“电子数据“向“合法有效的电子证据”转变,方便电子数据的证据认定,提高司法存证领域的诉讼效率。
018年9月3日,最高人民法院印发《关于互联网法院审理案件若干问题的规定》首次认定链上数据可以作为司法采信的依据。
2021年5月18日,最高人民法院发布《人民法院在线诉讼规则》并于8月1日起施行,首次规定了区块链存证的效力范围,明确了区块链存储的数据上链后推定未经篡改的效力。同时,确立了区块链存储数据上链后以及上链前的真实性审核规则。
这不仅推动了区块链技术与诉讼规则的融合,更开启了区块链司法模式的发展道路。
易保全是第一批通过国家网信办区块链信息服务备案的企业,利用自研保全链技术搭建了联盟链,并将区块链与司法相结合,搭建了数据存证公证系统,可以很好地解决电子数据从产生、存证,到公证、举证等全链路可信问题:
上链时,利用区块链技术将数据在事前已进行多方存证,保障存证数据的原始性和完整性;上链后,数据同步联盟链上的各个节点进行备份、留存,保障数据的可信性与安全性;诉讼时,证据可在多个司法节点验证、提取,还可在线出具相关司法文书,有效提高维权效率。
如何利用区块链技术进行确权存证?创新是发展的源动力,保护知识产权就是保护和激励创新,进而推动经济社会的进步发展。
以易保全旗下区块链知识产权保护平台——微版权为例,微版权将知识产权保护与数字科技相结合,利用区块链存储稳定和不易篡改等特性,将作品数据以Hash加密的形式存储在区块链上进行区块链确权,帮助用户将作品的相关信息登记在链。
同时,还可把存证主体、存证时间、存证过程和存证内容等生成唯一对应的数字指纹,并通过保全链开放平台同步至公证处、司法鉴定中心、版权保护中心、互联网法院、仲裁委等,有效保障区块链存证证据的法律效力。?同时,用户还可在线申请由版权局出具的版权证书,最快1个工作日出版权证书,让用户在第一时间拿到权属证明。
区块链是怎样应用于存证领域的?区块链技术具有难以篡改、易于追溯等优势。
从本质上讲,区块链是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任“基础,创造了可靠的“合作”机制,具有广阔的运用前景。
比如我们“实槌”可信电子证据平台,就是我们契约安全合规风控方案的核心技术,可实现电子合同签署、存证、司法鉴定、争议纠纷在线处置等环节的全流程线上处理。
多年来我们也在不断打磨自身产品,全方位布局智能化。我们的电子合同SaaS产品功能,在原有实名认证和合同签署的两大核心功能基础上,增加了组织管理、审批管理、印章管理、合同起草、合同模板管理、公证存证六大模块。较早前,我们还发布了手写笔迹识别、碎片化存储机制、文印安全防伪等多项技术。此外,针对线上司法处置通道缺失、电子证据效力认定标准不一等问题,我们推出了“实槌”保全系统,以实现证据保全、实时出证,在为客户提供电子合同服务的同时,提供更专业高效的法律保障服务。
三、区块链是怎样应用到电子合同中的
区块链在电子合中的应用主要是数据的存储,通过深度使用密码学算法、特别设计的数据结构和多方参与的共识算法,由机器算法来解决多方交易记录的一致性、可靠存储和防篡改问题,与电子数据存证有着天然的强关联。
区块链技术因其减少中间环节、减少数据一致性导致的欺诈、提升业务效率和速度、减少交易对手风险以及增加收入、节省成本等特征,受到市场的热捧。
首先,电子合同签约记录存储在由多方共同维护的共享账本上,不可篡改,不可抵赖,当然也不会丢失。
其次,电子合同文本、电子合同要素加密存储,包括电子合同参与人也采取加密存储,只有参与人才可以解密查看,在数据上保护签约方隐私。
再次,机器按照预定义的规则(智能合约)严格执行,不再仅靠与第三方一纸协议保证。基于区块链的KYC服务自动检查验证证书有效性和身份,在保证隐私的基础上确保参与人身份有效真实。
作为国内领先的第三方电子签约平台,多年来我们也在不断打磨自身产品,全方位布局智能化。我们的电子合同SaaS产品功能,在原有实名认证和合同签署的两大核心功能基础上,增加了组织管理、审批管理、印章管理、合同起草、合同模板管理、公证存证六大模块。较早前,我们还发布了手写笔迹识别、碎片化存储机制、文印安全防伪等多项技术。此外,针对线上司法处置通道缺失、电子证据效力认定标准不一等问题,我们推出了“实槌”保全系统,以实现证据保全、实时出证,在为客户提供电子合同服务的同时,提供更专业高效的法律保障服务。