CN113486368A - 一种基于区块链技术的输入数据可信性验证方法及装置 - Google Patents

一种基于区块链技术的输入数据可信性验证方法及装置 Download PDF

Info

Publication number
CN113486368A
CN113486368A CN202110663306.5A CN202110663306A CN113486368A CN 113486368 A CN113486368 A CN 113486368A CN 202110663306 A CN202110663306 A CN 202110663306A CN 113486368 A CN113486368 A CN 113486368A
Authority
CN
China
Prior art keywords
data
intelligent contract
encrypted
block chain
input data
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.)
Pending
Application number
CN202110663306.5A
Other languages
English (en)
Inventor
高嵩
蔡超超
单进勇
石志国
章敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Shudu Technology Co ltd
Beijing Big Data Center
Original Assignee
Beijing Shudu Technology Co ltd
Beijing Big Data Center
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Shudu Technology Co ltd, Beijing Big Data Center filed Critical Beijing Shudu Technology Co ltd
Priority to CN202110663306.5A priority Critical patent/CN113486368A/zh
Publication of CN113486368A publication Critical patent/CN113486368A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及信息安全技术领域,特别是指一种基于区块链技术的输入数据可信性验证方法及装置,方法包括:获取所有参与者节点的实际数据,通过智能合约分别进行加密,将加密后的实际数据存储至区块链;对输入数据进行加密,将加密后的输入数据分享给给所有参与者节点;对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对加密后的秘密份额进行数据恢复,得到待验证数据;根据待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。采用本发明,可以验证输入数据的可信性,确保数据真实可信,避免参与方输入错误数据这一现象出现。

Description

一种基于区块链技术的输入数据可信性验证方法及装置
技术领域
本发明涉及信息安全技术领域,特别是指一种基于区块链技术的输入数据可信性验证方法及装置。
背景技术
区块链技术是比特币等民间数字货币的底层核心技术,融合了P2P网络、共识机制、密码等关键技术,具有去中心化、不可篡改、匿名性、可追溯性、开放透明等特点。
智能合约是区块链的一项核心技术,是应用系统与区块链系统进行交互的桥梁。智能合约基于区块链上不可篡改的数据,可以自动化的执行一些预先定义好的规则和条款。
大数据、云计算、物联网、区块链等新兴技术的迅猛发展,导致数据爆炸式增长,而这些数据又由不同的实体机构掌握。各实体机构希望能够实现数据共享,同时又不泄露自身数据。以隐私计算为例,隐私计算是信息安全领域一个十分热门的研究课题,可以让参与者节点在数据本身不对外泄露的前提下,实现数据分析计算的一类信息技术。隐私计算的应用场景十分广泛,已经应用于电子投票、保密拍卖、数据挖掘、保密查询、科学计算、数据统计等领域。
目前大多数隐私计算的实现方案都是在参与者节点为半诚实的情形下进行讨论,半诚实的情形即为参与者节点遵循协议执行,但是被攻击者控制并向其提供秘密输入、中间过程及自己的输出。对于更恶意的情形,例如在协议执行中,如果参与者节点被攻击者控制,不仅向其提供秘密输入、中间过程得到的信息和自己的输出,还能按照攻击者的指令更改原始输入、篡改交互信息及中断协议执行,通常是由半诚实的隐私计算进行扩展和推广得到,但是现有的隐私计算都无法避免参与者节点更改自己原始输入的问题。
在现实场景中,由于各数据拥有实体存在竞争关系,并不能保证各参与者节点在参与隐私计算时输入完整、真实的数据。比如政务部门通过隐私计算对各个公司进行效益评估,公司可以通过篡改、添加、删除部分数据使得隐私计算输出对自身公司有利的效益分。
结合区块链技术和智能合约,很多人提出新的隐私计算方案。例如,利用区块链构造时控承诺,承诺者要么在一定时间内揭示自己的秘密值,要么支付罚金,通过这种保证金机制实现公平隐私计算协议。但是到目前为止,并没有利用区块链技术来解决隐私计算输入可信的方案。
发明内容
本发明实施例提供了一种基于区块链技术的输入数据可信性验证方法及装置。所述技术方案如下:
一方面,提供了一种基于区块链技术的输入数据可信性验证方法,该方法应用于服务器,该方法包括:
获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链;
获取任一参与者节点的输入数据,通过智能合约对所述输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点;
通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;
通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对所述加密后的秘密份额进行数据恢复,得到待验证数据;
根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。
可选地,所述通过智能合约分别进行加密,包括:
通过智能合约使用具有同态性质的函数对所述实际数据分别进行加密。
可选地,所述同态性质的函数包括Pedersen承诺或ElGamal算法。
可选地,所述将加密后的秘密份额广播给所有参与者节点,包括:
通过智能合约采用Shamir门限将加密后的秘密份额分享给所有参与者节点。
可选地,所述根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证,包括:
通过智能合约将所述待验证数据与区块链中的加密后的实际数据进行对比,如果所述待验证数据与区块链中的加密后的实际数据相同,则判断所述输入数据可信,所述输入数据验证通过,如果所述待验证数据与区块链中的加密后的实际数据不相同,则判断所述输入数据不可信,所述输入数据验证不通过。
一方面,提供了一种基于区块链技术的输入数据可信性验证装置,该装置应用于服务器,该装置包括:
获取单元,用于获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链;
加密单元,用于获取任一参与者节点的输入数据,通过智能合约对所述输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点;
分享单元,用于通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;
恢复单元,用于通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对所述加密后的秘密份额进行数据恢复,得到待验证数据;
验证单元,用于根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。
可选地,所述获取单元,用于:
通过智能合约获取所有参与者节点的实际数据,使用具有同态性质的函数对所述实际数据分别进行加密。
可选地,所述同态性质的函数包括Pedersen承诺或ElGamal算法。
可选地,所述分享单元,用于:
通过智能合约采用Shamir门限将加密后的秘密份额分享给所有参与者节点。
可选地,所述验证单元,用于:
通过智能合约将所述待验证数据与区块链中的加密后的实际数据进行对比,如果所述待验证数据与区块链中的加密后的实际数据相同,则判断所述输入数据可信,所述输入数据验证通过,如果所述待验证数据与区块链中的加密后的实际数据不相同,则判断所述输入数据不可信,所述输入数据验证不通过。
一方面,提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述基于区块链技术的输入数据可信性验证方法。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述基于区块链技术的输入数据可信性验证方法。
本发明实施例提供的技术方案带来的有益效果至少包括:
上述方案中,本发明实施例针对多方计算场景中恶意参与方输入错误数据这一问题,利用区块链的不可篡改性,智能合约通过秘密分享方案将数据分享给所有参与者节点,智能合约对所有参与者节点将获得的秘密份额使用具有(半)同态性质的函数进行加密,并用这些秘密份额的密文恢复出整个密文,判断该密文和区块链上的密文是否相等。如果相等,那么参与者节点的输入就是真实可靠的;否则终止整个过程或者重新输入数据。这样,本发明将参与方数据通过区块链技术加密存储在分布式账本中,使用智能合约对参与方数据加密存证、验证和审计,确保数据真实可信,避免参与方输入错误数据这一现象出现。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种实施环境图;
图2是本发明实施例提供的一种基于区块链技术的输入数据可信性验证方法流程图;
图3是本发明实施例提供的一种基于区块链技术的输入数据可信性验证方法流程图;
图4是本发明实施例提供的一种基于区块链技术的输入数据可信性验证装置的结构框图;
图5是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明实施例提供了一种基于区块链技术的输入数据可信性验证方法,如图1所示,该实施环境可以包括至少一个服务器101、用于存储加密数据的区块链102、以及多个参与者节点103。
搭建该实施环境的步骤主要包括:
1)搭建一个用以多方计算的区块链系统框架。
2)基于双线性映射和乘法循环群生成系统公共参数和主密钥对服务器进行初始化。
3)各个参与方使用Register(ID,address)函数在区块链中注册新节点。
服务器101实现该基于区块链技术的输入数据可信性验证方法,服务器预先获取多个参与者节点的实际数据。实际数据是真实的数据,在实际应用场景中,系统是可以获取到参与者节点的真实数据的,主要原因有四:第一数据是以某种密文的方式存储在区块链上,不会泄露数据的任何信息,实体机构无需造假;第二实体机构无法判断产生的数据何时或哪部分数据参与隐私计算,从一开始就造假成本很高;第三可以通过可信第三方佐证数据的真实性;第四这些数据还会受政府部门的监管与审计。
服务器上存储有智能合约,通过智能合约将实际数据进行加密,并将加密的数据存储在区块链上,区块链具有不可篡改性,上链的数据也就具有不可篡改性,可以对参与者节点的输入数据的可信性进行验证。服务器对参与者节点的输入数据进行加密以及分享,参与者节点向服务器传递输入数据后,接收服务器分享的数据,服务器对加密分享后的数据进行恢复,对恢复的数据进行验证。
本发明实施例提供了一种基于区块链技术的输入数据可信性验证方法,该方法可以由服务器实现。如图2所示的基于区块链技术的输入数据可信性验证方法流程图,该方法的处理流程可以包括如下的步骤:
步骤201、获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链。
一种可行的实施方式中,如图3所示,设定所有参与者节点为P1,P2,...,Pn,实际数据为d1,d2,...,dn。在智能合约对数据进行加密时,优选地,可以使用具有(半)同态性质的函数对实际数据分别进行加密,例如,同态性质的函数可以包括Pedersen承诺或EIGamal算法。可以设定同态性质的函数为E(·),这样,加密后的实际数据为E(d1),E(d2),...,E(dn)。需要说明的是,E(·)具有加法同态性质,因此满足E(x+y)=E(x)+E(y)。
步骤202、获取任一参与者节点的输入数据,通过智能合约对输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点。
一种可行的实施方式中,智能合约对输入数据进行加密的算法与对实际数据进行加密的算法是相同的。设定输入数据为m1,m2,...mn,则加密后的输入数据为E(m1),E(m2),...,E(mn)。设定用[m]=(m(1),m(2),...,m(n))表示对m的一个秘密分享,智能合约将秘密份额m(i)发送给参与者Pi,1≤i≤n。可选地,采用Shamir门限将加密后的秘密份额分享给所有参与者节点,这样可以无需全部参与者参与计算,只要达到t个参与者(t<n)即可验算。
步骤203、通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点。
一种可行的实施方式中,对于数据mi,智能合约计算参与者节点Pj
Figure BDA0003115999590000061
并将其广播给其他所有参与者节点。
步骤204、通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对加密后的秘密份额进行数据恢复,得到待验证数据。
一种可行的实施方式中,可以将智能合约利用秘密份额
Figure BDA0003115999590000071
恢复mi的过程记为Reconstruction([m])=m,智能合约计算参与者Pj
Figure BDA0003115999590000072
即为待验证数据。
步骤205、根据待验证数据与区块链中的加密后的实际数据,对输入数据进行验证。
一种可行的实施方式中,将待验证数据与区块链中的加密后的实际数据进行对比,如果待验证数据与区块链中的加密后的实际数据相同,则判断输入数据可信,输入数据验证通过,如果待验证数据与区块链中的加密后的实际数据不相同,则判断输入数据不可信,输入数据验证不通过,转回执行步骤202,或终止整个过程。
本发明实施例利用区块链的不可篡改性,智能合约通过秘密分享方案将数据分享给所有参与者节点,智能合约对所有参与者节点将获得的秘密份额使用具有(半)同态性质的函数进行加密,并用这些秘密份额的密文恢复出整个密文,判断该密文和区块链上的密文是否相等。如果相等,那么参与者节点的输入就是真实可靠的;否则终止整个过程或者重新输入数据。这样,本发明将参与方数据通过区块链技术加密存储在分布式账本中,使用智能合约对参与方数据加密存证、验证和审计,确保数据真实可信,避免参与方输入错误数据这一现象出现。
本发明实施例提供了一种基于区块链技术的输入数据可信性验证方法的具体实施场景,该方法可以由服务器实现。假设区块链构建、系统初始化、参与方已注册,本发明中的函数E(·)使用Pedersen承诺,即E(mi,ri)=mi*G+ri*H,其中G和H是椭圆曲线上的点,且logG H未知。E(mi,ri)存储在区块链上任何人都无法篡改。隐私计算的n个参与者节点记为P1,P2,...,Pn。那么对于数据mi和ri使用Shamir秘密分享方案,按照下面的步骤分享给所有参与者节点:
S1.智能合约针对参与者节点Pi随机生成多项式pi(x)=a0+a1x+a2x2+…+at-1xt-1∈Fp[x],其中a0=mi
S2.智能合约计算pi(j),并发送给参与者节点Pj
S3.智能合约针对参与者节点Pi随机生成多项式qi(x)=b0+b1x+b2x2+…+bt-1xt-1∈Fp[x],其中b0=ri
S4.智能合约计算qi(j),并发送给参与者节点Pj
S5.智能合约计算每个参与者节点Pj获得的秘密分享
Figure BDA0003115999590000081
Figure BDA0003115999590000082
计算
Figure BDA0003115999590000083
并发送给其他参与者,其中
Figure BDA0003115999590000084
S6.智能合约根据每个参与者节点接收到的
Figure BDA0003115999590000085
计算
Figure BDA0003115999590000086
S7.如果sum和区块链中的数据相等,说明参与者节点Pi秘密分享[mi]给所有参与者是正确的;否则参与者节点Pi重新分享mi,或者终止整个过程。
此外,本发明实施例中的函数E(·)还可以使用EIGamal等具有加法或乘法同态性质的加密算法,除Shamir秘密分享方案外,也可使用其他的秘密分享方案。
本发明实施例针对多方计算场景中恶意参与方输入错误数据这一问题,利用区块链的不可篡改性,智能合约通过秘密分享方案将数据分享给所有参与者节点,智能合约对所有参与者节点将获得的秘密份额使用具有(半)同态性质的函数进行加密,并用这些秘密份额的密文恢复出整个密文,判断该密文和区块链上的密文是否相等。如果相等,那么参与者节点的输入就是真实可靠的;否则终止整个过程或者重新输入数据。这样,本发明将参与方数据通过区块链技术加密存储在分布式账本中,使用智能合约对参与方数据加密存证、验证和审计,确保数据真实可信,避免参与方输入错误数据这一现象出现。
本发明实施例提供了一种基于区块链技术的输入数据可信性验证方法的应用场景,该方法可以由服务器实现,用于解决百万富翁问题:
考虑百万富翁问题的一个现实场景:两个富翁(Alice和Bob)在多家银行都有存款分别为v1,v2,...,vw和u1,u2,...,uz,银行将这些数据的Pedersen承诺都存储到区块链上,即Ai=vi*G+ri*H,1≤i≤w和Bi=ui*G+ri′*H,1≤i≤z。Alice和Bob分别将各自的账户余额v=v1+…+vw和u=u1+…+uz做秘密分享,采用本发明的方法来验证u和v的正确性,再使用隐私计算来比较谁更富有,这样可以保证Alice和Bob输入的金额都是正确的。
本发明实施例提供了一种基于区块链技术的输入数据可信性验证方法的应用场景,该方法可以由服务器实现,用于解决政务管理中对多个公司安全地进行效益评估的问题:
当政府评估部门向各个公司发送安全效益评估要求时,各个公司响应政府的号召,通过对各个公司财政数据进行隐私计算,最终针对不同的公司获得相应的效益评估分数并划分等级。
在计算效益评估分数时,各个公司可能会根据公司自身的情况修改、添加、删除部分数据以获得对公司有利的结果。例如A公司本身有多个方向的业务,但是在提供财政数据用于计算效益分数时,会选择性地将某部分效益比较差的业务数据和效益比较好的业务数据进行交换(造成公司效益较差的假象),最终得到比实际情况低的效益分数,从而公司可能会偷税漏税。
通过本发明,将各个公司的业务数据加密上链,再在隐私计算时对各个公司提供的数据进行验证,可以有效避免公司临时篡改数据,确保隐私计算输入的有效性。
图4是根据一示例性实施例示出的一种基于区块链技术的输入数据可信性验证装置的结构框图。参照图4,该装置包括获取单元401、加密单元402、分享单元403、恢复单元404、验证单元405。
获取单元401,用于获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链;
加密单元402,用于获取任一参与者节点的输入数据,通过智能合约对输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点;
分享单元403,用于通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;
恢复单元404,用于通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对加密后的秘密份额进行数据恢复,得到待验证数据;
验证单元405,用于根据待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。
可选地,获取单元401,用于:
通过智能合约获取所有参与者节点的实际数据,使用具有同态性质的函数对实际数据分别进行加密。
可选地,同态性质的函数包括Pedersen承诺或ElGamal算法。
可选地,分享单元403,用于:
通过智能合约采用Shamir门限将加密后的秘密份额分享给所有参与者节点。
可选地,验证单元405,用于:
通过智能合约将待验证数据与区块链中的加密后的实际数据进行对比,如果待验证数据与区块链中的加密后的实际数据相同,则判断输入数据可信,输入数据验证通过,如果待验证数据与区块链中的加密后的实际数据不相同,则判断输入数据不可信,输入数据验证不通过。
本发明实施例针对多方计算场景中恶意参与方输入错误数据这一问题,利用区块链的不可篡改性,智能合约通过秘密分享方案将数据分享给所有参与者节点,智能合约对所有参与者节点将获得的秘密份额使用具有(半)同态性质的函数进行加密,并用这些秘密份额的密文恢复出整个密文,判断该密文和区块链上的密文是否相等。如果相等,那么参与者节点的输入就是真实可靠的;否则终止整个过程或者重新输入数据。这样,本发明将参与方数据通过区块链技术加密存储在分布式账本中,使用智能合约对参与方数据加密存证、验证和审计,确保数据真实可信,避免参与方输入错误数据这一现象出现。
图5是本发明实施例提供的一种服务器500的结构示意图,该服务器500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)501和一个或一个以上的存储器502,其中,所述存储器502中存储有至少一条指令,所述至少一条指令由所述处理器501加载并执行以实现下述基于区块链技术的输入数据可信性验证方法的步骤:
获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链;
获取任一参与者节点的输入数据,通过智能合约对所述输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点;
通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;
通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对所述加密后的秘密份额进行数据恢复,得到待验证数据;
根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述基于区块链技术的输入数据可信性验证方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于区块链技术的输入数据可信性验证方法,其特征在于,所述方法包括:
获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链;
获取任一参与者节点的输入数据,通过智能合约对所述输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点;
通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;
通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对所述加密后的秘密份额进行数据恢复,得到待验证数据;
根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。
2.根据权利要求1所述的方法,其特征在于,所述通过智能合约分别进行加密,包括:
通过智能合约使用具有同态性质的函数对所述实际数据分别进行加密。
3.根据权利要求2所述的方法,其特征在于,所述同态性质的函数包括Pedersen承诺或ElGamal算法。
4.根据权利要求1所述的方法,其特征在于,所述将加密后的秘密份额广播给所有参与者节点,包括:
通过智能合约采用Shamir门限将加密后的秘密份额分享给所有参与者节点。
5.根据权利要求1所述的方法,其特征在于,所述根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证,包括:
通过智能合约将所述待验证数据与区块链中的加密后的实际数据进行对比,如果所述待验证数据与区块链中的加密后的实际数据相同,则判断所述输入数据可信,所述输入数据验证通过,如果所述待验证数据与区块链中的加密后的实际数据不相同,则判断所述输入数据不可信,所述输入数据验证不通过。
6.一种基于区块链技术的输入数据可信性验证装置,其特征在于,所述装置包括:
获取单元,用于获取所有参与者节点的实际数据,通过智能合约分别进行加密,并通过智能合约将加密后的实际数据存储至区块链;
加密单元,用于获取任一参与者节点的输入数据,通过智能合约对所述输入数据进行加密,将加密后的输入数据通过秘密分享算法,通过智能合约分享给给所有参与者节点;
分享单元,用于通过智能合约获取每个参与者节点接收到的秘密份额,通过智能合约对每个秘密份额分别进行加密,并将加密后的秘密份额广播给所有参与者节点;
恢复单元,用于通过智能合约获取所有参与者节点接收到的加密后的秘密份额,通过智能合约对所述加密后的秘密份额进行数据恢复,得到待验证数据;
验证单元,用于根据所述待验证数据与区块链中的加密后的实际数据,通过智能合约对输入数据进行验证。
7.根据权利要求6所述的装置,其特征在于,所述获取单元,用于:
通过智能合约获取所有参与者节点的实际数据,使用具有同态性质的函数对所述实际数据分别进行加密。
8.根据权利要求7所述的装置,其特征在于,所述同态性质的函数包括Pedersen承诺或ElGamal算法。
9.根据权利要求6所述的装置,其特征在于,所述分享单元,用于:
通过智能合约采用Shamir门限将加密后的秘密份额分享给所有参与者节点。
10.根据权利要求6所述的装置,其特征在于,所述验证单元,用于:
通过智能合约将所述待验证数据与区块链中的加密后的实际数据进行对比,如果所述待验证数据与区块链中的加密后的实际数据相同,则判断所述输入数据可信,所述输入数据验证通过,如果所述待验证数据与区块链中的加密后的实际数据不相同,则判断所述输入数据不可信,所述输入数据验证不通过。
CN202110663306.5A 2021-06-15 2021-06-15 一种基于区块链技术的输入数据可信性验证方法及装置 Pending CN113486368A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110663306.5A CN113486368A (zh) 2021-06-15 2021-06-15 一种基于区块链技术的输入数据可信性验证方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110663306.5A CN113486368A (zh) 2021-06-15 2021-06-15 一种基于区块链技术的输入数据可信性验证方法及装置

Publications (1)

Publication Number Publication Date
CN113486368A true CN113486368A (zh) 2021-10-08

Family

ID=77935166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110663306.5A Pending CN113486368A (zh) 2021-06-15 2021-06-15 一种基于区块链技术的输入数据可信性验证方法及装置

Country Status (1)

Country Link
CN (1) CN113486368A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114417389A (zh) * 2022-03-28 2022-04-29 南京金宁汇科技有限公司 一种区块链中加法同态加密用户资产额度的存储方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114417389A (zh) * 2022-03-28 2022-04-29 南京金宁汇科技有限公司 一种区块链中加法同态加密用户资产额度的存储方法

Similar Documents

Publication Publication Date Title
Alketbi et al. Blockchain for government services—Use cases, security benefits and challenges
Bagga et al. Blockchain-based batch authentication protocol for Internet of Vehicles
Liu et al. NormaChain: A blockchain-based normalized autonomous transaction settlement system for IoT-based E-commerce
CN108418689B (zh) 一种适合区块链隐私保护的零知识证明方法和介质
JP2023109981A (ja) 低エントロピーパスワードを用いてブロックチェーントランザクションを許可するためのコンピュータ実装されたシステム及び方法
Lin et al. Ppchain: A privacy-preserving permissioned blockchain architecture for cryptocurrency and other regulated applications
Azad et al. M2m-rep: Reputation system for machines in the internet of things
Li et al. Privacy‐aware PKI model with strong forward security
CN111694895A (zh) 区块链远程数据审计方法、系统
CN110867012A (zh) 一种基于智能合约的去中心电子投票方法、装置、系统及存储介质
Zheng et al. An organization-friendly blockchain system
Islam et al. A low-cost cross-border payment system based on auditable cryptocurrency with consortium blockchain: Joint digital currency
Huang et al. A blockchain-based self-tallying voting protocol with maximum voter privacy
Jiang et al. SearchBC: A blockchain-based PEKS framework for IoT services
Tomaz et al. Blockchain-based whistleblowing service to solve the problem of journalistic conflict of interest
Ficsór et al. Wabisabi: Centrally coordinated coinjoins with variable amounts
CN113486368A (zh) 一种基于区块链技术的输入数据可信性验证方法及装置
Li et al. A new revocable reputation evaluation system based on blockchain
US11782758B2 (en) Distributed computing system and method of operation thereof
Li et al. Cryptoeconomics: Economic Mechanisms Behind Blockchains
Sakho et al. Privacy protection issues in blockchain technology
CN111353780A (zh) 授权验证方法、装置及存储介质
Wahab Privacy in blockchain systems
Maram Bitcoin generation using Blockchain technology
Feng et al. A Secure Multi-party Computation Protocol Combines Pederson Commitment with Schnorr Signature for Blockchain

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