面向跨链交易的密钥生成与管理方法技术

技术编号:37120830 阅读:26 留言:0更新日期:2023-04-01 05:16
本发明专利技术属于区块链技术领域,公开了面向跨链交易的密钥生成与管理方法,由发起者在源链向目标链发送交易请求,接收者接收到交易请求并生成密钥S1,使用S1通过DES加密算法来加密发起者所需要的链上资产数据,得到密文L1;发起者和接收者使用ECDH密钥交换算法得到共享密钥S2;接收者使用共享密钥S2通过DES加密算法加密会话密钥S1得到密文L2;接收者将密文L1和密文L2发送给发起者;发起者首先利用共享密钥S2对密文L2进行解密,得到会话密钥S1,再用密钥S1对密文L1进行解密,得到目标链上的资产数据。本发明专利技术将对称式加密算法和非对称式加密算法结合,既保证了数据安全又提高了加密和解密的速度。密的速度。密的速度。

【技术实现步骤摘要】
面向跨链交易的密钥生成与管理方法


[0001]本专利技术属于区块链
,具体是涉及面向跨链交易的密钥生成与管理方法。

技术介绍

[0002]当前的区块链应用和底层技术平台呈现出百花齐放的状态,但主流区块链应用中的每条链大多仍是一个独立的、垂直的封闭体系。在业务形式日益复杂的商业应用场景下,链与链之间缺乏统一的互联互通机制,这极大限制了区块链上数字资产价值的流动性,跨链需求由此而来。
[0003]跨链指的是通过连接相对独立的区块链系统,实现不同账本的可信互操作。跨链依据其交换内容的不同可以大体分为数字资产交换和信息交换。在数字资产交换方面,当前资产交换主要依靠中心化的交易所来完成,中心化的交换方式既不安全、规则也不透明。
[0004]大多数区块链系统的交易是以明文形式广播并存储在区块链账本上的,每个用户都可以访问。这种设计有利于系统的去中心化、可追溯的性质,但也存在无法保护账户隐私的问题。例如比特币中最早的数据是不加密的,仅仅是通过哈希算法进行签名,所以链上的所有节点用户都能得到其他所有账户的全部信息。这样就会导致链上资产数据泄露的问题,假如受到攻击,攻击者不仅能够破话链上资产数据还能利用其进行分析,得出用户的一些个人交易信息。如果不能解决隐私泄露问题,用户将不愿意将项目及业务上链。
[0005]这就使得人们开始重视对于链上资产、交易等数据的保护。跨链交易过程中的跨链双方出于对交易数据和账号密码以及自身身份隐私保护方面的考虑,总会使用加密算法来对数据进行加密解密;传统的加密算法包括哈希算法、对称加密算法和非对称加密算法等。对称式加密方式对加密和解密使用相同的密钥,通常,这种加密方式在应用中难以实施,因为用同一种安全方式共享密钥很难,其优点是加密快,但缺点是密钥不易传递、保存和容易泄露,密钥管理不安全;非对称密钥加密使用一组公共/私人密钥系统,加密时使用一种密钥,解密时使用另一种密钥,其优点是公钥可以公开,保证私钥不被泄露即可,降低了被破解的几率,安全性相对来说较高,但缺点是加密慢。在跨链交易中,对数据进行加密、对密钥进行管理的方法还是以非对称式加密算法为主,这样用户和服务器对密钥的管理都非常的方便;但是,这也导致了在处理块中的大型数据时,非对称式加密算法的加密速度没有对称式加密算法快。
[0006]现有技术中对跨链交易进行了相应的研究,如专利申请CN111277408A,公开了一种具有跨链功能的标准化区块链系统,包括共识底层、节点层、平台服务层、应用中间层,它的共识底层采用带有异步拜占庭容错的委托股权证明机制以及3072位RSA私钥加密算法;但它受到一个问题的严重威胁:如果攻击者能够访问服务器的私钥,那么攻击者将可以解码所有加密数据,在安全性方面有所不足。专利申请CN113783854A,其公开了一种基于区块链的信用数据跨链共享方法及装置,该方法中结合DH密钥交换算法利用多链协调网络实现身份验证,完成信用数据传输,但是使用一个大素数来进行指数运算不可避免的缺点是执行缓慢。
[0007]基于上述的情况,如何在保证跨链交易过程的安全性的基础上对数据进行加密的时间进行缩短是目前所要解决的问题。

技术实现思路

[0008]为解决上述技术问题,本专利技术提供了一种面向跨链交易的密钥生成与管理方法,结合使用对称式加密算法和非对称式加密算法,对于块中的数据即用户的链上资产可用对称式加密算法加密,而加密用的密钥则用非对称式加密算法加密传送,既保证了数据安全又提高了加密和解密的速度。
[0009]本专利技术所述的面向跨链交易的密钥生成与管理方法,步骤为:
[0010]步骤1、跨链交易的发起者在源链向目标链发送交易请求,接收者在目标链接收到交易请求,接收者使用伪随机数生成器,生成一个64位会话密钥S1,使用S1通过DES加密算法来加密发起者所需要的链上资产数据,得到密文L1;
[0011]步骤2、发起者和接收者使用ECDH密钥交换算法得到两人的共享密钥S2;
[0012]步骤3、接收者使用共享密钥S2通过DES加密算法来加密会话密钥S1,得到密文L2;
[0013]步骤4、接收者将密文L1和密文L2发送给发起者;
[0014]步骤5、发起者在收到密文L1和密文L2后,首先利用共享密钥S2对密文L2进行解密,得到会话密钥S1;再用密钥S1对密文L1进行解密,得到目标链上的资产数据。
[0015]进一步的,使用会话密钥S1通过DES加密算法来加密数据具体为:
[0016]将链上资产数据按64位进行分组,不足64位的按双方提前制定的规则填充;对每一组64位数据使用会话密钥S1进行加密;使用密钥S1对其中一部分应用循环功能,然后将输出与另一部分进行异或运算;接着交换这两部分,重复之前的步骤,直至最后一个循环;最后经过置换IP操作、轮操作、逆行置换IP操作得到密文L1。
[0017]进一步的,使用ECDH密钥交换算法得到共享密钥S2具体为:
[0018]1)发起者随机生成随机数Ra,这个数只有发起者自己知道,称为发起者的私钥;计算Pa(x,y)=Ra*Q(x,y),Q(x,y)为双方共享的某个椭圆曲线算法的基点,Pa(x,y)为发起者的公钥,将公钥Pa(x,y)发送至接收者;
[0019]2)接收者随机生成随机数Rb,即接收者的私钥;计算Pb(x,y)=Rb*Q(x,y),Pb(x,y)即接收者的公钥,将公钥Pb(x,y)发送至发起者;
[0020]3)发起者计算Sa=Ra*Pb(x,y)=Ra*Rb*Q(x,y);接收者计算Sb=Rb*Pa(x,y)=Rb*Ra*Q(x,y);显然Sa=Sb,即为共享密钥S2。
[0021]进一步的,利用共享密钥S2对密文L2进行解密,得到会话密钥S1;再用S1对密文L1进行解密,得到链上资产数据1,具体为:
[0022]当发起者接收到来自接收者的链上资产加密密文L1和密钥S1的加密密文L2后,首先利用其与接收者通过ECDH算法协商出的共享密钥S2对密文L2进行解密,解密步骤和用DES加密算法进行加密的过程相反,且在迭代过程中交换了左右子密钥的位置;接着用得到的会话密钥S1对密文L1进行解密,由于都是使用的DES算法加密数据,解密过程和解密L2相同,得到了链上资产数据。
[0023]进一步的,在使用伪随机数生成器生成64位会话密钥S1和使用ECDH密钥交换算法时,使两个密钥动态地生成,具体为:
[0024]由于对于一个伪随机数生成器,从相同的随机数种子seed出发,得到相同的随机数序列,所以伪随机数生成器通过输入不同的seed来进行动态地生成会话密钥S1;
[0025]针对发起者和接收者每次协商出的共享密钥S2都是一样的容易被破译的问题,引入DHE算法,结合ECC后形成了ECDH算法。基于ECDH算法得到共享密钥S2,其可以让交易者和接受者的私钥在每次密钥交换通信时均是随机生成的、临时的,再相互发送、交换公钥后动态地生成共享密钥S2;每个通信过程的私钥都与其他通信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.面向跨链交易的密钥生成与管理方法,其特征在于,所述方法步骤为:步骤1、跨链交易的发起者在源链向目标链发送交易请求,接收者在目标链接收到交易请求,接收者使用伪随机数生成器,生成一个64位会话密钥S1,使用S1通过DES加密算法来加密发起者所需要的链上资产数据,得到密文L1;步骤2、发起者和接收者使用ECDH密钥交换算法得到两人的共享密钥S2;步骤3、接收者使用共享密钥S2通过DES加密算法来加密会话密钥S1,得到密文L2;步骤4、接收者将密文L1和密文L2发送给发起者;步骤5、发起者在收到密文L1和密文L2后,首先利用共享密钥S2对密文L2进行解密,得到会话密钥S1;再用密钥S1对密文L1进行解密,得到目标链上的资产数据。2.根据权利要求1所述的面向跨链交易的密钥生成与管理方法,其特征在于,使用会话密钥S1通过DES加密算法来加密数据具体为:将链上资产数据按64位进行分组,不足64位的按双方提前制定的规则填充;对每一组64位数据使用会话密钥S1进行加密;使用密钥S1对其中一部分应用循环功能,然后将输出与另一部分进行异或运算;接着交换这两部分,重复之前的步骤,直至最后一个循环;最后经过置换IP操作、轮操作、逆行置换IP操作得到密文L1。3.根据权利要求1所述的面向跨链交易的密钥生成与管理方法,其特征在于,使用ECDH密钥交换算法得到共享密钥S2具体为:1)发起者随机生成随机数Ra,这个数只有发起者自己知道,称为发起者的私钥;计算Pa(x,y)=Ra*Q(x,y),Q(x,y)为双方共享的某个椭圆曲线算法的基点,Pa(x,y)为发起者的公钥,将公钥Pa(x,y)发送至接收者;2)...

【专利技术属性】
技术研发人员:孙雁飞王吉凡亓晋董振江孙莹朱行健
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1