区块链供应链交易隐藏静态监管系统及方法与流程

文档序号:20758137发布日期:2020-05-15 17:40阅读:224来源:国知局
区块链供应链交易隐藏静态监管系统及方法与流程

本发明涉及区块链技术领域,尤其涉及一种区块链供应链交易隐藏静态监管系统及方法。



背景技术:

现有的区块链供应链系统,将核心企业节点设备、供应商节点设备、保理商节点设备及银行节点设备等通过区块链联系了起来。核心企业节点设备、供应商节点设备、保理商节点设备及银行节点设备等作为区块链节点加入区块链供应链系统时,需要经过授权才能加入,区块链节点之间具有一定的信任基础,通过应收账款、票据凭证、抵押货物凭证等交易数据上链的方式增强了数据的可信性。

然而,这些交易数据中往往存在商业机密,将交易数据明文上链,导致了商业机密和个人隐私的泄露,且没有监管机构的监管。

因此,有必要提供一种区块链供应链交易隐藏静态监管方案。



技术实现要素:

本发明的主要目的在于提供一种区块链供应链交易隐藏静态监管系统及方法,旨在解决区块链供应链中交易数据明文上链导致隐私泄露且无监管的技术问题。

为实现上述目的,本发明的第一方面提供一种区块链供应链交易隐藏静态监管系统,所述系统包括:

核心企业节点设备,用于基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数,并基于所述随机数利用哈希函数生成非交互式零知识证明参数,对包括所述验证参数及所述非交互式零知识证明参数的交易数据进行签名并上传至区块链供应链平台;

一级供应商节点设备,用于利用所述区块链供应链平台接收所述交易数据并基于所述非交互式零知识证明参数对所述验证参数进行验证;

监管机构节点设备,用于从所述区块链供应链平台上获取所述交易数据中的验证参数,并基于所述验证参数确定所述应付款以实现对所述应付款的监管;

所述区块链供应链平台,用于存储交易数据。

根据本发明的一个可选实施例,所述核心企业节点设备基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数包括:

获取第一系统参数、第二系统参数与第三系统参数,其中所述第三系统参数为所述监管机构利用私钥计算得到的系统参数;

利用所述第一系统参数、所述第二系统参数、所述第三系统参数、所述应付款以及选取的第一随机数确定符合elgamal承诺的第一验证参数;

利用所述第一系统参数、所述第二系统参数以及所述第一随机数确定符合elgamal承诺的第二验证参数。

根据本发明的一个可选实施例,所述核心企业节点设备基于选取的随机数利用哈希函数生成非交互式零知识证明参数包括:

利用所述第一系统参数、所述第二系统参数、所述第三系统参数、所述第二随机数以及所述第三随机数确定第一待哈希参数;

利用所述第一系统参数、所述第二系统参数以及所述第二随机数确定第二待哈希参数;

利用所述哈希函数计算所述第一待哈希参数与所述第二待哈希参数的哈希结果,将所述哈希结果作为挑战参数;

利用所述挑战参数、所述第一随机数、所述第二随机数、所述第三随机数、以及所述应付款生成所述非交互式零知识证明参数。

根据本发明的一个可选实施例,所述监管机构节点设备从所述区块链供应链平台上获取所述交易数据中的所述验证参数,并基于所述验证参数确定所述应付款以实现对所述应付款的监管包括:

从所述区块链供应链平台上获取所述第一验证参数和所述第二验证参数;

利用所述第一验证参数、所述第二验证参数以及所述监管机构节点设备的私钥确定所述应付款的参数;

确定所述应付款的范围;

遍历所述范围内的每个数据直至确定符合所述应付款的参数的应付款。

根据本发明的一个可选实施例,所述一级供应商节点设备,还用于:

将所述交易数据中的utxo拆分为第一utxo和第二utxo,其中,所述第一utxo中的金额和第二utxo中的金额之和等于所述utxo中的金额;

基于所述第一utxo和第二utxo与其他区块链实体节点设备进行交易;

基于bulletproof对所述第一utxo和第二utxo进行范围证明。

根据本发明的一个可选实施例,所述一级供应商节点设备或者所述其他区块链实体节点设备,还用于当所述应付款到期后,向所述核心企业节点设备兑付应付款,响应于所述应付款兑付成功,将持有的utxo进行无效化签名或者返还给所述核心企业节点设备。

根据本发明的一个可选实施例,所述系统还包括:

至少一个风险评估机构节点设备,用于读取所述区块链供应链平台上存储的交易数据,使用预先训练好的风险评估模型对所述交易数据进行风险评估,并将风险评估结果发送给所述其他区块链实体节点设备。

为实现上述目的,本发明的第二方面提供一种区块链供应链交易隐藏静态监管方法,所述方法包括:

通过核心企业节点设备基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数,并基于所述随机数利用哈希函数生成非交互式零知识证明参数,对包括所述验证参数及所述非交互式零知识证明参数的交易数据进行签名并上传至区块链供应链平台;

通过一级供应商节点设备利用所述区块链供应链平台接收所述交易数据并基于所述非交互式零知识证明参数对所述验证参数进行验证;

通过监管机构节点设备从所述区块链供应链平台上获取所述交易数据中的验证参数,并基于所述非交互式零知识证明参数实现对所述验证参数中的应付款的监管。

根据本发明的一个可选实施例,所述方法还包括:

通过所述一级供应商节点设备将所述交易数据中的utxo拆分为第一utxo和第二utxo,其中,所述第一utxo中的金额和第二utxo中的金额之和等于所述utxo中的金额;

基于所述第一utxo和第二utxo与其他区块链实体节点设备进行交易;

基于bulletproof对所述第一utxo和第二utxo进行范围证明。

根据本发明的一个可选实施例,所述方法还包括:

通过至少一个风险评估机构节点设备读取所述区块链供应链平台上存储的交易数据,使用预先训练好的风险评估模型对所述交易数据进行风险评估,并将风险评估结果发送给所述其他区块链实体节点设备。

本发明实施例所述的区块链供应链交易隐藏静态监管系统及方法,通过引入eigamal承诺和非交互式零知识证明的概念,将核心企业的明文应付款加密成机密交易并上链,只有交易双方能够解密机密交易中的金额,保护了交易隐私不被泄露,保障了区块链实体商业机密。而监管机构在获取到第一验证参数和第二验证参数后,通过计算将相同参数抵消,并带入监管机构私钥即可确定交易数据,实现对交易数据的监管。

附图说明

图1为本发明实施例的区块链供应链交易隐藏静态监管系统的架构示意图;

图2为本发明实施例的区块链供应链交易隐藏静态监管系统的架构示意图;

图3为本发明实施例的区块链供应链交易隐藏静态监管方法的流程示意图;

图4为本发明实施例的区块链节点设备的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

如图1所示,为本发明实施例的区块链供应链交易隐藏静态监管系统的架构示意图。

区块链供应链交易隐藏静态监管系统1可以包括,但不限于:区块链供应链平台10、核心企业节点设备11、一级供应商节点设备12、其他区块链实体节点设备13及监管机构节点设备14。

在一个可选的实施例中,所述其他区块链实体节点设备13可以包括以下一种或多种的组合:二级供应商节点设备13、银行节点设备13、保理商节点设备13。所述核心企业、一级供应商、二级供应商、银行、保理商均称之为区块链实体。所述核心企业节点设备11、一级供应商节点设备12、二级供应商节点设备13、银行节点设备13、保理商节点设备13称之为区块链实体节点设备。

区块链实体在接入区块链供应链平台10之前,先向证书颁发机构(certificateauthority,ca)申请数字证书。ca在判明申请者的身份后,便为申请者分配一个公钥,同时将分配的公钥与申请者的身份信息关联起来并签字后形成数字证书发给申请者。后续,当区块链实体接入区块链供应链平台10时,区块链供应链平台10使用ca的公钥对接入的区块链实体的数字证书上的签字进行验证,当验证通过,则数字证书被认为是有效的,允许区块链实体接入区块链供应链平台10,当验证失败,则数字证书被认为是无效的,拒绝区块链实体接入区块链供应链平台10。所述数字证书的内容包括:电子签证机关的信息、公钥用户信息、公钥、签字和有效期等等。

在一些实施例中,核心企业节点设备11,用于基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数,并基于所述随机数利用哈希函数生成非交互式零知识证明参数,对包括所述验证参数及所述非交互式零知识证明参数的交易数据进行签名并上传至区块链供应链平台10。

示例性的,核心企业购买一级供应商的产品并承诺应付款,一级供应商可基于所述应付款的一部分购买二级供应商的产品,二级供应商可以进一步将一级供应商承诺的应付款拆分后购买其他二级供应商的产品,以此类推。保理商可以购买一级供应商、二级供应商持有的应付款。银行可以基于供应商的应付款提供贷款。

为了避免交易隐私被泄露,核心企业购买一级供应商的产品并承诺应付款之后,核心企业通过核心企业节点设备11对所述应付款进行加密得到机密交易,确保了核心企业与一级供应商之间的交易隐私。

在一个可选的实施例中,所述核心企业节点设备11基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数包括:

获取第一系统参数g、第二系统参数n与第三系统参数h,其中所述第三系统参数h为所述监管机构利用私钥t计算得到的系统参数;

利用所述第一系统参数g、所述第二系统参数n、所述第三系统参数h、所述应付款x以及选取的第一随机数r确定符合elgamal承诺的第一验证参数e=gxhrmodn;

利用所述第一系统参数g、所述第二系统参数n以及所述第一随机数r确定符合elgamal承诺的第二验证参数f=grmodn。

在该可选的实施例中,所述第一系统参数g、所述第二系统参数n、所述第三系统参数h均为公开的参数。所述第一系统参数g是椭圆曲线群生成元,所述第二系统参数n可以是一个自然数,所述第三系统参数h=gtmodn。第一随机数r是由核心企业随机选择的一个数。由于第一验证参数e、第二验证参数f均是加密后的数据,并不能直接通过第一验证参数e、第二验证参数f确定应付款x,因而所述核心企业节点设备11将第一验证参数e和第二验证参数f上传至区块链供应链平台10,则一级供应商节点设备12在获取到交易数据后,即可获取第一验证参e数和第二验证参数f,并利用eigamal承诺验证交易数据的真实性。

在一个可选的实施例中,所述核心企业节点设备11基于选取的随机数利用哈希函数生成非交互式零知识证明参数包括:

利用所述第一系统参数g、所述第二系统参数n、所述第三系统参数h、所述第二随机数ω以及所述第三随机数σ确定第一待哈希参数w1=gσhωmodn;

利用所述第一系统参数g、所述第二系统参数n以及所述第二随机数ω确定第二待哈希参数w2=gωmodn;

利用所述哈希函数h()计算所述第一待哈希参数与所述第二待哈希参数的哈希结果,将所述哈希结果作为挑战参数c=h(w1||w2);

利用所述挑战参数c、所述第一随机数r、所述第二随机数ω、所述第三随机数σ、以及所述应付款x生成所述非交互式零知识证明参数(c,d,d1),其中,d=ω+cr,d1=σ+cx。

在一些实施例中,一级供应商节点设备12用于利用所述区块链供应链平台接收所述交易数据并基于所述非交互式零知识证明参数对所述验证参数进行验证。

具体地,一级供应商节点设备12接收到非交互式零知识证明参数(c,d,d1),验证是否c=h(gd1hded-cmodn||gdf-cmodn),如果验证通过,则验证方确认e和f隐藏了相同的第一随机数r。一级供应商节点设备12通过非交互式零知识证明的方式对第一验证参数和第二验证参数的真实性进行验证,从而保证第一验证参数和第二验证参数计算得到的应付款为真实数据。

一级供应商作为核心企业应付款的接收方,通过一级供应商节点设备12接收核心企业节点设备11发送的验证参数。核心企业可以通过密钥协商等方式告知一级供应商应付款x及第一随机数r。

在一个可选的实施例中,所述一级供应商节点设备12,还用于将所述交易数据中的utxo拆分为第一utxo和第二utxo,基于所述第一utxo和第二utxo与其他区块链实体节点设备进行交易。

所述一级供应商节点设备12将交易数据发送给所述区块链供应链平台10进行存储。

在该可选的实施例中,所述第一utxo中的金额和第二utxo中的金额之和等于所述utxo中的金额。

一级供应商可以将机密交易中的utxo拆分后交易给二级供应商、保理商或者通过银行进行抵押贷款。二级供应商、保理商或者银行接收到拆分后的utxo可以进一步进行拆分并交易。一旦拆分后的utxo被使用后,原来的utxo就不再可用,但是关于原来的utxo的交易数据依旧会记录在区块链供应链平台上,供溯源和查询。

在一个可选的实施例中,所述一级供应商节点设备12,还用于基于bulletproof对所述第一utxo和第二utxo进行范围证明。

在该可选的实施例中,当一笔utxo0拆分成utxo1和utxo2时,可以使用pedersen承诺的加法同态性,得到utxo0=utxo1+utxo2,并且可以使用bulletproof算法证明拆分后的utxo1和utxo2中的金额均为合法值,即utxo中的金额为一定范围内的正数。

示例性的,假设该utxo的持有者可以将其拆分为utxo1和utxo2。使用加法同态性得到:由此可见,x0=x1+x2,如此保证了两笔utxo中的金额之和等于原utxo所隐藏的金额。于此同时,使用bulletproof算法生成范围证明,用于证明utxo1和utxo2中的金额在合理范围内。举例来说,金额的范围可以设置为[0,2^32-1]。关于bulletproof算法生成范围证明的过程,为现有技术,本发明不再详细赘述。

需要说明的是,上述实施例中以将utxo拆分为两个子utxo为例进行了说明,实际上一级供应商节点设备也可以将utxo拆分成3份或者更多份,以更灵活的与二级供应商进行交易。

在一个可选的实施例中,所述一级供应商节点设备12或者所述其他区块链实体节点设备13,还用于当所述应付款到期后,向所述核心企业节点设备兑付应付款,响应于所述应付款兑付成功,将持有的utxo进行无效化签名或者返还给所述核心企业节点设备。

所述utxo中标记了应付款的到期时间戳。

当持有utxo的区块链实体(例如,一级供应商、二级供应商、保理商、银行等)通过各自的节点设备确定应付款到期后,可以通过所述区块链供应链平台10上记录的交易数据向所述核心企业节点设备11兑付应付款。

核心企业通过核心企业节点设备11接收到兑付应付款的信息时,确认应付款是否到期。在确认应付款到期后,兑付债款。收到债款后的区块链实体进行签名,表示已经收到了债款。持有utxo的区块链实体在收到债款的同时或者之后,将自身所持有的utxo无效化签名或者返还给核心企业,形成完整的交易数据记录在区块链供应链平台10上。

所述监管机构节点设备14,用于从所述区块链供应链平台10上获取所述交易数据中的验证参数,基于所述非交互式零知识证明参数实现对所述验证参数中的应付款的监管。

在一个可选的实施例中,所述监管机构节点设备14从所述区块链供应链平台上获取所述交易数据中的所述验证参数,基于所述非交互式零知识证明参数实现对所述验证参数中的应付款的监管包括:

从所述区块链供应链平台上获取所述第一验证参数和所述第二验证参数;

利用所述第一验证参数、所述第二验证参数以及所述监管机构节点设备的私钥确定所述应付款的参数;

确定所述应付款的范围;

遍历所述范围内的每个数据直至确定符合所述应付款的参数的应付款。

具体的,e=gxhrmodn,f=grmodn,通过下式计算,即可确定包括交易数据的参数gx的值,由于在区块链交易中,交易数据通常是在一个有限的数据范围内,通过遍历数据范围内的每个数据,将数据代入x,直至得到与gx的值相符的x,该x即为交易数据。

gx=e/(ft)=gxhr/(gx)t=gxhr/hr=gx

由此可见,由于第一验证参数e和第二验证参数f中均具有相同的第一系统参数、第二系统参数和第一随机数,且第一验证参数中的第三系统参数为监管机构节点设备私钥生成的,监管机构节点设备通过计算将相同的参数抵消,并带入私钥即可确定应付款,实现对应付款的监管。在区块链供应链交易中,应付款通常在一个有限的数据范围内,通过遍历数据范围内的每个数据,将数据带入应付款x中,直至得到与gx的值相符的x,此x即为应付款。

需要说明的是,所述区块链供应链交易隐藏静态监管系统1中的区块链供应链平台10、核心企业节点设备11、一级供应商节点设备12、所述监管机构节点设备14必须存在的,所述其他区块链实体节点设备13可选的存在。即,二级供应商节点设备、银行节点设备、保理商节点设备可选的存在于所述区块链供应链交易隐藏静态监管系统1中。

如图2所示,为本发明实施例的区块链供应链交易隐藏静态监管系统的另一架构示意图。

区块链供应链交易隐藏静态监管系统1除了包括图1中所述的区块链供应链平台10、核心企业节点设备11、一级供应商节点设备12、其他区块链实体节点设备13、监管机构节点设备14,还可以包括至少一个风险评估机构节点设备15。

其中,所述至少一个风险评估机构节点设备15,用于读取所述区块链供应链平台10上存储的交易数据,使用预先训练好的风险评估模型对所述交易数据进行风险评估,并将风险评估结果发送给所述其他区块链实体节点设备13。

至少一个风险评估机构节点设备15可以事先获取所述区块链供应链平台10上记录的历史交易数据,并基于历史交易数据训练风险评估模型,来评估每笔交易数据中的应付款的价值。

至少一个风险评估机构节点设备15读取到所述区块链供应链平台10上新记录的交易数据时,使用风险评估模型来评估新记录的交易数据中的应付款的价值,并将风险评估结果发送给交易数据对应的utxo(即核心企业的应付款)的潜在购买者。所述潜在购买者可以包括,但不限于二级供应商,保理商,银行等。

二级供应商,保理商,银行等获取了风险评估结果后,可以选择与utxo的持有者进行交易,并最终完成应付款的兑付过程。

在一些实施例中,所述区块链供应链平台10,可以是基于任何utxo模型的区块链系统以及支持utxo账户模型的区块链系统。

在一些实施例中,所述区块链供应链系统1还可以包括:数据解密模块,utxo金额范围证明模块,区块链钱包,轻量钱包,统计分析工具,实体列表等。

本实施例所述的区块链供应链隐私交易静态监管系统,通过引入eigamal承诺和非交互式零知识证明的概念,将核心企业的明文应付款加密成机密交易并上链,只有交易双方能够解密机密交易中的金额,保护了交易隐私不被泄露,保障了区块链实体商业机密。而监管机构在获取到第一验证参数和第二验证参数后,通过计算将相同参数抵消,并带入监管机构私钥即可确定交易数据,实现对交易数据的监管。

参阅图3所示,为本发明实施例揭露的区块链供应链交易隐藏静态监管方法的流程示意图。

所述区块链供应链交易隐藏静态监管系统具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。

s31,通过核心企业节点设备基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数。

核心企业购买一级供应商的产品并承诺应付款,一级供应商可基于所述应付款的一部分购买二级供应商的产品,二级供应商可以进一步将一级供应商承诺的应付款拆分后购买其他二级供应商的产品,以此类推。保理商可以购买一级供应商、二级供应商持有的应付款。银行可以基于供应商的应付款提供贷款。

为了避免交易隐私被泄露,核心企业购买一级供应商的产品并承诺应付款之后,核心企业通过核心企业节点设备11对所述应付款进行加密得到机密交易,确保了核心企业与一级供应商之间的交易隐私。

在一个可选的实施例中,所述核心企业节点设备11基于核心企业承诺给一级供应商的应付款及所述核心企业选取的随机数确定符合eigamal承诺的验证参数包括:

获取第一系统参数g、第二系统参数n与第三系统参数h,其中所述第三系统参数h为所述监管机构利用私钥t计算得到的系统参数;

利用所述第一系统参数g、所述第二系统参数n、所述第三系统参数h、所述应付款x以及选取的第一随机数r确定符合elgamal承诺的第一验证参数e=gxhrmodn;

利用所述第一系统参数g、所述第二系统参数n以及所述第一随机数r确定符合elgamal承诺的第二验证参数f=grmodn。

在该可选的实施例中,所述第一系统参数g、所述第二系统参数n、所述第三系统参数h均为公开的参数。所述第一系统参数g是椭圆曲线群生成元,所述第二系统参数n可以是一个自然数,所述第三系统参数h=gtmodn。第一随机数r是由核心企业随机选择的一个数。由于第一验证参数e、第二验证参数f均是加密后的数据,并不能直接通过第一验证参数e、第二验证参数f确定应付款x,因而所述核心企业节点设备11将第一验证参数e和第二验证参数f上传至区块链供应链平台10,则一级供应商节点设备12在获取到交易数据后,即可获取第一验证参e数和第二验证参数f,并利用eigamal承诺验证交易数据的真实性。

s32,通过核心企业节点设备基于所述随机数利用哈希函数生成非交互式零知识证明参数。

核心企业节点设备采用非交互式零知识证明参数生成挑战参数,监管机构节点设备及一级供应商节点设备直接获取所述挑战参数即可,能够使得后续对第一验证参数和第二验证参数的验证更加方便。

在一个可选的实施例中,所述核心企业节点设备11基于选取的随机数利用哈希函数生成非交互式零知识证明参数包括:

利用所述第一系统参数g、所述第二系统参数n、所述第三系统参数h、所述第二随机数ω以及所述第三随机数σ确定第一待哈希参数w1=gσhωmodn;

利用所述第一系统参数g、所述第二系统参数n以及所述第二随机数ω确定第二待哈希参数w2=gωmodn;

利用所述哈希函数h()计算所述第一待哈希参数与所述第二待哈希参数的哈希结果,将所述哈希结果作为挑战参数c=h(w1||w2);

利用所述挑战参数c、所述第一随机数r、所述第二随机数ω、所述第三随机数σ、以及所述应付款x生成所述非交互式零知识证明参数(c,d,d1),其中,d=ω+cr,d1=σ+cx。

s33,通过所述核心企业节点设备对包括所述验证参数及所述非交互式零知识证明参数的交易数据进行签名并上传至区块链供应链平台。

核心企业通过核心企业节点设备使用数字签名技术对验证参数及所述非交互式零知识证明参数进行签名。数字签名技术是基于非对称加密算法和信息摘要算法实现的对于消息来源及完整性的认证,同时是签名者不可抵赖的保证。在一个数字签名系统中有两个角色,一个是消息的签名者,一个是消息的认证者。消息的签名者根据自己的私钥可以对一条消息的信息摘要进行签名,消息的认证者根据自己的公钥对一条消息的信息摘要进行验证。如果验证通过则可证明该消息的来源是消息的签名者,消息的信息摘要相同且签名者不可抵赖。

s34,通过一级供应商节点设备接收所述交易数据并基于所述非交互式零知识证明参数对所述验证参数进行验证。

一级供应商节点设备12接收到非交互式零知识证明参数(c,d,d1),验证是否c=h(gd1hded-cmodn||gdf-cmodn),如果验证通过,则验证方确认e和f隐藏了相同的第一随机数r。一级供应商节点设备12通过非交互式零知识证明的方式对第一验证参数和第二验证参数的真实性进行验证,从而保证第一验证参数和第二验证参数计算得到的应付款为真实数据。

s35,通过监管机构节点设备从所述区块链供应链平台上获取所述交易数据中的验证参数,基于所述非交互式零知识证明参数实现对所述验证参数中的应付款的监管。

在一个可选的实施例中,所述监管机构节点设备14从所述区块链供应链平台上获取所述交易数据中的所述验证参数,并基于所述非交互式零知识证明参数实现对所述验证参数中的应付款的监管包括:

从所述区块链供应链平台上获取所述第一验证参数和所述第二验证参数;

利用所述第一验证参数、所述第二验证参数以及所述监管机构节点设备的私钥确定所述应付款的参数;

确定所述应付款的范围;

遍历所述范围内的每个数据直至确定符合所述应付款的参数的应付款。

具体的,e=gxhrmodn,f=grmodn,通过下式计算,即可确定包括交易数据的参数gx的值,由于在区块链交易中,交易数据通常是在一个有限的数据范围内,通过遍历数据范围内的每个数据,将数据代入x,直至得到与gx的值相符的x,该x即为交易数据。

gx=e/(ft)=gxhr/(gx)t=gxhr/hr=gx

由此可见,由于第一验证参数e和第二验证参数f中均具有相同的第一系统参数、第二系统参数和第一随机数,且第一验证参数中的第三系统参数为监管机构节点设备私钥生成的,监管机构节点设备通过计算将相同的参数抵消,并带入私钥即可确定应付款,实现对应付款的监管。在区块链供应链交易中,应付款通常在一个有限的数据范围内,通过遍历数据范围内的每个数据,将数据带入应付款x中,直至得到与gx的值相符的x,此x即为应付款。

在一个可选的实施例中,所述方法还包括:

通过所述一级供应商节点设备将所述交易数据中的utxo拆分为第一utxo和第二utxo,其中,所述第一utxo中的金额和第二utxo中的金额之和等于所述utxo中的金额;

基于所述第一utxo和第二utxo与其他区块链实体节点设备进行交易;

基于bulletproof对所述第一utxo和第二utxo进行范围证明。

一级供应商可以将机密交易中的utxo拆分后交易给二级供应商、保理商或者通过银行进行抵押贷款。二级供应商、保理商或者银行接收到拆分后的utxo可以进一步进行拆分并交易。一旦拆分后的utxo被使用后,原来的utxo就不再可用,但是关于原来的utxo的交易数据依旧会记录在区块链供应链平台上,供溯源和查询。

在该可选的实施例中,当一笔utxo0拆分成utxo1和utxo2时,可以使用pedersen承诺的加法同态性,得到utxo0=utxo1+utxo2,并且可以使用bulletproof算法证明拆分后的utxo1和utxo2中的金额均为合法值,即utxo中的金额为一定范围内的正数。

示例性的,假设该utxo的持有者可以将其拆分为utxo1和utxo2。使用加法同态性得到:由此可见,x0=x1+x2,如此保证了两笔utxo中的金额之和等于原utxo所隐藏的金额。于此同时,使用bulletproof算法生成范围证明,用于证明utxo1和utxo2中的金额在合理范围内。金额的范围设置为[0,2^32-1]。关于bulletproof算法生成范围证明的过程,为现有技术,本发明不再详细赘述。

在一个可选的实施例中,所述方法还包括:

通过至少一个风险评估机构节点设备读取所述区块链供应链平台上存储的交易数据,使用预先训练好的风险评估模型对所述交易数据进行风险评估,并将风险评估结果发送给所述其他区块链实体节点设备。

至少一个风险评估机构节点设备15读取到所述区块链供应链平台10上新记录的交易数据时,使用风险评估模型来评估新记录的交易数据中的应付款的价值,并将风险评估结果发送给交易数据对应的utxo(即核心企业的应付款)的潜在购买者。所述潜在购买者可以包括,但不限于二级供应商,保理商,银行等。

二级供应商,保理商,银行等获取了风险评估结果后,可以选择与utxo的持有者进行交易,并最终完成应付款的兑付过程。

在一些实施例中,所述区块链供应链平台10,可以是基于任何utxo模型的区块链系统以及支持utxo账户模型的区块链系统。

本实施例所述的区块链供应链隐私交易静态监管方法,通过引入eigamal承诺和非交互式零知识证明的概念,将核心企业的明文应付款加密成机密交易并上链,只有交易双方能够解密机密交易中的金额,保护了交易隐私不被泄露,保障了区块链实体商业机密。而监管机构在获取到第一验证参数和第二验证参数后,通过计算将相同参数抵消,并带入监管机构私钥即可确定交易数据,实现对交易数据的监管。

图4为本发明实施例揭露的区块链节点设备的内部结构示意图。

在本实施例中,所述区块链节点设备4可以包括存储器41、处理器42和总线43及收发器44。

所述区块链节点设备4可以为核心企业节点设备,还可以为监管机构节点设备,或者一级供应商节点设备,其他区块链实体(例如,二级供应商,银行,保理商)节点设备等。当所述区块链节点设备4为核心企业节点设备时,执行实施例一或者实施例二中所述的核心企业节点设备的功能;当所述区块链节点设备4为监管机构节点设备时,执行实施例一或者实施例二中所述的监管机构节点设备的功能;当所述区块链节点设备4为一级供应商节点设备时,执行实施例一或者实施例二中所述的一级供应商节点设备的功能;当所述区块链节点设备4为其他区块链实体节点设备时,执行实施例一或者实施例二中所述的其他区块链实体节点设备的功能。

其中,存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器41在一些实施例中可以是所述区块链节点设备4的内部存储单元,例如所述区块链节点设备4的硬盘。存储器41在另一些实施例中也可以是所述区块链节点设备4的外部存储设备,例如所述区块链节点设备4上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器41还可以既包括所述区块链节点设备4的内部存储单元,也包括外部存储设备。存储器41不仅可以用于存储安装于所述区块链节点设备4的应用程序及各类数据,还可以用于暂时地存储已经输出或者将要输出的数据。

处理器42在一些实施例中可以是一中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器,用于运行存储器41中存储的程序代码或处理数据。

该总线43可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

进一步地,所述区块链节点设备4还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如wi-fi接口、蓝牙接口等),通常用于在该区块链节点设备4与其他调度服务器之间建立通信连接。

可选地,该区块链节点设备4还可以包括用户接口,用户接口可以包括显示器(display)、输入单元,比如键盘(keyboard),可选的,用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(organiclight-emittingdiode,oled)触摸器等。其中,显示器也可以称为显示屏或显示单元,用于显示在所述调度服务器中处理的消息以及用于显示可视化的用户界面。

图4仅示出了具有组件41-44的所述区块链节点设备4,本领域技术人员可以理解的是,图4示出的结构并不构成对所述区块链节点设备4的限定,既可以是总线型结构,也可以是星形结构,所述区块链节点设备4还可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。

在上述实施例中,可以全部或部分地通过应用程序、硬件、固件或者其任意组合来实现。当使用应用程序实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字用户线)或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd),或者半导体介质(例如,固态硬盘(solidstatedisk,ssd))等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例中的方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用应用程序功能单元的形式实现。

所述集成的单元如果以应用程序功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以应用程序产品的形式体现出来,该计算机应用程序产品存储在一个存储介质中,包括若干指令用以使得一台调度服务器(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、硬盘、只读存储器(read-onlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1