[发明专利]一种区块链基于伪随机公钥的加密方法在审
申请号: | 202110005535.8 | 申请日: | 2021-01-05 |
公开(公告)号: | CN112668053A | 公开(公告)日: | 2021-04-16 |
发明(设计)人: | 林乐;兰春嘉 | 申请(专利权)人: | 上海能链众合科技有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F21/44;G06F21/60;G06F16/27;G06F16/22;G06Q20/38;G06Q40/04 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200120 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 区块 基于 随机 加密 方法 | ||
1.一种区块链基于伪随机公钥的加密方法,其特征在于,包含以下内容:程序1、基于伪随机公钥的加密方法应用于区块链系统中,所述区块链系统包括:新用户节点、正式用户节点、验证节点、CA认证中心、密钥模块、加密模块、解析模块、伪随机密钥模块;所述CA认证中心是确认所述用户节点的身份、为所述用户节点签发数字证书、管理密钥的管理机构;所述新用户节点是首次加入所述区块链系统的用户使用的终端设备;所述新用户节点得到所述CA认证中心签发的数字证书后成为所述正式用户节点;所述正式用户节点可以参与所述区块链系统中的活动;所述用户节点通过所述密钥模块提供的接口,发起申请证书的请求,所述申请证书的请求包括自定义数、邮箱地址;所述自定义数为超过12位的字符串,所述自定义数包括字母、数字和特殊字符;所述自定义数和所述邮箱地址用于找回密钥对;所述密钥模块设有第一随机数生成器,所述第一随机数生成器用于生成素数;当所述密钥模块收到所述申请证书的请求后,所述第一随机数生成器随机产生2个基础大素数,用于计算所述密钥对,计算步骤如下:步骤S1:用公式一计算出密钥指数:公式一:N=(P-1)*(Q-1);其中,P和Q是所述基础大素数,所述P2512、所述Q2160;p-1能被q整除;步骤S2:随机产生一个与所述密钥指数N互质的数M,且MN;步骤S3:计算出D,使得D*M≡1(mod N);其中,“≡”是数论中表示同余的符号;步骤S4:输出密钥对(sk,pk);其中,sk是私钥,sk=(D,N),pk是公钥,pk=(M,N);步骤S4:利用公钥计算出用户节点的地址;所述密钥模块将(ad,sk,pk,emad,num)作为一条记录存储到数据库中;其中,ad是所述用户节点的地址,num是所述自定义数、emad是所述邮箱地址;所述用户节点通过所述CA认证中心提供的接口,发起认证请求;所述认证请求包括所述密钥对、所述用户节点的地址;通过所述CA认证中心的认证后,所述用户节点得到所述数字证书,所述数字证书包括所述用户节点的地址、所述密钥对;所述加密模块设有第二随机数生成器;所述加密模块可以用于发起交易请求,所述正式用户节点通过所述加密模块设置的接口输入交易信息,并上传所述私钥、所述公钥;所述加密模块利用所述第二随机数生成器生成所述伪随机公钥;所述加密模块将所述交易信息用SHA-256进行哈希运算得到交易哈希A,用所述私钥将所述交易哈希A进行加密运算得到数字签名Z;所述加密模块将所述交易信息、所述交易哈希A、所述数字签名Z、所述伪随机公钥、所述地址发送给所述解析模块;所述为随机公钥的计算方法包括以下步骤:步骤T1:所述第二随机数生成器生成第二随机数;步骤T1:所述加密模块利用所述第二随机数计算出变换系数;所述变换系数的计算过程如公式一:公式一:其中,b和c是计算系数,取值为正整数;d是循环计算参数,i是循环计算次数,f是所述第二随机数;d0是初始循环计算参数,di是环计算次数为i的初始循环计算参数,df是环计算次数为f的初始循环计算参数;步骤T2:将初始公钥向量平移得到第一公钥向量,平移过程如公式二:公式二:其中,T0是所述初始公钥向量,且S1是平移向量,且T1是所述第一公钥向量;步骤T3:将所述第一公钥向量旋转得到第二公钥向量,旋转过程如公式三:公式三:其中,S2是旋转矩阵,且T2是所述第二公钥向量;θ是旋转角,且θ=arctana,θ取值范围为程序二、将所述第二公钥向量缩放得到第三公钥向量,缩放过程如公式四:公式四:其中,S3是缩放矩阵,且T3是所述第三公钥向量;步骤T4:用公式五计算出所述伪随机公钥pk1=(M1,N1):公式五:所述解析模块收到所述交易信息、所述交易哈希A、所述数字签名Z、所述伪随机公钥、所述地址后,将所述伪随机公钥发送给所述伪随机密钥模块;所述伪随机密钥模块中存储了所有正式用户节点的伪随机公钥;所述伪随机密钥模块收到所述伪随机公钥后,查询出所述伪随机公钥对应的公钥以及对应的地址;如果所述对应的地址与所述地址相同,则将所述对应的公钥发送给所述解析模块;所述解析模块收到所述对应的公钥后,用所述对应的公钥对所述数字签名Z解密得到所述交易哈希B;如果所述交易哈希B与所述交易哈希A相同,则将所述交易信息发送给智能合约。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海能链众合科技有限公司,未经上海能链众合科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110005535.8/1.html,转载请声明来源钻瓜专利网。