本发明属于数据安全,具体涉及基于环签名的供应链数据隐私保护方法。
背景技术:
1、随着计算机技术的发展,电子支付在供应链系统中的应用越来越普遍。电子支付虽然方便,但仍然存在弊端。资金违约是传统供应链中常见的问题,是指个人或企业未能按照合同规定的约定日期正确履行交货或付款等义务。此外,在传统的供应链系统中,交易信息或支付金额等信息也可能在支付过程中泄露。因此,实现供应链支付的隐私保护具有重要意义。
2、目前,许多企业仍然通过银行等第三方进行资金转移,这可能导致效率低下、交易成本较高。2019年,jamil等人提出将所有交易记录在区块链中,利用其去中心化的特性来解决。然而,随着区块链上记录的交易量增加,链上的负载变得过大,导致响应时间过长。seres等人提出使用支付通道(pc)进行支付以提高可扩展性。此外,katz等人提出结合时间锁定来解决传统供应链中的资金违约问题。
3、pc是目前解决区块链带来的可扩展性最有前途的方法之一,在实践中得到了广泛的应用。由于哈希时间锁定合约的特性,中介机构隐含地知道支付的价值。由于路径中通道的值必须相同,因此可能会出现支付的隐私问题。2022年,lucas等人提出采用隐形地址来保护支付参与者的身份。尽管提供了隐私保护,但每次支付时收款人都必须为系统中的参与者生成一个新的地址,这间接降低了支付效率。
技术实现思路
1、本发明的目的是基于环签名的供应链数据隐私保护方法,能够保护供应链上交易双方的身份隐私和支付价值,同时具有高效的签名运行时间和验证运行时间。
2、本发明所采用的技术方案是,基于环签名的供应链数据隐私保护方法,具体按照以下步骤实施:
3、步骤1,生成密钥阶段gen(1λ):(pk,sk)←gen(1λ);用户使用密钥生成算法gen(1λ)生成公私钥对(pk,sk),pk为公钥,sk为私钥;
4、步骤2,签名阶段:输入需要签名的消息m,签名者需要对消息m进行签名;
5、sign({pkj}l,ski,m):σ←sign({pkj}l,ski,m)
6、步骤3:验证阶段:验证签名是否正确,消息是否被篡改。
7、本发明的特点还在于,
8、步骤1中,具体为:输入安全参数λ,选择一个随机数sk∈zq作为私钥,其中zq指的是一个质数集合,计算pk=gsk作为公钥,q是一个质数,g是生成元,输出公私钥对(pk,sk),并定义一个哈希函数h:{0,1}*→zq。
9、步骤2中,具体为:
10、步骤2.1:签名者选择一个随机数ri∈zq,通过函数a,即公式(1)生成承诺ri;其中ri指的是一个随机数,i是签名者的索引,g是生成元,是承诺;
11、
12、步骤2.2:签名者选择随机数{cj}l=c1,c2,...cl∈zq;
13、步骤2.3:定义函数
14、步骤2.4:签名者使用步骤2.1中的函数a和步骤2.3中的函数v2形成r环,通过公式(2)得到r;
15、
16、pkj是除了签名者之外的任一用户的公钥,cj则是除签名者以外的任一用户选择的随机数;v2是步骤2.3中定义的函数,也就是ski和ri是签名者的私钥以及选择的随机数;
17、步骤2.5:结合步骤1中的哈希函数h和需要签名的消息m,形成c环,通过公式(3)得到c环;
18、c=h(m,pk,r)-c1-c2......-cj (3)
19、 =h(m,pk,r)-∑cj
20、步骤2.6:定义函数z(ski,c,ri),通过公式(4)得到z,且定义函数v1(z)=gz,ski指的是签名者的私钥,c指的是步骤2.5中的环c,ri则指的是步骤2.1中签名者选择的随机数;
21、z:=ri-c·ski (4)。
22、步骤3中,具体为:
23、步骤3.1,通过步骤2.3生成的函数v2和步骤2.6生成的函数v1重新构造r',如果r'=r,即签名是正确的,进行步骤3.2;如果r≠r',则签名是不正确的,则结束验证步骤;
24、步骤3.2:计算公式(6)和公式(7)是否相等,如果相等,则证明签名是正确的,交易真实且完整,如果不相等,则说明消息被篡改过。
25、c'=c1+.....+cn (6)
26、c”=h(m,pk,r') (7)。
27、步骤3.1中,r'可由公式(5)表示;
28、
29、本发明的有益效果是,使用支付通道来提供支付的原子性和数据隐私性,并结合时间锁来避免资金违约。同时,采用环签名以保证身份的隐私性,能够保护供应链上交易双方的身份隐私和支付价值,同时具有高效的签名运行时间和验证运行时间,通过安全性分析和实验可知,本发明方法可以满足价值隐私和身份隐私的要求,并且在实践中具有较高的效率。
1.基于环签名的供应链数据隐私保护方法,其特征在于,具体按照以下步骤实施:
2.根据权利要求1所述的基于环签名的供应链数据隐私保护方法,其特征在于,所述步骤1中,具体为:输入安全参数λ,选择一个随机数sk∈zq作为私钥,其中zq指的是一个质数集合,计算pk=gsk作为公钥,q是一个质数,g是生成元,输出公私钥对(pk,sk),并定义一个哈希函数h:{0,1}*→zq。
3.根据权利要求2所述的基于环签名的供应链数据隐私保护方法,其特征在于,所述步骤2中,具体为:
4.根据权利要求3所述的基于环签名的供应链数据隐私保护方法,其特征在于,所述步骤3中,具体为:
5.根据权利要求4所述的基于环签名的供应链数据隐私保护方法,其特征在于,所述步骤3.1中,r'可由公式(5)表示;