[发明专利]基于SSL标准的跨平台的RSA算法有效
申请号: | 201811431811.1 | 申请日: | 2018-11-28 |
公开(公告)号: | CN109600229B | 公开(公告)日: | 2022-03-22 |
发明(设计)人: | 董志忠 | 申请(专利权)人: | 董志忠 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30;H04L9/08;H04L9/40 |
代理公司: | 北京纽乐康知识产权代理事务所(普通合伙) 11210 | 代理人: | 白明珠 |
地址: | 100083 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 ssl 标准 平台 rsa 算法 | ||
1.一种基于SSL标准的跨平台的RSA算法,其特征在于,包括以下步骤:
S1:采用SSL标准生成RSA秘钥对;
S2:建立基于SSL标准的PEM流,通过RSA密码生成器分别生成公共秘钥对象和私有秘钥对象,将公共秘钥对象和私有秘钥对象输入PEM流后分别输出公钥字符串和私钥字符串;
S3:将公钥字符串和私钥字符串分别装载公钥和私钥;
S4:利用公钥对数据进行加密,生成密文;利用私钥对密文进行解密,获取明文数据;
S5:利用私钥对明文数据进行签名,生成签名密文;
S6:利用公钥对明文数据及签名密文分别进行验证;
所述步骤S1中采用SSL标准生成RSA秘钥对具体包括,S11 获取随机数生成器,设置秘钥助记词作为给定的种子补充剂;
S6利用公钥对明文数据及签名密文分别进行验证,具体包括:
S61:将base64格式签名密文通过decodeBase64方法转化为字节数组格式的签名密文;
S62:获取公共秘钥对象;
S63:基于SHA256withRSA获取数字签名对象;
S64:通过数字签名对象设置公共秘钥对象、进行更新要验证的数据和验证签名处理;
S12将密码随机数生成器和秘钥大小作为初始数据,通过RSA密码生成器的initialize方法进行初始化处理;
S13通过RSA密码生成器的generateKeyPair方法生成秘钥对;
所述步骤S3中将公钥字符串和私钥字符串分别装载公钥和私钥,具体包括,S31 将公钥字符串和私钥字符串分别转化为字节数组;
S32 基于字节数组创建缓冲字符输入流,基于缓冲字符输入流建立PEMParser对象;
S33 通过PEMParser对象中readObject方法分别获取PublicKeyInfo对象和PEMKeyPair对象;
S34 基于PublicKeyInfo对象和PEMKeyPair对象,通过PEMKeyConverter分别获取公共秘钥对象和私有秘钥对象;
所述步骤S4中利用公钥对数据进行加密,生成密文,具体包括,S41:根据公共秘钥对象通过Cipher对象的init方法来初始化处理;
S42:通过Cipher对象的doFinal方法对待加密数据的字节数组进行加密处理,获取到密文字节数组;
S43:将密文字节数组通过encodeBase64String方法处理为字符串,形成base64格式密文。
2.根据权利要求1所述的基于SSL标准的跨平台的RSA算法,其特征在于,所述步骤S4中利用私钥对密文进行解密,获取明文数据,具体包括:
S041:将base64格式密文通过decodeBase64方法转化为字节数组格式的密文;
S042:根据私有秘钥对象和DECRYPT_MODE模式,通过Cipher对象的init方法来初始化处理;
S043:利用Cipher对象的doFinal方法对待解密数据的字节数组进行解密处理,获取明文内容。
3.根据权利要求1所述的基于SSL标准的跨平台的RSA算法,其特征在于,所述步骤S5中利用私钥对明文数据进行签名,生成签名密文,具体包括:
S51:获取私有秘钥对象;
S52:基于SHA256withRSA获取数字签名对象;
S53:通过数字签名对象设置私有秘钥对象、进行更新签名和数字签名处理,获取签名后的字节数组信息;
S54:将签名后的字节数组通过encodeBase64String方法处理为字符串,形成base64格式签名密文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于董志忠,未经董志忠许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811431811.1/1.html,转载请声明来源钻瓜专利网。