H04L29/06 H04L9/32
1.一种基于移动终端的多个数字证书的管理方法,其特征在于,该方法包 括:
A、在移动签名服务平台MSSP中设置一个包括多条CA信息的CA映射表; 所述CA信息中包括:CA标识、CA编号和CA名称;
B、当证书中心根据用户的证书申请请求向MSSP发送证书申请激活请求时, MSSP根据证书申请激活请求查询所存储的CA映射表得到相应的CA信息,向 与用户对应的移动终端中的移动签名装置发送携带有CA信息的激活指令,以指 示所述移动签名装置存储CA信息、生成并存储公私密钥对以及向证书中心发送 证书请求,并将证书中心根据证书请求生成的数字证书转换成证书信息文件后 发送给所述移动签名装置;
C、当需要用户对待签数据进行数字签名时,MSSP根据应用服务器发送的 CA标识查询CA映射表得到相应的CA信息,将所述CA信息和应用服务器发 送的待签数据发送给与用户对应的移动终端中的移动签名装置,并将移动签名 装置返回的签名数据发送给应用服务器进行验证。
2.根据权利要求1所述的方法,其特征在于:
所述CA标识为数字证书中的甄别名称或者数字证书中的公钥的哈希值。
3.根据权利要求1所述的方法,其特征在于,所述步骤B包括:
b1、用户向证书中心发送证书申请请求;
b2、当证书中心接收到证书申请请求时,证书中心向MSSP发送证书申请 激活请求;
b3、MSSP根据所接收到的证书申请激活请求查询其所存储的CA映射表, 并根据查询结果向对应的移动终端中的移动签名装置发送激活指令;
b4、移动终端中的移动签名装置根据所接收到的激活指令存储相应的CA信 息,生成并存储公私密钥对;使用该公私密钥对生成PKCS10请求,将PKCS10 请求和所述激活指令中携带的CA编号发送给MSSP;
b5、MSSP接收到的P10请求后,查询CA映射表得到相应的CA标识;根 据所得到的CA标识将所接收到的P10请求发送给相应的证书中心;
b6、证书中心对所接收到的P10请求进行验证;如果验证通过,则为用户 签发数字证书,并将数字证书、相应的CA标识和用户信息发送给MSSP;
b7、MSSP查询CA映射表得到CA编号,并对所接收到的数字证书进行解 析,提取所需的有效信息生成证书信息文件;将证书信息文件和CA编号发送给 移动终端中的移动签名装置;
b8、移动终端中的移动签名装置存储所接收到的证书信息文件。
4.根据权利要求3所述的方法,其特征在于,所述步骤b1包括:
所述用户通过用户终端向证书中心发送一个证书申请请求;
或者,管理员根据所述用户的要求代所述用户向证书中心发送一个证书申请 请求。
5.根据权利要求3所述的方法,其特征在于:
所述证书申请激活请求中携带CA标识和用户信息;
其中,所述用户信息是用于标识各个用户的信息。
6.根据权利要求5所述的方法,其特征在于:
所述用户信息为用户的手机号码、用户名或用户编号。
7.根据权利要求3所述的方法,其特征在于,所述步骤b2中还进一步包括:
所述证书中心生成一个第一事务标识,并将该第一事务标识携带于所述证书 申请激活请求中发送给MSSP。
9.根据权利要求7所述的方法,其特征在于,所述步骤b3中还进一步包括:
MSSP存储所接收到的第一事务标识,将该第一事务标识与所述查询结果相 关联,然后再生成一个与所述第一事务标识唯一对应的第二事务标识,并将所 述第二事务标识携带于所述激活指令中发送给移动签名装置。
10.根据权利要求9所述的方法,其特征在于,所述步骤b4中还进一步包 括:
所述移动签名装置还将所接收到的激活指令中的第二事务标识发送给所述 MSSP。
12.根据权利要求10所述的方法,其特征在于,所述步骤b5中的所述查询 CA映射表得到相应的CA标识包括:
所述MSSP根据所述第二事务标识查到相应的第一事务标识,并查到 与所述第一事务标识相关联的CA信息中的CA标识。
13.根据权利要求12所述的方法,其特征在于,所述步骤b5中还进一步包 括:
将所述第一事务标识发送给相应的证书中心。
14.根据权利要求13所述的方法,其特征在于,所述步骤b6中还进一步包 括:
所述证书中心还将所述第一事务标识发送给所述MSSP。
16.根据权利要求14所述的方法,其特征在于,所述步骤b7中的所述MSSP 查询CA映射表得到CA编号包括:
所述MSSP根据证书中心发送的所述第一事务标识查到相应的所述第二 事务标识和CA映射表中的CA编号。
17.根据权利要求16所述的方法,其特征在于,所述步骤b7中还进一步包 括:
所述MSSP将所述第二事务标识发送给所述移动签名装置。
8.根据权利要求3所述的方法,其特征在于,所述步骤b3包括:
MSSP根据证书申请激活请求中的CA标识查询其所存储的CA映射表,查 到与该CA标识相对应的CA信息;
MSSP向与所述证书申请激活请求中的用户信息相对应的移动终端中的移 动签名装置发送激活指令;所述激活指令中携带有所查询到的CA信息中的CA 编号和CA名称。
11.根据权利要求3所述的方法,其特征在于,所述步骤b5中的所述查询 CA映射表得到相应的CA标识包括:
根据CA编号查询CA映射表得到与所述CA编号相对应的CA标识。
15.根据权利要求3所述的方法,其特征在于,所述步骤b7中的所述MSSP 查询CA映射表得到CA编号包括:
所述MSSP根据所接收到的CA标识查询CA映射表得到相应的CA编号。
18.根据权利要求3所述的方法,其特征在于,所述有效信息包括:
证书版本号、证书序列号、证书有效期、颁发者DN、主体DN和其它的证 书扩展项所对应的信息中的任意一个或多个信息。
19.根据权利要求1所述的方法,其特征在于,所述步骤C包括:
c1、应用服务器将待签数据、CA标识和用户信息发送给MSSP;
c2、MSSP根据所接收到的CA标识查询CA映射表,查到相应的CA编 号,将待签数据和CA编号发送给与用户信息相对应的移动终端中的移动签名装 置;
c3、所述移动签名装置根据所接收到的CA编号到所存储的对应的私钥, 根据私钥对接收到的待签数据进行签名以得到签名数据,将所述签名数据和CA 编号发送给MSSP;
c4、MSSP查询CA映射表得到相应的CA标识,将所接收到的签名数据和 CA标识发送给相应的应用服务器;
c5、应用服务器接收到签名数据后,从证书中心获取与用户信息相对应的数 字证书,根据该数字证书对接收到的签名数据进行验证。
20.根据权利要求19所述的方法,其特征在于,所述步骤c1中还进一步包 括:
所述应用服务器生成一个第三事务标识,并将该第三事务标识发送给所述 MSSP。
21.根据权利要求20所述的方法,其特征在于,所述步骤c2中还进一步包 括:
所述MSSP存储上述的第三事务标识,并将所述第三事务标识与所查到 的CA编号相关联,然后再生成一个与所述第三事务标识唯一对应的第四事务标 识,并将所述第四事务标识发送给所述移动签名装置。
22.根据权利要求21所述的方法,其特征在于,所述步骤c3中还进一步包 括:
所述移动签名装置将所接收到的所述第四事务标识发送给所述MSSP。
23.根据权利要求22所述的方法,其特征在于,所述步骤c4中还进一步包 括:
MSSP根据所接收到的第四事务标识查到相对应的第三事务标识,并将所 述第三事务标识发送给相应的应用服务器。
24.根据权利要求1至23中的任一所述的方法,其特征在于:
所述移动终端中的移动签名装置为SIM卡或手机终端中的安全芯片。
25.一种基于移动终端的多个数字证书的管理系统,其特征在于,该系统包 括:证书中心、移动签名服务平台MSSP、移动终端中的移动签名装置和至少一 个应用服务器;其中,
所述应用服务器,用于将待签数据、CA标识和用户信息发送给MSSP,并 接收MSSP发送的签名数据;还用于根据从证书中心获得的数字证书对所接收 到的签名数据进行验证;
所述证书中心,用于根据接收到的证书申请请求向MSSP发送证书申请激 活请求;还用于根据接收到的证书请求为用户签发数字证书,并将数字证书发 送给MSSP和相应的应用服务器;
所述MSSP,用于存储一个包括多条CA信息的CA映射表;还用于根据接 收到的证书申请激活请求查询所存储的CA映射表得到相应的CA信息,根据 CA信息向对应的移动终端中的移动签名装置发送携带有CA信息的激活指令; 将接收到的证书请求发送给证书中心;将接收到的数字证书转换成证书信息文 件后发送给所述移动签名装置;
还用于根据所接收到的CA标识查询CA映射表得到相应的CA信息,将待 签数据和CA信息发送给对应的移动终端中的移动签名装置;将接收到的签名数 据发送给相应的应用服务器;
所述移动终端中的移动签名装置,用于根据激活指令存储相应的CA信息, 生成并存储公私密钥对;生成证书请求,将证书请求和所述激活指令中携带的 CA信息发送给MSSP;存储所接收到的与所述CA信息相对应的证书信息文件; 还用于根据所存储的公私密钥对对待签数据进行数字签名得到签名数据,将所 述签名数据发送给MSSP。
26.一种移动签名服务平台,其特征在于,该移动签名服务平台包括:存储 模块、查询模块、转换模块和转发模块;
所述存储模块,用于存储一个包括多条CA信息的CA映射表;
所述查询模块,用于根据接收到的证书申请激活请求或CA标识查询所述存 储模块中存储的CA映射表得到相应的CA信息,将所述CA信息发送给转发模 块;
所述转换模块,用于将接收到的数字证书转换成证书信息文件后发送给转发 模块;
所述转发模块,用于根据所接收到的CA信息向对应的移动终端中的移动签 名装置发送携带有CA信息的激活指令,将接收到的证书请求发送给证书中心, 并将证书信息文件发送给所述移动签名装置;还用于将待签数据和相应的CA信 息发送给对应的移动终端中的移动签名装置,并将接收到的签名数据发送给相 应的应用服务器。
27.一种移动签名装置,其特征在于,该移动签名装置包括:
存储模块、接收处理模块、密钥生成模块、证书请求模块、签名模块和发送 模块;
所述存储模块,用于存储CA信息和与所述CA信息相对应的公私密钥对和 证书信息文件;
所述接收处理模块,用于将接收到的激活指令中的CA信息发送给所述存储 模块和发送模块,并根据所述激活指令向所述密钥生成模块发送生成指令;将 接收到的证书信息文件发送给所述存储模块;将接收到的待签数据发送给所述 签名模块;
所述密钥生成模块,用于根据生成指令生成公私密钥对,并将所生成的公私 密钥对发送给存储模块和请求模块;
所述证书请求模块,用于生成证书请求,并将所述证书请求发送给所述发送 模块;
所述签名模块,用于根据所述存储模块中存储的公私密钥对对待签数据进行 数字签名得到签名数据,将所述签名数据发送给发送模块;
所述发送模块,用于将证书请求和相应的CA信息发送给移动签名服务平 台;还用于将所述签名数据发送给所述移动签名服务平台。
28.一种移动终端,其特征在于,该移动终端中包括:
如权利要求27中所示的移动签名装置。
本发明涉及数据业务、信息安全技术领域,尤其涉及一种基于移动终端 的多个数字证书的管理方法、系统和设备。
在现有的公钥基础设施(PKI,Public Key Infrastructure)技术方案中, 证书认证机构(CA,Certification Authority)往往与固定的一个或几个业务 应用绑定,CA为用户颁发相应的证书,该证书中包括与上述业务应用相对 应的用户身份、公钥和私钥。目前,已经建设的CA有上百家,例如,作为 第三方运营的北京CA、天威诚信、CFCA等,自行建设以供特定系统使用的 工行CA、建行CA等。上述的各种CA在给用户颁发数字证书时,通常是将 CA为用户所颁发的数字证书存储在USB‑Key(一种具有USB接口的硬件设 备)或智能卡中,同时将数字证书中公钥所对应的私钥也保存在USB‑Key 或智能卡中,然后将上述USB‑Key或智能卡交由用户保管。当用户需要访问 相应的业务应用时,需要将与该业务应用相对应的USB‑Key或智能卡与相应 的用户终端连接,并使用USB‑Key或智能卡中所存储的数字证书中的私钥对 交易数据进行数字签名,并在服务器端对数字签名进行验证,以实现用户对 对该交易数据的验证确认或认可。
在传统的PKI解决方案中,当用户需要在业务应用中对交易数据进行数 字签名时,通常是通过调用客户端操作系统的应用程序接口(API,Application Program Interface)来实现的,最为典型的实现方式是客户端为Windows系 列操作系统,调用该系统所提供的CryptoAPI来实现。在Windows环境下, 实现CryptoAPI的软件或软硬件模块称为调用密码服务提供者(CSP)组件, 因此在Windows环境下可认为是客户端调用CSP的方式来实现。
图1是现有技术中用户进行数字签名的流程示意图。
如图1所示,该流程包括:
步骤101,应用服务器将待签数据传输给客户端/浏览器。
步骤102,客户端/浏览器调用Windows CSP组件,通过Windows CSP 组件将待签数据发送给USB‑Key。
步骤103,USB‑Key使用其存储的私钥对待签数据进行签名以得到签名 数据,并将签名数据发送给Windows CSP组件。
步骤104,Windows CSP组件将接收到的签名数据通过客户端/浏览器发 送给应用服务器。
步骤105,应用服务器接收到签名数据后,从CA处获取该用户的数字 证书,并根据该数字证书对所接收到的签名数据进行验证。
在本步骤中,若验证通过,则认为上述待签数据得到了用户的确认;若 验证未通过,则应认为上述待签数据未得到用户的确认。
在现有技术中,通过上述的步骤101~105即可实现用户对待签数据的数 字签名。
然而,虽然现有技术中的数字签名方法可以解决交易安全的问题,但上 述实现数字签名的方法中还存在如下所述的一些缺陷或不足:
1、用户携带不便,且成本较高。
在上述的数字签名的方法中,一种业务应用通常只使用某一家CA的数 字证书,所以USB‑Key中一般仅存储一个私钥,该私钥只对应于某一种或某 几种业务应用,因此一种USB‑Key仅能适用于一种或某几种特定的业务应 用,而并不能用于其它的业务应用,因而导致各种业务应用的USB‑Key之间 并不能通用。用户如果要想使用某一种业务应用,就必须购买与该业务应用 相对应的USB‑Key;而且当用户需要使用多种业务应用时,还需要随身携带 多个USB‑Key,不仅使用不便,而且还需要承担额外的使用成本。
2、具有平台依赖性,只能用于Windows环境。
由于上述实现数字签名的方法必须依赖于Windows系统的CSP组件, 因此只能适用于Windows系列的平台,而无法适用于其他的操作系统。
3、终端适应性差。
由于USB‑Key需要通过USB插口与用户终端连接,因此用户所使用的 用户终端上必须具备USB插口,而不具备USB插口的其他设备(例如,手 机、Pad等)则无法使用,因此终端适应性差。
4、需安装特定的客户端程序。
由于各种USB‑Key之间并不通用,因此对于不同的USB‑Key,需要在 用户终端上安装不同的客户端程序,从而要求用户具有较高的操作水平,增 加了用户的操作复杂度,而且还存在各种客户端程序的版本适配的问题,经 常出现安装不成功导致无法使用USB‑Key的情形。
在当今的移动互联网时代,用户终端和业务应用的种类越来越多,各种 业务应用对安全的要求也越来越强,而现有技术中实现数字签名的方法存在 如上所述的不足之处,因此现有技术中通过传统PKI实现数字签名的方法已 经无法满足用户的需求。
有鉴于此,本发明提供了一种基于移动终端的多个数字证书的管理方 法、系统和设备,从而大大方便了用户对多个数字证书的管理和使用,并降 低了用户的使用成本。
本发明采用的技术方案具体是这样实现的:
一种基于移动终端的多个数字证书的管理方法,该方法包括:
A、在移动签名服务平台MSSP中设置一个包括多条CA信息的CA映 射表;所述CA信息中包括:CA标识、CA编号和CA名称;
B、当证书中心根据用户的证书申请请求向MSSP发送证书申请激活请 求时,MSSP根据证书申请激活请求查询所存储的CA映射表得到相应的CA 信息,向与用户对应的移动终端中的移动签名装置发送携带有CA信息的激 活指令,以指示所述移动签名装置存储CA信息、生成并存储公私密钥对以 及向证书中心发送证书请求,并将证书中心根据证书请求生成的数字证书转 换成证书信息文件后发送给所述移动签名装置;
C、当需要用户对待签数据进行数字签名时,MSSP根据应用服务器发送 的CA标识查询CA映射表得到相应的CA信息,将所述CA信息和应用服务 器发送的待签数据发送给与用户对应的移动终端中的移动签名装置,并将移 动签名装置返回的签名数据发送给应用服务器进行验证。
一种基于移动终端的多个数字证书的管理系统,该系统包括:证书中心、 移动签名服务平台MSSP、移动终端中的移动签名装置和至少一个应用服务 器;其中,
所述应用服务器,用于将待签数据、CA标识和用户信息发送给MSSP, 并接收MSSP发送的签名数据;还用于根据从证书中心获得的数字证书对所 接收到的签名数据进行验证;
所述证书中心,用于根据接收到的证书申请请求向MSSP发送证书申请 激活请求;还用于根据接收到的证书请求为用户签发数字证书,并将数字证 书发送给MSSP和相应的应用服务器;
所述MSSP,用于存储一个包括多条CA信息的CA映射表;还用于根 据接收到的证书申请激活请求查询所存储的CA映射表得到相应的CA信息, 根据CA信息向对应的移动终端中的移动签名装置发送携带有CA信息的激 活指令;将接收到的证书请求发送给证书中心;将接收到的数字证书转换成 证书信息文件后发送给所述移动签名装置;
还用于根据所接收到的CA标识查询CA映射表得到相应的CA信息, 将待签数据和CA信息发送给对应的移动终端中的移动签名装置;将接收到 的签名数据发送给相应的应用服务器;
所述移动终端中的移动签名装置,用于根据激活指令存储相应的CA信 息,生成并存储公私密钥对;生成证书请求,将证书请求和所述激活指令中 携带的CA信息发送给MSSP;存储所接收到的与所述CA信息相对应的证 书信息文件;还用于根据所存储的公私密钥对对待签数据进行数字签名得到 签名数据,将所述签名数据发送给MSSP。
一种移动签名服务平台,该移动签名服务平台包括:存储模块、查询模 块、转换模块和转发模块;
所述存储模块,用于存储一个包括多条CA信息的CA映射表;
所述查询模块,用于根据接收到的证书申请激活请求或CA标识查询所 述存储模块中存储的CA映射表得到相应的CA信息,将所述CA信息发送 给转发模块;
所述转换模块,用于将接收到的数字证书转换成证书信息文件后发送给 转发模块;
所述转发模块,用于根据所接收到的CA信息向对应的移动终端中的移 动签名装置发送携带有CA信息的激活指令,将接收到的证书请求发送给证 书中心,并将证书信息文件发送给所述移动签名装置;还用于将待签数据和 相应的CA信息发送给对应的移动终端中的移动签名装置,并将接收到的签 名数据发送给相应的应用服务器。
一种移动签名装置,该移动签名装置包括:
存储模块、接收处理模块、密钥生成模块、证书请求模块、签名模块和 发送模块;
所述存储模块,用于存储CA信息和与所述CA信息相对应的公私密钥 对和证书信息文件;
所述接收处理模块,用于将接收到的激活指令中的CA信息发送给所述 存储模块和发送模块,并根据所述激活指令向所述密钥生成模块发送生成指 令;将接收到的证书信息文件发送给所述存储模块;将接收到的待签数据发 送给所述签名模块;
所述密钥生成模块,用于根据生成指令生成公私密钥对,并将所生成的 公私密钥对发送给存储模块和请求模块;
所述证书请求模块,用于生成证书请求,并将所述证书请求发送给所述 发送模块;
所述签名模块,用于根据所述存储模块中存储的公私密钥对对待签数据 进行数字签名得到签名数据,将所述签名数据发送给发送模块;
所述发送模块,用于将证书请求和相应的CA信息发送给移动签名服务 平台;还用于将所述签名数据发送给所述移动签名服务平台。
一种移动终端,该移动终端中包括:如上所述的移动签名装置。
由上述技术方案可见,由于本发明在MSSP设置了一个包括多条CA信 息的CA映射表,因此MSSP可根据用户的证书申请请求和所述CA映射表, 指示相应移动终端中的移动签名装置存储相应的CA信息、生成并存储公私 密钥对,然后将相应的CA为该用户所签发的证书转换成证书信息文件存储 在移动签名装置,从而为用户申请一个数字证书;还可将应用服务器发送的 待签数据发送给移动签名装置进行数字签名,并将签名数据返回给应用服务 器进行验证,以完成用户的数字签名。通过使用本发明的技术方案,可以在 移动签名装置中存储与多个应用相对应的多个数字证书的信息(例如,CA 信息、公私密钥对等),使得用户可以在一个移动终端中的移动签名装置中 存储并管理多个数字证书的信息,用户只需持有该移动签名装置即可对多种 业务应用进行交易数据的数字签名,而无需携带多个USB‑Key,因此大大方 便了用户的使用,并降低了用户的使用成本,而且还有效地利用了带宽资源, 节省了移动签名装置中宝贵的存储空间,从而可以存储更多的数字证书的信 息。
图1是现有技术中用户进行数字签名的流程示意图。
图2是本发明中基于移动终端的多个数字证书的管理方法的流程图。
图3为本发明中步骤202的一种实现方法的流程图。
图4为本发明中步骤203的一种实现方法的流程图。
图5为本发明中基于移动终端的多个数字证书的管理系统的示意图。
图6为本发明中的MSSP的结构示意图。
图7为本发明中的移动签名装置的结构示意图。
为使本发明的目的、技术方案和优点表达得更加清楚明白,下面结合附 图及具体实施例对本发明再作进一步详细的说明。
图2是本发明中基于移动终端的多个数字证书的管理方法的流程图。
如图2所示,该方法包括:
步骤201,在移动签名服务平台(MSSP,Mobile Signature Service Platform)中设置一个包括多条CA信息的CA映射表。
在本步骤中,可以预先在MSSP中设置一个CA映射表,用于记录各个 业务应用所对应的多条CA信息。因此,该CA映射表中包括多条与不同的 业务应用相对应的CA信息,每条CA信息中可以包括CA标识、CA编号和 CA名称。
其中,上述的CA标识是可唯一标识一条CA信息的特定字符串。例如, 在本发明的实施例中,所述CA标识可以是数字证书中的甄别名称(DN,长 度一般为数十个字节到数百字节)或者数字证书中的公钥的哈希值(长度一 般为20字节);也可以是其它可以唯一标识该CA信息的特定字符串。因此, 可以直接从CA证书中提取可以唯一标识所述CA信息的特定字符串作为CA 标识。在本发明的具体实施例中,MSSP可以和CA中心预先约定CA标识 的具体内容。
上述的CA编号为CA信息在CA映射表中的编号,该CA编号由MSSP 内部进行维护,MSSP可以预先给各条CA信息指定相应的CA编号,也可 对映射表中的各条CA信息按照排列顺序进行编号。另外,上述CA编号的 长度可预先设置。例如,可将CA编号的长度设置为1个字节(其中,1个 字节为8个比特),此时,该CA映射表中可存储28=256条CA信息;也可 将CA编号的长度设置为2个字节,此时,该CA映射表中可存储216=65536 条CA信息。
上述的CA名称为CA信息所对应的CA的名称。例如,当某条CA信 息所对应的CA为中国工商银行(ICBC)的CA时,则该CA信息中的CA 名称可为ICBC CA;而当某条CA信息所对应的CA为中国移动通信集团公 司(CMCC)的CA时,则该CA信息中的CA名称可为CMBC CA。
步骤202,当证书中心根据用户的证书申请请求向MSSP发送证书申请 激活请求时,MSSP根据证书申请激活请求查询所存储的CA映射表得到相 应的CA信息,向与用户对应的移动终端中的移动签名装置发送携带有CA 信息的激活指令,以指示所述移动签名装置存储CA信息、生成并存储公私 密钥对以及向证书中心发送证书请求,并将证书中心根据证书请求生成的数 字证书转换成证书信息文件后发送给所述移动签名装置。
其中,在本发明的具体实施例中,所述的证书中心可以是CA或注册机 构(RA,Registration Authority)。所述证书请求可以是PKCS10请求(可简 称为P10请求)或其它请求生成数字证书的请求,以下将以所述证书请求为 PKCS10请求为例进行相应的说明。
在本发明的具体实施例中,上述步骤202的实现方式有很多种。例如, 图3为本发明中步骤202的一种实现方法的流程图。如图3所示,步骤202 可通过如下所述的步骤来实现:
步骤301,用户向证书中心发送证书申请请求。
本步骤中,当用户需要申请所需的业务应用的数字证书时,该用户可通 过用户终端向证书中心发送一个证书申请请求,也可以由管理员根据用户的 要求(例如,书面或口头请求等)代该用户向证书中心发送一个证书申请请 求。其中,所述的用户终端可以是个人电脑(PC),也可以是移动终端(例 如,手机、Pad等);所述的证书中心可以是CA或注册机构(RA,Registration Authority)。
例如,用户可通过PC登录到证书中心,在证书中心的服务界面上选择 与业务应用相关的证书,并点击“证书下载”按钮,从而向证书中心发送证 书申请请求;或者,用户也可通过移动终端发送确认短信到证书中心,从而 向证书中心发送证书申请请求;或者,可以由证书中心的管理员根据用户的 要求(例如,书面或口头请求)点击“证书下载”按钮,向证书中心发送证 书申请请求。
步骤302,当证书中心接收到证书申请请求时,证书中心向MSSP发送 证书申请激活请求。
在本步骤中,证书中心在接收到证书申请请求后,将向MSSP发送相应 的证书申请激活请求。其中,证书申请激活请求中可以携带CA标识和用户 信息。其中,所述用户信息是用于标识各个用户的信息。在本发明的具体实 施例中,所述用户信息可以是用户的手机号码、用户名或用户编号等信息。
进一步地,为了标识上述由证书中心发送的的证书申请激活请求,证书 中心还可生成一个第一事务标识(TransactionID1),并将该TransactionID1 携带于上述证书申请激活请求中发送给MSSP。
步骤303,MSSP根据所接收到的证书申请激活请求查询其所存储的CA 映射表,并根据查询结果向对应的移动终端中的移动签名装置发送激活指令。
具体来说,在本步骤中,MSSP首先可根据所接收到的证书申请激活请 求查询其所存储的CA映射表,得到相应的查询结果。例如,MSSP可根据 证书申请激活请求中的CA标识查询其所存储的CA映射表,查到与该CA 标识相对应的CA信息。
然后,MSSP可向与所述证书申请激活请求中的用户信息相对应的移动 终端中的移动签名装置发送激活指令,其中,该激活指令中携带有所查询到 的CA信息中的CA编号和CA名称。
进一步地,当证书申请激活请求中携带有TransactionID1时,由于证书 申请激活请求中的事务标识(即TransactionID1)是由各个证书中心独立生 成的,因此不同的证书中心发送的证书申请激活请求可能会具有相同的事务 标识。为了区分不同证书中心所发送的证书申请激活请求,MSSP可存储上 述所接收到的TransactionID1,将该TransactionID1与上述查到的查询结果 (即上述的CA信息)相关联,然后再生成一个与上述TransactionID1唯一 对应的第二事务标识(TransactionID2),并将上述TransactionID2携带于所 述激活指令中发送给移动签名装置。
步骤304,移动终端中的移动签名装置根据所接收到的激活指令存储相 应的CA信息,生成并存储公私密钥对;使用该公私密钥对生成PKCS10请 求(可简称为P10请求),将P10请求和所述激活指令中携带的CA编号发 送给MSSP。
例如,在本步骤中,移动终端中的移动签名装置可以根据激活指令在存 储空间中选取一块未使用的具有预定大小的存储区域(可称之为密钥容器), 将所接受到的CA信息(例如,所述激活指令中携带的CA编号和CA名称) 存储在所选取的密钥容器中。然后,所述移动签名装置还将根据上述的激活 指令生成相应的公私密钥对(该公私密钥对包括一个公钥和一个私钥),将 该公私密钥对存储于上述所选取的密钥容器中;移动签名装置还将根据该公 私密钥对生成相应的P10请求,并将P10请求和所述激活指令中携带的CA 编号发送给MSSP。具体的公私密钥对和P10请求的生成方法可使用现有技 术中常用的生成方法,在此不再赘述。另外,在本发明的具体实施例中,所 述移动终端中的移动签名装置可以是SIM卡或移动终端(例如,手机或Pad 等)中的安全芯片。
进一步地,在本步骤中,如果激活指令中携带有TransactionID2,则当 移动签名装置将所述P10请求和相应的CA编号发送给MSSP时,所述移动 签名装置还可将所接收到的激活指令中的TransactionID2也发送给MSSP。
步骤305,MSSP接收到的P10请求后,查询CA映射表得到相应的CA 标识;根据所得到的CA标识将所接收到的P10请求发送给相应的证书中心。
在本步骤中,MSSP在接收到的P10请求后,可以根据CA编号查询CA 映射表得到与所述CA编号相对应的CA标识,然后根据所得到的CA标识 将所接收到的P10请求发送给相应的证书中心。
进一步地,当MSSP接收到P10请求时,如果MSSP还接收到所述移动 签名装置发送的TransactionID2,则MSSP也可根据该TransactionID2查到 相应的TransactionID1,并查到与TransactionID1相关联的CA信息中的 CA标识;然后,在本步骤中,还可以进一步将所述TransactionID1也发送给 相应的证书中心。
步骤306,证书中心对所接收到的P10请求进行验证;如果验证通过, 则为用户签发数字证书,并将数字证书、相应的CA标识和用户信息发送给 MSSP。
在本步骤中,证书中心使用现有技术中常用的验证方法对所接收到的 P10请求进行验证。如果验证通过,则证书中心将为用户签发数字证书,并 将该数字证书、相应的CA标识和用户信息发送给MSSP。
其中,在本发明的具体实施例中,所述的数字证书可以是X.509证书。 该证书具有固定的格式,采用ASN.1编码方式,通常有1~2KB大小。
进一步地,如果在步骤305中MSSP将P10请求发送给证书中心时,还 将TransactionID1发送给该证书中心,则在本步骤中,所述证书中心还可将 TransactionID 1发送给MSSP。
步骤307,MSSP查询CA映射表得到CA编号,并对所接收到的数字证 书进行解析,提取所需的有效信息生成证书信息文件;将证书信息文件和CA 编号发送给移动终端中的移动签名装置。
在本步骤中,MSSP可根据所接收到的CA标识查询CA映射表得到相 应的CA编号,再对数字证书进行解析,提取所需的有效信息生成相应的证 书信息文件;然后,MSSP将所述证书信息文件和CA编号发送给所述移动 签名装置。
进一步地,MSSP也可根据证书中心发送的TransactionID1查到相应 的TransactionID2和CA映射表中的CA编号,然后再根据CA编号对数字证 书进行解析,提取所需的有效信息生成相应的证书信息文件;此后,MSSP 还可将所述TransactionID2发送给所述移动签名装置。
另外,所述证书信息文件是从所接收到的数字证书中提取出的、可在移 动签名装置上供用户查看的文本信息文件。因此,在本发明的具体实施例中, 所述有效信息可以包括证书版本号、证书序列号、证书有效期、颁发者DN、 主体DN和其它的证书扩展项所对应的信息中的任意一个或多个信息。
步骤308,移动终端中的移动签名装置存储所接收到的证书信息文件。
具体来说,在本步骤中,移动终端中的移动签名装置(例如,SIM卡或 安全芯片等)可根据所接收到的CA编号将所接收到的证书信息文件存储在 与CA编号相对应的密钥容器中。
通过上述的步骤301~308,可以实现上述的步骤202,从而使得用户可 以实现数字证书的申请。而当需要用户对业务应用进行数字签名时,则可执 行如下所述的步骤203。
步骤203,当需要用户对待签数据进行数字签名时,MSSP根据应用服 务器发送的CA标识查询CA映射表得到相应的CA信息,将所述CA信息和 应用服务器发送的待签数据发送给与用户对应的移动终端中的移动签名装 置,并将移动签名装置返回的签名数据发送给应用服务器进行验证。
例如,在本发明的具体实施例中,当需要用户对待签数据进行数字签名 时,应用服务器可将待签数据、CA标识和用户信息发送给MSSP;MSSP将 根据所述CA标识查询CA映射表得到相应的CA编号,然后将待签数据和 CA编号发送给对应的移动终端中的移动签名装置;移动签名装置根据CA 编号使用所存储的相应的私钥对接收到的待签数据进行数字签名以得到签名 数据,将所述签名数据和CA编号发送给MSSP;MSSP查询CA映射表得到 相应的CA标识,将所接收到的签名数据和CA标识发送给相应的应用服务 器;应用服务器接收到签名数据后,从CA处获取相对应的数字证书,根据 该数字证书对接收到的签名数据进行验证。
在本发明的具体实施例中,上述步骤203的实现方式也有很多种。例如, 图4为本发明中步骤203的一种实现方法的流程图。如图4所示,步骤203 可通过如下所述的步骤来实现:
步骤401,应用服务器将待签数据、CA标识和用户信息发送给MSSP。
在本步骤中,当应用服务器需要用户对待签数据进行数字签名时,可以 触发该应用服务器将该待签数据、CA标识和用户信息发送给MSSP。
进一步地,为了标识上述由应用服务器发送的的待签数据,该应用服务 器还可生成一个第三事务标识(TransactionID3),并将该TransactionID3发 送给MSSP。
步骤402,MSSP根据所接收到的CA标识查询CA映射表,查到相应 的CA编号,将待签数据和CA编号发送给与用户信息相对应的移动终端中 的移动签名装置。
在本步骤中,MSSP可先根据所接收到的CA标识查询CA映射表,从 而查到与该CA标识相对应的CA编号;然后,该MSSP可将待签数据和 CA编号发送给与用户信息相对应的移动终端中的移动签名装置。
进一步地,由于步骤401中的事务标识(即TransactionID3)是由各个 应用服务器独立生成的,因此不同的应用服务器所发送的事务标识可能会相 同。为了区分不同应用服务器所发送的事务标识,MSSP在接收到应用服务 器发送的TransactionID3时,将存储上述的TransactionID3,并将该 TransactionID3与上述查到的CA编号相关联,然后再生成一个与上述 TransactionID3唯一对应的第四事务标识(TransactionID4),并将上述 TransactionID4也发送给与用户信息相对应的移动终端中的移动签名装置。
步骤403,移动签名装置根据所接收到的CA编号到所存储的对应的 私钥,根据私钥对接收到的待签数据进行签名以得到签名数据,将所述签名 数据和CA编号发送给MSSP。
进一步地,在本步骤中,移动签名装置还可将所接收到的TransactionID4 发送给MSSP。
步骤404,MSSP查询CA映射表得到相应的CA标识,将所接收到的签 名数据和CA标识发送给相应的应用服务器。
进一步地,在本步骤中,MSSP还可根据所接收到的TransactionID4查 到相对应的TransactionID3,并将TransactionID3也发送给相应的应用服务 器。
步骤405,应用服务器接收到签名数据后,从证书中心获取与用户信息 相对应的数字证书,根据该数字证书对接收到的签名数据进行验证。
在本步骤中,当应用服务器对签名数据进行验证时,如果验证通过,则 认为上述待签数据得到了用户的确认;若验证未通过,则应认为上述待签数 据未得到用户的确认。
通过上述的步骤401~405,可以实现上述的步骤203,即实现了用户在 业务应用中对待签数据进行数字签名。
另外,在本发明的实施例中,所述的移动终端中的移动签名装置可以是 SIM卡或手机终端中的安全芯片。
当所述移动签名装置为SIM卡时,由于受机卡访问受限(机卡访问指令 只能是GSM11.11和GSM11.13所规定的指令,不能扩展,手机终端通常会 过滤掉非标指令)的限制,MSSP只能通过数据短信与SIM卡进行信息交互。 一般来说,一条数据短信的总长度为140字节,数据短信的传输速度也较慢。 因此,为了有效利用带宽资源、提高传输效率、并将进行数字签名的时间长 度控制在可接受的范围内,在本发明的具体实施例中,在MSSP中设置了相 应的CA映射表,因此使得MSSP在与SIM卡进行信息交互时,只需传输少 量字节(例如,1~2个字节)的CA编号即可指定相应的CA,因而可定位到 正确的密钥,从而可最大限度地减少所需传输的字节数,有效利用了仅140 字节的带宽资源。另外,SIM卡的存储空间也很宝贵,由于本发明中使用CA 编号来指定相应的CA,而且所述SIM卡中所存储的不是数字证书本身,而 是从数字证书中提取的证书信息文件,从而大大减少了存储密钥所需的存储 空间,有效地节省了SIM卡中宝贵的存储空间,因而可以存储更多的密钥。
而当所述移动签名装置为手机终端中的安全芯片时,MSSP与手机终端 中的安全芯片之间可通过IP传输通道进行信息交互,用于数字签名的密钥可 存储在手机终端中的安全芯片中。由于安全芯片的存储空间也比较有限,因 此,在本发明的技术方案中,由于使用CA编号来指定相应的CA,而且所述 安全芯片中所存储的不是数字证书本身,而是从数字证书中提取的证书信息 文件,从而也大大减少了存储密钥所需的存储空间,有效地节省了安全芯片 中宝贵的存储空间,因而可以存储更多的密钥。
在本发明的实施例中,还提供了一种基于移动终端的多个数字证书的管 理系统。图5为本发明中基于移动终端的多个数字证书的管理系统的示意图。 如图5所示,该系统包括:至少一个应用服务器501(图5中只示出一个应 用服务器)、证书中心502、MSSP 503和移动终端中的移动签名装置504。
所述应用服务器501,用于将待签数据、CA标识和用户信息发送给 MSSP,并接收MSSP发送的签名数据;还用于根据从证书中心502获得的 数字证书对所接收到的签名数据进行验证;
所述证书中心502,用于根据接收到的证书申请请求向MSSP 503发送 证书申请激活请求;还用于根据接收到的证书请求为用户签发数字证书,并 将数字证书发送给MSSP 503和相应的应用服务器501;
所述MSSP 503,用于存储一个包括多条CA信息的CA映射表;还用于 根据接收到的证书申请激活请求查询所存储的CA映射表得到相应的CA信 息,根据CA信息向对应的移动终端中的移动签名装置504发送携带有CA 信息的激活指令;将接收到的证书请求发送给证书中心502;将接收到的数 字证书转换成证书信息文件后发送给所述移动签名装置504;
还用于根据所接收到的CA标识查询CA映射表得到相应的CA信息, 将待签数据和CA信息发送给对应的移动终端中的移动签名装置504;将接 收到的签名数据发送给相应的应用服务器501;
所述移动终端中的移动签名装置504,用于根据激活指令存储相应的CA 信息,生成并存储公私密钥对;生成证书请求,将证书请求和所述激活指令 中携带的CA信息发送给MSSP 503;存储所接收到的与所述CA信息相对应 的证书信息文件;还用于根据所存储的公私密钥对对待签数据进行数字签名 得到签名数据,将所述签名数据发送给MSSP 503。
另外,在本发明的技术方案中,上述基于移动终端的多个数字证书的管 理系统中的MSSP中可以包括多个模块。例如,图6为本发明中的MSSP的 结构示意图。如图6所示,所述MSSP 503包括:存储模块601、查询模块 602、转换模块603和转发模块604。
所述存储模块601,用于存储一个包括多条CA信息的CA映射表;
所述查询模块602,用于根据接收到的证书申请激活请求或CA标识查 询所述存储模块601中存储的CA映射表得到相应的CA信息,将所述CA 信息发送给转发模块604;
所述转换模块603,用于将接收到的数字证书转换成证书信息文件后发 送给转发模块604;
所述转发模块604,用于根据所接收到的CA信息向对应的移动终端中 的移动签名装置发送携带有CA信息的激活指令,将接收到的证书请求发送 给证书中心,并将证书信息文件发送给所述移动签名装置;还用于将待签数 据和相应的CA信息发送给对应的移动终端中的移动签名装置,并将接收到 的签名数据发送给相应的应用服务器。
再者,在本发明的技术方案中,所述移动签名装置中也可以包括多个模 块。例如,图7是本发明中的移动签名装置的结构示意图。如图7所示,所 述移动签名装置504包括:存储模块701、接收处理模块702、密钥生成模块 703、证书请求模块704、签名模块705和发送模块706;
所述存储模块701,用于存储CA信息和与所述CA信息相对应的公私 密钥对和证书信息文件;
所述接收处理模块702,用于将接收到的激活指令中的CA信息发送给 所述存储模块701和发送模块706,并根据所述激活指令向所述密钥生成模 块703发送生成指令;将接收到的证书信息文件发送给所述存储模块701; 将接收到的待签数据发送给所述签名模块705;
所述密钥生成模块703,用于根据生成指令生成公私密钥对,并将所生 成的公私密钥对发送给存储模块701和证书请求模块704;
所述证书请求模块704,用于根据公私密钥对生成证书请求,并将所述 证书请求发送给所述发送模块706;
所述签名模块705,用于根据所述存储模块701中存储的公私密钥对对 待签数据进行数字签名得到签名数据,将所述签名数据发送给发送模块706;
所述发送模块706,用于将证书请求和相应的CA信息发送给MSSP;还 用于将所述签名数据发送给MSSP。
其中,在本发明的具体实施例中,所述中的接收处理模块、密钥生成模 块、证书请求模块和签名模块也可集成于同一个处理模块中。
此外,在本发明的技术方案中,所述移动终端中可以包括一个如图7所 示的移动签名装置。
综上所述,在本发明的技术方案中,由于在MSSP设置了一个包括多条 CA信息的CA映射表,因此MSSP可根据用户的证书申请请求和所述CA映 射表,指示相应移动终端中的移动签名装置存储相应的CA信息、生成并存 储公私密钥对,然后将相应的CA为该用户所签发的证书转换成证书信息文 件存储在移动签名装置,从而为用户申请一个数字证书;还可将应用服务器 发送的待签数据发送给移动签名装置进行数字签名,并将签名数据返回给应 用服务器进行验证,以完成用户的数字签名。通过使用本发明的技术方案, 可以在移动签名装置中存储与多个应用相对应的多个数字证书的信息(例如, CA信息、公私密钥对等),使得用户可以在一个移动终端中的移动签名装 置中存储并管理多个数字证书的信息,用户只需持有该移动签名装置即可对 多种业务应用进行交易数据的数字签名,而无需携带多个USB‑Key,因此大 大方便了用户的使用,并降低了用户的使用成本,可满足当前国内上百家CA、 几十万业务应用的产业环境,从而对电子签名的应用具有重大促进作用。
此外,由于在MSSP中设置了CA映射表,使得MSSP在与移动签名装 置进行信息交互时只需传输少量的字节(例如,1~2个字节)的CA编号即 可指定相应的CA,最大限度地减少了所需传输的字节数,有效利用了仅140 字节的带宽资源。另外,还大大减少了移动签名装置中存储与数字证书相关 的信息所需的存储空间,有效地节省了移动签名装置中宝贵的存储空间,因 而可以存储更多的数字证书的信息。此外,由于MSSP将证书解析为证书信 息文件,从而在不影响用户使用(查看)的情况下,还大大降低了带宽要求 和存储要求。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。
本文发布于:2023-04-14 20:12:11,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/1/87372.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |