JCE调用密码卡实现内置RSA密钥运算的方法及装置与流程

文档序号:12278128阅读:来源:国知局

技术特征:

1.一种JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,包括密钥导出步骤和密钥运算步骤;

所述密钥导出步骤包括:

应用程序模块向JCE实现模块发送包括密钥标识的第一RSA密钥对导出请求;

JCE实现模块接收第一RSA密钥对导出请求,创建带有密钥标识的随机源,将密钥标识转换成密钥号,并向密码卡发送包括密钥号的第二RSA密钥对导出请求;

密码卡接收第二RSA密钥对导出请求,并向JCE实现模块发送已存储的指定密钥号对应的RSA密钥对的公钥数据;

JCE实现模块接收密码卡发送的公钥数据,根据公钥数据及密钥号组装假私钥数据,并将公钥数据、假私钥数据转换成密钥对象发送给应用程序模块;

所述密钥运算步骤包括:

应用程序模块向JCE实现模块发送包括密钥对象的第一RSA密钥运算请求;

JCE实现模块接收第一RSA密钥运算请求,将接收到的密钥对象进行解析,并根据解析结果向密码卡发送包括公钥或密钥号的第二RSA密钥运算请求;

密码卡接收第二RSA密钥运算请求,并向JCE实现模块发送运算结果;

JCE实现模块接收密码卡发送的运算结果,并将运算结果发送给应用程序模块。

2.根据权利要求1所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,所述密钥导出步骤之前还包括密钥生成步骤,所述密钥生成步骤包括:

密码卡接收密码卡管理工具触发的密钥生成请求,获取密码卡管理工具指定的密钥号和膜长;

密码卡内部根据指定的密钥号和膜长完成RSA密钥对的生成及存储。

3.根据权利要求1所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,所述假私钥按照RSA密钥对中私钥的格式进行组装。

4.根据权利要求3所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,私钥由一对整数(n,d)构成时,所述假私钥的组装方法具体包括:

将除n以外的其他组成元素以二进制的随机数代替;

在元素d或者除n以外的其他元素中嵌入密钥号信息;

将嵌入密钥号后的二进制随机数转换成正整数并组装成假私钥。

5.根据权利要求1所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,所述密钥运算步骤中,解析到的密钥对象中包括公钥时,将公钥转换成密码卡内部识别数据格式,发送给密码卡进行加密运算。

6.根据权利要求1所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,所述密钥运算步骤中,解析到的密钥对象中包括假私钥时,则将假私钥中存储密钥号信息的元素由正整数转换成二进制数组,并找出嵌入元素d或者除n以外的其他元素中的密钥号,发送给密码卡进行解密运算。

7.根据权利要求5所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,发送给密码卡进行加密运算的消息中还包括需要进行加密的数据。

8.根据权利要求5所述的JCE调用密码卡实现内置RSA密钥运算的方法,其特征在于,发送给密码卡进行解密密运算的消息中还包括需要进行解密的数据。

9.一种JCE调用密码卡实现内置RSA密钥运算的装置,其特征在于,包括终端设备和密码卡;所述终端设备包括应用程序模块、JCE实现模块和用于为密码卡生成RSA密钥对指定密钥号和膜长的密码卡管理工具;所述密码卡插接在所述终端设备上,与所述密码卡管理工具连接用于生成并存储指定密钥号和膜长的RSA密钥对;所述应用程序模块与所述JCE实现模块连接用于发送RSA密钥对导出或RSA密钥运算请求;所述JCE实现模块与所述密码卡连接用于将处理后的RSA密钥对导出请求或RSA密钥运算请求发送至所述密码卡,所述密码卡响应所述JCE实现模块的请求。

10.根据权利要求9所述的JCE调用密码卡实现内置RSA密钥运算的装置,其特征在于,所述密码卡通过PCI接口、PCI_E接口或usb接口插接到所述终端设备。

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