一种用于移动终端的数字签名方法及其装置转让专利

申请号 : CN201710055960.1

文献号 : CN106789086B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张一锋徐忠姚前

申请人 : 中钞信用卡产业发展有限公司杭州区块链技术研究院

摘要 :

本发明公开了一种用于移动终端的数字签名方法及其装置,包括在移动终端内预先存储加密后的本地私钥,其中,本地私钥的加密密钥为通过预设算法对特定智能IC卡中的标识信息进行处理后得到的数据;接收用户输入的签名指令后,打开移动终端的NFC通道;读取特定智能IC卡的标识信息;依据标识信息对移动终端内存储的加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有解密后的本地私钥以及加密后的本地私钥;依据解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;删除解密后的本地私钥。本发明能够提高本地私钥的加密密钥的破解难度,数字签名的安全程度高。

权利要求 :

1.一种用于移动终端的数字签名方法,其特征在于,包括:在所述移动终端内预先存储加密后的本地私钥,其中,所述本地私钥的加密密钥为通过预设算法对特定智能IC卡中的标识信息进行处理后得到的数据;

接收用户输入的签名指令后,打开所述移动终端的NFC通道;

读取所述特定智能IC卡的标识信息;

依据所述标识信息对所述移动终端内存储的所述加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有所述解密后的本地私钥以及所述加密后的本地私钥;

依据所述解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;

删除所述解密后的本地私钥;

所述加密密钥的具体生成过程包括:

打开所述移动终端的NFC通道;

发送文件选择命令至所述特定智能IC卡,并接收所述特定智能IC卡返回的响应;其中,所述文件选择命令的数据域中包括选择的文件名或应用标识符;

从所述响应中查找处理选项数据对象列表;

获取所述处理选项数据对象列表内包含的数据并填入获取处理选项命令的数据域中,发送获取处理选项命令至所述特定智能IC卡;

接收所述特定智能IC卡返回的所述获取处理选项命令的响应,并从中提取应用文件定位器;

按照所述应用文件定位器的内容,获得所述标识信息的存放位置,所述存放位置包括短文件标识符和记录号;

根据所述存放位置,发送读记录命令至所述特定智能IC卡,并接收所述特定智能IC卡返回的所述标识信息;

通过所述预设算法对所述标识信息进行处理生成对称密钥作为所述加密密钥。

2.根据权利要求1所述的方法,其特征在于,所述预设算法为Hash算法或DES算法。

3.根据权利要求1-2任一项所述的方法,其特征在于,所述接收用户输入的签名指令后,打开所述移动终端的NFC通道之前还包括:接收用户输入的登录账号信息进行验证,验证通过后,打开所述移动终端的NFC通道。

4.根据权利要求3所述的方法,其特征在于,所述特定智能IC卡与用户的登录账号进行绑定。

5.一种用于移动终端的数字签名装置,其特征在于,包括:私钥存储模块,用于在所述移动终端内预先存储加密后的本地私钥,其中,所述本地私钥的加密密钥为通过预设算法对特定智能IC卡中的标识信息进行处理后得到的数据;

指令接收模块,用于接收用户输入的签名指令后,打开所述移动终端的NFC通道;

NFC读卡模块,用于读取所述特定智能IC卡的标识信息;

解密模块,用于依据所述标识信息对所述移动终端内存储的所述加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有所述解密后的本地私钥以及所述加密后的本地私钥;

数字签名模块,用于依据所述解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;

删除模块,用于删除所述解密后的本地私钥;

密钥生成模块,用于打开所述移动终端的NFC通道;发送文件选择命令至所述特定智能IC卡,并接收所述特定智能IC卡返回的响应;其中,所述文件选择命令的数据域中包括选择的文件名或应用标识符;从所述响应中查找处理选项数据对象列表;获取所述处理选项数据对象列表内包含的数据并填入获取处理选项命令的数据域中,发送获取处理选项命令至所述特定智能IC卡;接收所述特定智能IC卡返回的所述获取处理选项命令的响应,并从中提取应用文件定位器;按照所述应用文件定位器的内容,获得所述标识信息的存放位置,所述存放位置包括短文件标识符和记录号;根据所述存放位置,发送读记录命令至所述特定智能IC卡,并接收所述特定智能IC卡返回的所述标识信息;通过所述预设算法对所述标识信息进行处理生成对称密钥作为所述加密密钥。

说明书 :

一种用于移动终端的数字签名方法及其装置

技术领域

[0001] 本发明涉及数字签名技术领域,特别是涉及一种用于移动终端的数字签名方法及其装置。

背景技术

[0002] 数字签名目前在数字货币、手机钱包等金融应用中的应用广泛,该过程中本地存储用于大额支付的私钥。数字签名过程中,用户输入待签名数据后,首先依据Hash算法生成待签名数据的摘要,然后使用本地存储的私钥对摘要进行加密,完成数字签名。该过程中私钥是用户身份的唯一标识,故私钥的安全性一直是需要突出关注之处。
[0003] 这就带来了如何安全有效地保护本地私钥的问题。在私钥保护的路径上通常有两个方案,一是保护密钥本身,二是保护访问过程。
[0004] 而目前对访问过程的保护,即是将本地存储的私钥通过DES(Data Encryption Standard,数据加密标准)或3DES等对称加密算法加密,数字签名访问时再对其进行解密。但这种方式下,加密密钥一般由用户自行设定,非常容易被破解掉,使得数字签名的安全性不够高。
[0005] 因此,如何提供一种安全性高的用于移动终端的数字签名方法及其装置是本领域技术人员目前需要解决的问题。

发明内容

[0006] 本发明的目的是提供一种用于移动终端的数字签名方法及其装置,能够提高本地私钥的加密密钥的破解难度,数字签名的安全程度高。
[0007] 为解决上述技术问题,本发明提供了一种用于移动终端的数字签名方法,包括:
[0008] 在所述移动终端内预先存储加密后的本地私钥,其中,所述本地私钥的加密密钥为通过预设算法对特定智能IC卡中的标识信息进行处理后得到的数据;
[0009] 接收用户输入的签名指令后,打开所述移动终端的NFC通道;
[0010] 读取所述特定智能IC卡的标识信息;
[0011] 依据所述标识信息对所述移动终端内存储的所述加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有所述解密后的本地私钥以及所述加密后的本地私钥;
[0012] 依据所述解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;
[0013] 删除所述解密后的本地私钥。
[0014] 优选地,所述加密密钥的具体生成过程包括:
[0015] 打开所述移动终端的NFC通道;
[0016] 发送文件选择命令至所述特定智能IC卡,并接收所述特定智能IC卡返回的响应;其中,所述文件选择命令的数据域中包括选择的文件名或应用标识符;
[0017] 从所述响应中查找处理选项数据对象列表;
[0018] 获取所述处理选项数据对象列表内包含的数据并填入获取处理选项命令的数据域中,发送获取处理选项命令至所述特定智能IC卡;
[0019] 接收所述特定智能IC卡返回的所述获取处理选项命令的响应,并从中提取应用文件定位器;
[0020] 按照所述应用文件定位器的内容,获得所述标识信息的存放位置,所述存放位置包括短文件标识符和记录号;
[0021] 根据所述存放位置,发送读记录命令至所述特定智能IC卡,并接收所述特定智能IC卡返回的所述标识信息;
[0022] 通过所述预设算法对所述标识信息进行处理生成对称密钥作为所述加密密钥。
[0023] 优选地,所述预设算法为Hash算法或DES算法。
[0024] 优选地,所述接收用户输入的签名指令后,打开所述移动终端的NFC通道之前还包括:
[0025] 接收用户输入的登录账号信息进行验证,验证通过后,打开所述移动终端的NFC通道。
[0026] 优选地,所述特定智能IC卡与用户的登录账号进行绑定。
[0027] 为解决上述技术问题,本发明还提供了一种用于移动终端的数字签名装置,包括:
[0028] 私钥存储模块,用于在所述移动终端内预先存储加密后的本地私钥,其中,所述本地私钥的加密密钥为通过预设算法对特定智能IC卡中的标识信息进行处理后得到的数据;
[0029] 指令接收模块,用于接收用户输入的签名指令后,打开所述移动终端的NFC通道;
[0030] NFC读卡模块,用于读取所述特定智能IC卡的标识信息;
[0031] 解密模块,用于依据所述标识信息对所述移动终端内存储的所述加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有所述解密后的本地私钥以及所述加密后的本地私钥;
[0032] 数字签名模块,用于依据所述解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;
[0033] 删除模块,用于删除所述解密后的本地私钥。
[0034] 本发明提供了一种用于移动终端的数字签名方法及其装置,包括将特定智能IC中的标识信息通过预设算法进行处理后得到的数据作为本地私钥的加密密钥,在进行数字签名过程中,通过移动终端的NFC通道读取该智能IC卡的标识信息,然后依据该标识信息得到解密密钥对加密后的本地私钥进行解密,得到解密后的本地私钥进行数字签名,最后删除该解密后的本地私钥。可见,本发明中本地私钥的加密密钥依据特定智能IC卡中的标识信息得到,而特定智能IC卡属于用户个人,其标识信息与智能IC卡唯一对应,且该标识信息与用户的个人信息(如生日、手机号)以及用户习惯并无关系,故很难被破解,大大提高了本地私钥的安全性,进而提高了数字签名过程的安全性。

附图说明

[0035] 为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0036] 图1为本发明提供的一种用于移动终端的数字签名方法的过程的流程图;
[0037] 图2为本发明提供的一种用于移动终端的数字签名装置的结构示意图。

具体实施方式

[0038] 本发明的核心是提供一种用于移动终端的数字签名方法及其装置,能够提高本地私钥的加密密钥的破解难度,数字签名的安全程度高。
[0039] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040] 本发明提供了一种用于移动终端的数字签名方法,参见图1所示,图1为本发明提供的一种用于移动终端的数字签名方法的过程的流程图;该方法包括:
[0041] 步骤s101:在移动终端内预先存储加密后的本地私钥,其中,本地私钥的加密密钥为通过预设算法对特定智能IC(Integrated Circuit Card,集成电路卡)卡中的标识信息进行处理后得到的数据;
[0042] 步骤s102:接收用户输入的签名指令后,打开移动终端的NFC(Near Field Communication,近场通信)通道;
[0043] 步骤s103:读取特定智能IC卡的标识信息;
[0044] 其中,这里的智能IC卡指的是银行卡、公交卡等使用智能卡技术的卡片。
[0045] 步骤s104:依据标识信息对移动终端内存储的加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有解密后的本地私钥以及加密后的本地私钥;
[0046] 步骤s105:依据解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;
[0047] 步骤s106:删除解密后的本地私钥。
[0048] 另外,步骤s106之后还包括关闭NFC通道。
[0049] 其中,加密密钥的具体生成过程包括:
[0050] 步骤s201:打开移动终端的NFC通道;
[0051] 步骤s202:发送文件选择命令至特定智能IC卡,并接收特定智能IC卡返回的响应;其中,文件选择命令的数据域中包括选择的文件名或应用标识符(AID,Application Identifier);
[0052] 这里的文件选择命令是指通过文件名或AID来选择IC卡中的应用。
[0053] 步骤s203:从响应中查找处理选项数据对象列表;
[0054] 此处的响应为文件控制信息(FCI,File Control Information),FCI中包含了处理选项数据对象列表,此列表中包含了IC卡需要的数据,例如终端国家代码,交易货币代码,授权金额等。
[0055] 步骤s204:获取处理选项数据对象列表内包含的数据并填入获取处理选项命令的数据域中,发送获取处理选项命令至特定智能IC卡;
[0056] 步骤s205:接收特定智能IC卡返回的获取处理选项命令的响应,并从中提取应用文件定位器;
[0057] 步骤s206:按照应用文件定位器的内容,获得标识信息的存放位置,存放位置包括短文件标识符和记录号;
[0058] 步骤s207:根据存放位置,发送读记录命令至特定智能IC卡,并接收特定智能IC卡返回的标识信息;
[0059] 步骤s208:通过预设算法对标识信息进行处理生成对称密钥作为加密密钥。
[0060] 具体的,这里的预设算法为Hash算法或DES算法。当然,也可以采用其他算法,本发明不作具体限定。
[0061] 作为优选地,步骤s102中,接收用户输入的签名指令后,打开移动终端的NFC通道之前还包括:
[0062] 接收用户输入的登录账号信息进行验证,验证通过后,打开移动终端的NFC通道。
[0063] 可以理解的是,通过设置登录账号,能够避免在用户的移动终端以及相应的特定智能IC卡丢失时,他人使用用户的智能IC卡进行数字签名,提高了数字签名的安全性。
[0064] 作为优选地,特定智能IC卡与用户的登录账号进行绑定。可以理解的是,用户的智能IC卡可能会丢失或被窃取,为了避免他人使用用户的智能IC卡进行数字签名,可将上述特定智能IC卡与用户的登录账号进行绑定,这样使得即使他人拿到该特定智能IC卡,也无法使用其进行数字签名,从而进一步提高了数字签名的安全性。
[0065] 本发明提供了一种用于移动终端的数字签名方法,包括将特定智能IC中的标识信息通过预设算法进行处理后得到的数据作为本地私钥的加密密钥,在进行数字签名过程中,通过移动终端的NFC通道读取该智能IC卡的标识信息,然后依据该标识信息得到解密密钥对加密后的本地私钥进行解密,得到解密后的本地私钥进行数字签名,最后删除该解密后的本地私钥。可见,本发明中本地私钥的加密密钥依据特定智能IC卡中的标识信息得到,而特定智能IC卡属于用户个人,其标识信息与智能IC卡唯一对应,且该标识信息与用户的个人信息(如生日、手机号)以及用户习惯并无关系,故很难被破解,大大提高了本地私钥的安全性,进而提高了数字签名过程的安全性。
[0066] 本发明还提供了一种用于移动终端的数字签名装置,参见图2所示,图2为本发明提供的一种用于移动终端的数字签名装置的结构示意图。该装置包括:
[0067] 私钥存储模块1,用于在移动终端内预先存储加密后的本地私钥,其中,本地私钥的加密密钥为通过预设算法对特定智能IC卡中的标识信息进行处理后得到的数据;
[0068] 指令接收模块2,用于接收用户输入的签名指令后,打开移动终端的NFC通道;
[0069] NFC读卡模块3,用于读取特定智能IC卡的标识信息;
[0070] 解密模块4,用于依据标识信息对移动终端内存储的加密后的本地私钥进行解密,得到解密后的本地私钥,此时,移动终端内同时存储有解密后的本地私钥以及加密后的本地私钥;
[0071] 数字签名模块5,用于依据解密后的本地私钥对输入的待签名数据进行数字签名,并返回签名结果;
[0072] 删除模块6,用于删除解密后的本地私钥。
[0073] 本发明提供了一种用于移动终端的数字签名装置,包括将特定智能IC中的标识信息通过预设算法进行处理后得到的数据作为本地私钥的加密密钥,在进行数字签名过程中,通过移动终端的NFC通道读取该智能IC卡的标识信息,然后依据该标识信息得到解密密钥对加密后的本地私钥进行解密,得到解密后的本地私钥进行数字签名,最后删除该解密后的本地私钥。可见,本发明中本地私钥的加密密钥依据特定智能IC卡中的标识信息得到,而特定智能IC卡属于用户个人,其标识信息与智能IC卡唯一对应,且该标识信息与用户的个人信息(如生日、手机号)以及用户习惯并无关系,故很难被破解,大大提高了本地私钥的安全性,进而提高了数字签名过程的安全性。
[0074] 需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0075] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。