CN115664684B - 融合数字证据的共识协议运行方法、装置及相关设备 - Google Patents
融合数字证据的共识协议运行方法、装置及相关设备 Download PDFInfo
- Publication number
- CN115664684B CN115664684B CN202211680209.8A CN202211680209A CN115664684B CN 115664684 B CN115664684 B CN 115664684B CN 202211680209 A CN202211680209 A CN 202211680209A CN 115664684 B CN115664684 B CN 115664684B
- Authority
- CN
- China
- Prior art keywords
- node
- consensus
- nodes
- score
- committee
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000011156 evaluation Methods 0.000 claims abstract description 65
- 238000012795 verification Methods 0.000 claims abstract description 31
- 230000007246 mechanism Effects 0.000 claims abstract description 21
- 238000003860 storage Methods 0.000 claims abstract description 20
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 238000012790 confirmation Methods 0.000 claims abstract description 8
- 238000002360 preparation method Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 13
- 238000012797 qualification Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 5
- 239000002131 composite material Substances 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims description 2
- 238000012423 maintenance Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 5
- 238000012550 audit Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013210 evaluation model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种融合数字证据的共识协议运行方法、装置、计算机设备及存储介质,所述方法包括:基于LSH算法对节点进行分为M类,每类包括N个节点;基于随机评估方法和节点反馈值计算各个节点的评估得分;根据输入的商标数字证据和各个节点的评估得分计算得到各个节点的声望值;根据声望值构建当前视图的共识委员会,该共识委员会包括一个主节点和M‑1个共识节点;主节点接收客户端发生的请求消息并进行广播,共识节点验证请求信息;通过验证后触发共识机制,主节点在和共识节点达成共识之后,广播确认结果并更新所有节点的评估得分。采用本发明提高数字证据的安全性、容错性以及司法存证运维效率。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种融合数字证据的共识协议运行方法、装置、计算机设备及存储介质。
背景技术
随着数字信息化的快速发展,尤其是在司法诉讼中,越来越多的证据趋向数字化,数字证据的使用频次与数量日益增多,其存在形式也呈现多样化。尽管不同类型的数字证据生成方式不同,但是都存在溯源难、易篡改、技术依赖性强等缺点,且与以往的实物证据相比,数字证据的真实性、合法性、关联性的司法审查认定难度更大。
因此,如何降低数字证据存证成本,实现数字证据的审计溯源,提高司法存证运维效率与系统容错性是目前亟待解决的技术问题。
发明内容
本发明实施例提供一种融合数字证据的共识协议运行方法、装置、计算机设备和存储介质,以实现数字证据的审计溯源,从而提高数字证据的安全性、容错性以及司法存证运维效率。
为了解决上述技术问题,本申请实施例提供一种融合数字证据的共识协议运行方法,包括以下步骤:
基于局部敏感哈希LSH算法对节点进行分类,将所述节点分为M类,每类包括N个节点,其中,所述节点存储有商标数字证据,所述M、N为大于1的正整数;
基于随机评估方法和节点反馈值计算各个节点的评估得分,所述随机评估方法用于指示和衡量各个节点参与共识的可用性,所述节点反馈值包括除本节点之外的其他节点反馈的值;
根据输入的商标数字证据和所述各个节点的评估得分,计算得到所述各个节点的声望值;
根据所述各个节点的声望值,构建当前视图的共识委员会,所述共识委员会包括1个主节点和M-1个共识节点,其中,所述主节点基于所述共识节点发送的用户签名数据和数据分类请求对数据进行分类,得到分类结果,所述主节点执行隐私保护,并对所述用户签名数据和所述分类结果进行保护;所述共识节点接收所述分类结果;
所述主节点接收客户端设备发送的请求消息并将所述请求消息广播给所述共识委员会中所有的共识节点,所述共识节点验证所述请求消息并在验证通过的情况下向其他共识节点发送准备消息且接收所述其他共识节点广播的准备消息进行验证;
所述共识节点在通过验证后,触发共识机制,所述共识机制用于实现所述共识委员会中的主节点和共识节点达成共识;
在所述主节点和所述共识节点达成共识之后,所述主节点将确认结果广播给区块链上所有节点并同时更新所有节点的评估得分。
在一种可能的实现方式中,当所述主节点和所述共识节点共识失败时,触发视图切换机制,所述共识委员会中的所有节点在视图切换完成之前停止旧共识。
在另一种可能的实现方式中,当所述主节点和所述共识节点共识失败时,在视图切换完成后重新计算各个节点的声望值并启动新的共识过程;将原主节点逐出共识委员会,并通过资格认证选出的新的主节点,所述新的主节点将在下一个视图开始工作。
在另一种可能的实现方式中,所述共识节点在通过验证后,触发共识机制包括:根据所述各个节点的评估得分,从所述共识委员会中选举主节点和验证节点,所述验证节点根据规则在每个步骤执行之前选举得到,所述为节点评估得分,所述为节点评估得分预设值;所述主节点生成并广播第一区块和第一区块消息;寻找本轮视图的主节点并对其合法性进行检查,并在验证节点中依次选择一个节点并广播所述节点的第二区块消息;基于接收到相同所述第二区块消息的节点数量和节点数量预设值之间的关系,生成并广播第三区块消息;基于接收到相同所述第三区块消息的节点数量和节点数量预设值之间的关系,生成并广播第四区块消息,并按照预设映射规则将映射为二进制数;重复执行对接收到的第四区块消息进行检查并统计的数量,判断其是否触发共识终止条件;当重复执行次数超过循环上限阈值R,则输出空区块。
在另一种可能的实现方式中,所述基于局部敏感哈希LSH算法对节点进行分类包括:根据LSH算法计算各个节点存储的商标数字证据的局部敏感哈希值lshi和各个节点间的局部敏感哈希值的汉明距离L(lshi,lshj),将满足L(lshi,lshj)≤θ的N个节点分为一组,共分为M组,其中,θ为预设值。
在另一种可能的实现方式中,基于随机评估方法和节点反馈值计算各个节点的评估得分包括:计算得到各个节点的诚信得分和质量得分;对所述诚信得分和所述质量得分进行整合得到综合得分;根据所述诚信得分、所述质量得分和所述综合得分,计算得到节点评估得分
在另一种可能的实现方式中,当所述共识委员会中的主节点产生故障,对所述共识委员会中的其他共识节点进行资格认证,所述资格认证包括基于节点公钥和签名一致性的PBFT相关认证和基于节点评估得分的可信度认证;将通过所述资格认证的共识节点转变为新的主节点。
为了解决上述技术问题,本申请实施例还提供一种融合数字证据的共识协议运行装置,包括:
节点分类模块,用于基于局部敏感哈希LSH算法对节点进行分类,将所述节点分为M类,每类包括N个节点,其中,所述节点存储有商标数字证据,所述M、N为大于1的正整数;
计算模块,用于基于随机评估方法和节点反馈值计算各个节点的评估得分,所述随机评估方法用于指示和衡量各个节点参与共识的可用性,所述节点反馈值包括除本节点之外的其他节点反馈的值;根据输入的商标数字证据和所述各个节点的评估得分,计算得到所述各个节点的声望值;
构建模块,用于根据所述各个节点的声望值,构建当前视图的共识委员会,所述共识委员会包括1个主节点和M-1个共识节点,其中,所述主节点基于所述共识节点发送的用户签名数据和数据分类请求对数据进行分类,得到分类结果,所述主节点执行隐私保护,并对所述用户签名数据和所述分类结果进行保护;所述共识节点接收所述分类结果;
通信模块,用于主节点接收客户端设备发送的请求消息并将所述请求消息广播给所述共识委员会中所有的共识节点,以及所述共识节点验证所述请求消息并在验证通过的情况下向其他共识节点发送准备消息且接收所述其他共识节点广播的准备消息进行验证;
验证触发模块,用于所述共识节点在通过验证后,触发共识机制,所述共识机制用于实现所述共识委员会中的主节点和共识节点达成共识;
广播更新模块,用于所述主节点和所述共识节点达成共识之后,所述主节点将确认结果广播给区块链上所有节点并同时更新所有节点的评估得分。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明实施例提供的融合数字证据的共识协议运行方法、装置、计算机设备及存储介质,通过将数字证据与区块链技术相结合,可以有效降低数字证据存证成本,有利于数字证据的审计溯源,另外,通过将PBFT共识算法、局部敏感哈希、隐私保护分类与随机评估模型相结合,可以计算得到各个节点的评估分数以及相似度,从而将其用于共识机制,使得节点可以参与共识过程并提高共识成功概率,进而提高整个系统的容错率及安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图。
图2是本申请的融合数字证据的共识协议运行方法的一个实施例的流程图。
图3是根据本申请的融合数字证据的共识协议运行装置的一个实施例的结构示意图。
图4是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,如图1所示,系统架构100可以包括节点设备110、120、130,区块链网络140和客户端设备150。节点设备110、120、130和客户端设备150可以自由进入和离开区块链网络140,通过局部敏感哈希算法可以对节点设备110、120、130进行分类,得到不同分组的节点,再从每类分组中选取一个节点设备组成共识委员会,利用该共识委员会可以对客户端设备150产生的数据进行隐私保护,以及完成后续的共识过程。
节点设备110、120、130可以是存储了商标信息(即商标数字证据)并提供各种服务的服务器,例如数据库服务器、文件服务器等。客户端设备150可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture E界面显示perts Group Audio Layer III,动态影像专家压缩标准音频层面3 )、MP4( Moving Picture E界面显示perts Group Audio Layer IV,动态影像专家压缩标准音频层面4 )播放器、膝上型便携计算机和台式计算机等等。
需要说明的是,本申请实施例所提供的融合数字证据的共识协议运行方法由共识协议运行系统执行,相应地,融合数字证据的共识协议运行装置设置于共识协议运行系统中。
应该理解,图1中的节点设备和客户端设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的节点设备和客户端设备,本申请实施例中的节点设备110、120、130具体可以对应的是实际生产中的区块链节点。
请参阅图2,图2示出本发明实施例提供的一种融合数字证据的共识协议运行方法,详述如下。
S201、基于局部敏感哈希LSH算法对节点进行分类,将所述节点分为M类,每类包括N个节点,其中,所述节点存储有商标数字证据,所述M、N为大于1的正整数。
具体地,利用LSH算法计算各个节点所存储的商标数字证据的局部敏感哈希值lshi和各个节点间的局部敏感哈希值的汉明距离L(lshi,lshj),将满足L(lshi,lshj)≤θ的N个节点分为一组,共分为M组,其中,θ为预设值。
对于同一组的N个节点来说,它们之间的汉明距离比较小,可以认为它们比较相似,因此,在经过LSH哈希函数映射后,其哈希值相等的概率很大。同理,对于不同分组的节点来说,它们之间的汉明距离比较大,可以认为它们是不相似的,在经过LSH哈希函数映射后,其哈希值相等的概率比较小。
S202、基于随机评估方法和节点反馈值计算各个节点的评估得分。
具体地,每个节点在本地采用随机评估结合其余节点的反馈值计算包括本身在内的所有节点的评估得分。
需要说明的是,采用随机评估的方法可以衡量节点参与共识的可用性,从而可以提高共识完成质量,并鼓励节点出色完成任务。
进一步的,节点的评估得分用于提高节点的声誉和共识支付,共识支付得分分为诚信得分和质量得分,诚信得分可以通过下列公式计算得到:
类似的,节点的质量得分可以通过下列公式计算得到:
在计算得到节点的诚信得分和质量得分之后,对它们进行整合得到综合得分,该综合得分可以通过下列公式计算得到:
最后综合以上公式进行计算,可以得到节点评估得分,节点评估得分可以通过下列公式计算得到:
S203、根据输入的商标数字证据和各个节点的评估得分,计算得到各个节点的声望值。
具体地,在对所有节点完成分类之后,根据不同商标数字证据输入以及各节点的评估得分可以计算得到各节点的声望值,该声望值用于表征节点的可信程度,以及参与共识成为共识节点的潜力。
S204、根据各个节点的声望值,构建当前视图的共识委员会。
具体地,从每类分组的节点中各选取一个节点,例如可以选择每组中声望值最高的节点,以此组成本轮视图的共识委员会,然后在其中选举一位主节点,共识委员会中的节点又可以称为共识节点,其中的每一个共识节点都可以在资格审查认证之后申请称为一个新的主节点。如果主节点的行为被检测出异常,将被视为无效节点。
共识委员会在组建完成后,系统将进入正常阶段,可以继续进行后续的数据处理和节点共识等过程。客户端可以发布区块消息(数字证据)并对其进行签名,然后将经过身份验证的数据发送到共识节点,共识节点检查认证后的数据,并将用户的签名和数据发送给主节点,这样可以避免恶意节点无法伪造用户的签名,提高了系统安全性。之后,共识节点请求主节点进行数据分类,主节点执行隐私保护,对数据及分类结果进行保护并将结果返回给共识节点。
需要说明的是,当共识节点计划测试分类结果时,共识节点生成请求并在其所在分类内的节点发布请求交易并记录所有交易。在验证请求的有效性后,主节点响应请求,并在区块链上发布响应交易。审核者可以利用来自共识节点和主节点的交易执行审计操作,以审计隐私保护数据以及分类结果的正确性,并在区块链上发布审计交易,因此任何节点都可以验证审计结果。
具体地,在数字证据隐私保护分类算法的具体运行过程中,首先输入安全参数λ及视图编号V,并输出此轮共识的公共参数PARAMS 、主私钥MSK、链路密钥MLK,然后输入公共参数PARAMS并输出用于主节点的密钥对(csk,cpk),设置系统公共参数spk=(PARAMS,cpk),之后再输入spk、签名密钥、对应节点的评估得分,输出签名σ。然后输入消息签名对(m,σ)以及spk,如果消息m上的签名σ有效,则输出1,否则输出0。共识节点输入spk和m-1个消息签名对以请求分类并输出Re。主节点输入spk、MSK、csk、Re以及消息签名对,执行隐私保护数据分类,输出Cate和。共识节点输入SPK与Cate对数据及分类结果进行采样并返回采样小组序列Group,主节点输入spk、MSK、Group序列、消息签名对、分类结果Cate和,并返回ϕ。审核者输入spk、链接密钥MLK和ϕ,并返回证明。
进一步的,在每一轮视图中,若共识节点欲转变为主节点,则必须通过资格认证。资格认证包括PBFT相关认证和可信度认证,PBFT相关认证要求节点的公钥和签名之间保持一致性,以确保隐私保护,后者检查共识节点的评估得分是否满足所设条件。主节点资格认证算法如下所示:
1.while IsConsensus() do
2. for each h ∈ H do
3. W ← W(h)
4. if W < ρ then
5. h[status] ← false
6. continue
7. end if
8. end for
9. for each c ∈ C do
10. T ← T(c)
11. if T(c) = = Max(T) then
12. continue
13. end if
14. c[status] ← true
15. end for
16. sleep(R)
17.end while
其中,该算法主要由共识节点集来执行,c和h分别代表主节点和共识节点,算法第2-8行重新验证当前共识节点集中各节点的资格,其中W(h)是基于上一轮共识中各节点值的函数,并返回该节点上一轮共识过程中节点的值。如果上报的共识节点的评估得分小于预先所设定阈值,则下一轮共识将判定该共识节点无效。同理,第9-15行验证新主节点的资格,如果在一轮共识开始前,若该共识节点的评估得分为所有节点中的最大值,那么该共识节点将成为一个主节点,T(c)是基于节点评估得分的函数,并返回该节点上一轮共识过程中节点的评估得分,每一轮共识R执行一次,可以有效避免过多的计算开销。
S205、主节点接收客户端设备发送的请求消息并将所述请求消息广播给共识委员会中所有的共识节点,共识节点验证该消息并在验证通过的情况下向其他共识节点发送准备消息且接收其他共识节点广播的准备消息并验证。
具体地,主节点接收到客户端设备的请求后,开始进入预准备阶段,主节点将消息广播给共识委员会中的所有共识节点,当共识节点接收到消息后,它将验证该消息,如果验证通过,则将进入准备阶段,如果验证失败,那么将不采取任何行动。
进一步的,若共识节点通过一个预准备消息,该节点则进入准备阶段,该节点向其余共识节点发送准备消息,同时,它也将收到其他共识节点广播的准备消息并进行验证,若通过验证,节点将进入响应阶段。
S206、共识节点在通过验证后,触发共识机制,所述共识机制用于实现所述共识委员会中的主节点和共识节点达成共识。
具体地,当节点进入响应阶段后,将触发共识机制,该节点将验证该消息并将结果反馈给主节点 。
首先,根据节点的评估得分选择主节点,在每一轮视图中,需要在共识委员会中选举一个主节点,之后每个步骤需要根据的规则选举验证Verifier节点,主节点负责广播区块消息,为节点评估得分预设值。接着,主节点生成并广播区块、区块消息,表示第r轮里节点i生成的区块,表示节点i在第r轮中第s步广播的消息,表示第r轮里步骤s中节点i私钥生成的凭证,其中,主节点在创建区块消息时通过利用临时密钥来签名消息,每轮r中的第s个步骤都有对应的临时密钥,在广播完区块消息后会销毁对应的临时密钥,以防止恶意节点控制主节点并广播恶意的区块消息。之后,寻找确定本轮视图的主节点,即最大的节点,对合法性进行检查,若符合条件,令,否则令,Verifier节点中逐次选择一个节点并广播其区块消息,可以通过下面公式计算得到:
若在接收到的节点中,有超过2/3数量的节点所接收到的与上述广播的相同且,则生成区块消息,否则生成区块消息,广播。若在接收到的节点中,有超过2/3数量的节点所接收到的且,则生成并广播,然后按照预设规则将节点评估得分映射为一位二进制数,预设规则如下:
S207、在所述主节点和所述共识节点达成共识之后,主节点将确认结果广播给区块链上所有节点并同时更新所有节点的评估得分。
具体地,在触发终止条件之后,可以判断出主节点与共识节点是否达成共识,并在达成共识的情况下,主节点广播确认结果至区块链上的所有节点,并更新所有节点的评估得分,至此,一个共识过程完全结束。更新之后的节点评估得分可以根据下列公式计算得到:
需要说明的是,当系统共识失败或发现恶意节点时,系统将触发视图切换机制,并且由于共识节点数量会随着节点评估得分的变化而可能发生变化,因此,每个共识节点在视图切换之前需要停止旧共识,且在视图切换完成后,需要计算节点本身的声望值后再重新启动新的共识,这样可以避免恶意节点参与共识过程,保证达成新一轮共识。
应理解,每个视图都是一个完整的PBFT算法,新的经过资格认证的主节点将在下一个视图开始后工作,不合格的主节点将在一个视图转换完成后将被逐出共识委员会,在视图切换期间内,系统将拒绝处理或提交任何交易,在切换期内,根据下一个客户端设备输入的商标信息数字证据,采用局部敏感哈希计算与节点的汉明距离,并基于节点在上一轮视图的评估得分,对节点进行选举,创建新一轮的视图共识委员会。
进一步的,对于得到的L(lshi,lshj)和,使用超参数来拟合两者分值,计算节点每轮共识后所有节点的可信度,并对节点进行排序。M类节点集中值最高的m个节点将成为新一轮视图共识委员会中的共识节点,其具体实现可以通过下列公式计算得到:
在本实施例中,通过将数字证据与区块链技术相结合,以及将PBFT共识算法、局部敏感哈希、隐私保护分类以及随机评估模型相结合,可以计算出节点的评估得分以及相似度,有效降低数字证据存证成本,利于数字证据的审计溯源,提高司法存证运维效率和系统的容错率及安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图3示出与上述实施例对应的融合数字证据的共识协议运行装置300的原理框图。如图3所示,该装置300包括节点分类模块310、计算模块320、构建模块330、通信模块340、验证触发模块350和广播更新模块360。各功能模块详细说明如下。
节点分类模块310,用于基于局部敏感哈希LSH算法对节点进行分类,将所述节点分为M类,每类包括N个节点,其中,所述节点存储有商标数字证据,所述M、N为大于1的正整数。
计算模块320,用于基于随机评估方法和节点反馈值计算各个节点的评估得分,所述随机评估方法用于指示和衡量各个节点参与共识的可用性,所述节点反馈值包括除本节点之外的其他节点反馈的值;根据输入的商标数据证据和所述各个节点的评估得分,计算得到所述各个节点的声望值。
构建模块330,用于根据所述各个节点的声望值,构建当前视图的共识委员会,所述共识委员会包括1个主节点和M-1个共识节点,其中,所述主节点基于所述共识节点发送的用户签名数据和数据分类请求对数据进行分类,得到分类结果,所述主节点执行隐私保护,并对所述用户签名数据和所述分类结果进行保护;所述共识节点接收所述分类结果。
通信模块340,用于主节点接收客户端设备发送的请求消息并将所述请求消息广播给所述共识委员会中所有的共识节点,以及所述共识节点验证所述请求消息并在验证通过的情况下向其他共识节点发送准备消息且接收所述其他共识节点广播的准备消息进行验证。
验证触发模块350,用于所述共识节点在通过验证后,触发共识机制,所述共识机制用于实现所述共识委员会中的主节点和共识节点达成共识。
广播更新模块360,用于所述主节点和所述共识节点达成共识之后,所述主节点将确认结果广播给区块链上所有节点并同时更新所有节点的评估得分。
关于融合数字证据的共识协议运行装置的具体限定可以参见上文中对于融合数字证据的共识协议运行方法的限定,在此不再赘述。上述融合数字证据的共识协议运行装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备400包括通过系统总线相互通信连接存储器410、处理器420、网络接口430。需要指出的是,图中仅示出了具有组件连接存储器410、处理器420、网络接口430的计算机设备400,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器 (Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器410至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或D界面显示存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器410可以是所述计算机设备400的内部存储单元,例如该计算机设备400的硬盘或内存。在另一些实施例中,所述存储器410也可以是所述计算机设备400的外部存储设备,例如该计算机设备400上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器410还可以既包括所述计算机设备400的内部存储单元也包括其外部存储设备。本实施例中,所述存储器410通常用于存储安装于所述计算机设备400的操作系统和各类应用软件,例如电子文件的控制的程序代码等。此外,所述存储器410还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器420在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器420通常用于控制所述计算机设备400的总体操作。本实施例中,所述处理器420用于运行所述存储器410中存储的程序代码或者处理数据,例如运行电子文件的控制的程序代码。
所述网络接口430可包括无线网络接口或有线网络接口,该网络接口430通常用于在所述计算机设备400与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有界面显示程序,所述界面显示程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (10)
1.一种融合数字证据的共识协议运行方法,其特征在于,所述方法包括:
基于局部敏感哈希LSH算法对节点进行分类,将所述节点分为M类,每类包括N个节点,其中,所述节点存储有商标数字证据,所述M、N为大于1的正整数;
基于随机评估方法和节点反馈值计算各个节点的评估得分,所述随机评估方法用于指示和衡量各个节点参与共识的可用性,所述节点反馈值包括除本节点之外的其他节点反馈的值;
根据输入的商标数字证据和所述各个节点的评估得分,计算得到所述各个节点的声望值;
根据所述各个节点的声望值,构建当前视图的共识委员会,所述共识委员会包括1个主节点和M-1个共识节点,其中,所述主节点基于所述共识节点发送的用户签名数据和数据分类请求对数据进行分类,得到分类结果,所述主节点执行隐私保护,并对所述用户签名数据和所述分类结果进行保护;所述共识节点接收所述分类结果;
所述主节点接收客户端设备发送的请求消息并将所述请求消息广播给所述共识委员会中所有的共识节点,所述共识节点验证所述请求消息并在验证通过的情况下向其他共识节点发送准备消息且接收所述其他共识节点广播的准备消息进行验证;
所述共识节点在通过验证后,触发共识机制,所述共识机制用于实现所述共识委员会中的主节点和共识节点达成共识;
在所述主节点和所述共识节点达成共识之后,所述主节点将确认结果广播给区块链上所有节点并同时更新所有节点的评估得分。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
当所述主节点和所述共识节点共识失败时,触发视图切换机制,所述共识委员会中的所有节点在视图切换完成之前停止旧共识。
3.如权利要求2所述的方法,其特征在于,所述当所述主节点和所述共识节点共识失败时,触发视图切换机制包括:
在视图切换完成后重新计算各个节点的声望值并启动新的共识过程;
将原主节点逐出共识委员会,并通过资格认证选出的新的主节点,所述新的主节点将在下一个视图开始工作。
4.如权利要求1或2所述的方法,其特征在于,所述共识节点在通过验证后,触发共识机制包括:
所述主节点生成并广播第一区块和第一区块消息;
寻找本轮视图的主节点并对其合法性进行检查,并在验证节点中依次选择一个节点并广播所述节点的第二区块消息;
基于接收到相同所述第二区块消息的节点数量和节点数量预设值之间的关系,生成并广播第三区块消息;
当重复执行次数超过循环上限阈值R+3,则输出空区块。
5.如权利要求1所述的方法,其特征在于,所述基于局部敏感哈希LSH算法对节点进行分类包括:
根据LSH算法计算各个节点存储的商标数字证据的局部敏感哈希值lshi和各个节点间的局部敏感哈希值的汉明距离L(lshi,lshj),将满足L(lshi,lshj)≤θ的N个节点分为一组,共分为M组,其中,θ为预设值。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
当所述共识委员会中的主节点产生故障,对所述共识委员会中的其他共识节点进行资格认证,所述资格认证包括基于节点公钥和签名一致性的PBFT相关认证和基于节点评估得分的可信度认证;
将通过所述资格认证的共识节点转变为新的主节点。
8.一种融合数字证据的共识协议运行装置,其特征在于,所述装置包括:
节点分类模块,用于基于局部敏感哈希LSH算法对节点进行分类,将所述节点分为M类,每类包括N个节点,其中,所述节点存储有商标数字证据,所述M、N为大于1的正整数;
计算模块,用于基于随机评估方法和节点反馈值计算各个节点的评估得分,所述随机评估方法用于指示和衡量各个节点参与共识的可用性,所述节点反馈值包括除本节点之外的其他节点反馈的值;根据输入的商标数据证据和所述各个节点的评估得分,计算得到所述各个节点的声望值;
构建模块,用于根据所述各个节点的声望值,构建当前视图的共识委员会,所述共识委员会包括1个主节点和M-1个共识节点,其中,所述主节点基于所述共识节点发送的用户签名数据和数据分类请求对数据进行分类,得到分类结果,所述主节点执行隐私保护,并对所述用户签名数据和所述分类结果进行保护;所述共识节点接收所述分类结果;
通信模块,用于主节点接收客户端设备发送的请求消息并将所述请求消息广播给所述共识委员会中所有的共识节点,以及所述共识节点验证所述请求消息并在验证通过的情况下向其他共识节点发送准备消息且接收所述其他共识节点广播的准备消息进行验证;
验证触发模块,用于所述共识节点在通过验证后,触发共识机制,所述共识机制用于实现所述共识委员会中的主节点和共识节点达成共识;
广播更新模块,用于所述主节点和所述共识节点达成共识之后,所述主节点将确认结果广播给区块链上所有节点并同时更新所有节点的评估得分。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211680209.8A CN115664684B (zh) | 2022-12-27 | 2022-12-27 | 融合数字证据的共识协议运行方法、装置及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211680209.8A CN115664684B (zh) | 2022-12-27 | 2022-12-27 | 融合数字证据的共识协议运行方法、装置及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115664684A CN115664684A (zh) | 2023-01-31 |
CN115664684B true CN115664684B (zh) | 2023-04-18 |
Family
ID=85022688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211680209.8A Active CN115664684B (zh) | 2022-12-27 | 2022-12-27 | 融合数字证据的共识协议运行方法、装置及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115664684B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113014635A (zh) * | 2021-02-19 | 2021-06-22 | 卓尔智联(武汉)研究院有限公司 | 区块链系统的节点类型划分方法、装置及区块链系统 |
CN113676541A (zh) * | 2021-08-23 | 2021-11-19 | 南昌航空大学 | 一种改进的pbft共识方法 |
WO2022027531A1 (zh) * | 2020-08-03 | 2022-02-10 | 西安电子科技大学 | 区块链构建方法、系统、存储介质、计算机设备及应用 |
CN115065468A (zh) * | 2022-07-15 | 2022-09-16 | 辽宁工程技术大学 | 一种基于分组信誉值的pbft共识优化方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11671241B2 (en) * | 2019-07-18 | 2023-06-06 | International Business Machines Corporation | Privacy-preserving fast approximate K-means clustering with hamming vectors |
US20210091926A1 (en) * | 2019-09-25 | 2021-03-25 | The Mitre Corporation | Assessing permissioned blockchains |
CN111464349A (zh) * | 2020-03-30 | 2020-07-28 | 南京中诚区块链研究院有限公司 | 区块链Raft+PBFT的混合共识网络算法及系统 |
CN111476548B (zh) * | 2020-04-16 | 2024-01-23 | 山东师范大学 | 一种基于区块链的职称评审方法及系统 |
-
2022
- 2022-12-27 CN CN202211680209.8A patent/CN115664684B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022027531A1 (zh) * | 2020-08-03 | 2022-02-10 | 西安电子科技大学 | 区块链构建方法、系统、存储介质、计算机设备及应用 |
CN113014635A (zh) * | 2021-02-19 | 2021-06-22 | 卓尔智联(武汉)研究院有限公司 | 区块链系统的节点类型划分方法、装置及区块链系统 |
CN113676541A (zh) * | 2021-08-23 | 2021-11-19 | 南昌航空大学 | 一种改进的pbft共识方法 |
CN115065468A (zh) * | 2022-07-15 | 2022-09-16 | 辽宁工程技术大学 | 一种基于分组信誉值的pbft共识优化方法 |
Non-Patent Citations (2)
Title |
---|
Sheng Gao.T-PBFT: An EigenTrust-based practical Byzantine fault tolerance consensus algorithm.China Communications.2019,第16卷(第12期),全文. * |
Wei Tong.Trust-PBFT: A PeerTrust-Based Practical Byzantine Consensus Algorithm.2019 International Conference on Networking and Network Applications (NaNA).2019,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115664684A (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110300172B (zh) | 一种区块链数据的共识方法及相关设备 | |
CN110288479B (zh) | 一种区块链数据的共识方法及相关设备 | |
US11233656B2 (en) | Method for mining a block in a decentralized blockchain consensus network | |
CN111414373B (zh) | 一种共识方法和共识系统 | |
WO2019227336A1 (zh) | 一种基于区块链的信息处理方法、装置及区块链网络 | |
WO2020258252A1 (zh) | 一种区块链数据的共识方法及相关设备 | |
CN111080295A (zh) | 一种基于区块链的电子合同处理方法以及设备 | |
CN111612600B (zh) | 区块链拍卖方法、设备、存储介质及区块链系统 | |
CN112738253B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN112632629B (zh) | 基于区块链的投票管理方法、装置、介质及电子设备 | |
CN111338608B (zh) | 分布式应用开发方法、装置、节点设备及可读存储介质 | |
CN113726784A (zh) | 一种网络数据的安全监控方法、装置、设备及存储介质 | |
CN114338666A (zh) | 对Fabric区块链跨链交易的验证方法、装置、设备及介质 | |
WO2021218334A1 (zh) | 过期数字证书管控方法、系统、装置及存储介质 | |
CN111639360A (zh) | 智能数据脱敏方法、装置、计算机设备及存储介质 | |
CN110543488A (zh) | 一种验证节点更新方法、装置及设备 | |
CN110598478A (zh) | 基于区块链的证据校验方法、装置、设备和存储介质 | |
US20180365786A1 (en) | System and Method for Verification of a Trust Status | |
CN115131022B (zh) | 基于区块链的数字资产交易方法、装置、设备及介质 | |
CN115664684B (zh) | 融合数字证据的共识协议运行方法、装置及相关设备 | |
CN112102078B (zh) | 区块链共识计算方法、装置、计算机设备及存储介质 | |
CN112069529B (zh) | 基于区块链的卷宗管理方法、装置、计算机以及存储介质 | |
CN112037062A (zh) | 交易共识方法、装置、电子设备及可读存储介质 | |
CN112037055A (zh) | 交易处理方法、装置、电子设备及可读存储介质 | |
CN112102079B (zh) | 业务数据的处理方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |