专利名称:一种获取动态口令生成密钥的方法、设备和系统的制作方法
技术领域:
本发明涉及数据安全领域,尤其涉及一种获取动态口令生成密钥的方法、设备和系统。
背景技术:
常规的"口令"代码认证是计算机系统的早期身份认证产品,由于这种"口令"的静态特性和重复使用性,存在易窃取、易猜测、易破解等安全缺陷,是一种弱身份认证系统,只能用于安全等级要求较低的信息系统。为了满足安全等级较高的信息系统的要求,动态口令认证作为一种强身份认证系统,是目前业界研究的热点之一。 动态口令(Dynamic Password)也称一次性口令(0ne-time Password),是一禾中变动的口令,其变动来源于产生口令的运算因子是变化的。动态口令的运算因子一般都采用双运算因子(two factor)。这种双运算因子中的一个运算因子为用户的私有密钥,私有密钥是代表用户身份的识别码,是固定不变的;这种双运算因子中的另一个运算因子为变动因子。由不断变化的变动因子与私有密钥共同运算产生了不断变动的动态口令。用户利用不断变动的动态口令对信息进行认证,保证了信息的安全性。目前动态口令认证被广泛应用于政府、金融、企业等重要信息系统的安全认证。 目前动态口令卡中用户的私有密钥的生成及管理是在动态口令卡的生产过程中进行的,即厂商生产该动态口令卡时,通过密钥生成系统产生私有密钥写入动态口令卡中;同时,生成相应的加密数据文件传递给认证服务器。认证服务器根据用户的私有密钥与动态口令卡的对应关系完成动态口令卡与私有密钥的配置与关联,以进行后续的认证操作。
然而,现有的动态口令认证中的缺点不容忽视。由于对动态口令卡进行私有密钥的分配、将私有密钥写入动态口令卡以及将相应的加密数据文件传递给认证服务器的过程,都是人为进行的,存在较高的导致私有密钥和加密数据文件泄漏的安全隐患,无法保证信息的安全性。同时,厂商还需要组织相应的人力、物力进行私有密钥的分配与管理,给动态口令卡的生产带来了很大的不便和繁琐。
发明内容
为解决现有技术中由人为进行私有密钥对动态口令卡的分配和写入所带来的问题,本发明的实施例提供一种获取动态口令生成密钥的方法、设备和系统,用于保证信息的私密性和安全性,提高了动态口令生成密钥的分配和管理效率,方便厂商对动态口令卡的生产。 为达到上述目的,本发明的实施例采用如下技术方案 本发明实施例提供了一种获取动态口令生成密钥的方法,包括 生成动态口令卡的公钥和私钥; 将动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证服务器的数字证书,认证服务器利用所述动态口令卡的公钥生成用户的数字证书,所述认证服务器
4支持数字证书CA颁发系统; 利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,并向认证服务器发送数字签名后的所述专有标识信息; 当认证服务器利用用户的数字证书对所述专有标识信息的数字签名验证成功后,接收认证服务器发送的所述动态口令生成密钥,其中,认证服务器利用认证服务器的私钥和所述数字签名算法对所述动态口令生成密钥进行数字签名; 根据获得的认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥。 本发明实施例还提供了一种获取动态口令生成密钥的装置,该装置包括
公私钥对生成单元,用于生成动态口令卡的公钥和私钥; 数字证书获得单元,用于将所述动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证服务器的数字证书; 密钥获得单元,用于利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,并向认证服务器发送数字签名后的所述专有标识信息;接收认证服务器对所述专有标识信息的数字签名验证成功后发送的利用认证服务器的私钥进行数字签名的动态口令生成密钥; 验证单元,用于根据获得的所述认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥。 本发明实施例还提供了一种获取动态口令生成密钥的系统,该系统包括上述的获取动态口令生成密钥的装置。 本发明实施例还提供一种认证系统,所述系统包括上述的获取动态口令生成密钥的装置和认证服务器, 所述认证服务器,用于接收应用系统通过第一通道传送的随机数或者通过第一通道将生成的随机数传送给应用系统,利用动态口令生成密钥和加密算法对所述随机数进行加密运算,生成验证数据;接收所述获取动态口令生成密钥的装置通过第二通道发送的动态口令,根据所述验证数据对所述动态口令进行认证,将认证结果告知所述应用系统,由应用系统执行相应的操作; 所述获取动态口令生成密钥的装置,用于接收输入的所述随机数,利用获取到的动态口令生成密钥和与所述认证服务器所采用的加密算法相同的加密算法对所述随机数进行加密运算,生成动态口令;通过所述第二通道将所述动态口令传送给所述认证服务器; 其中,所述第一通道和第二通道为相同类型的通道,或者,所述第一通道和第二通道为不同类型的通道。 本发明实施例提供的技术方案,利用生成的动态口令卡的公钥和私钥,由认证服务器通过网络向动态口令卡颁发认证服务器的数字证书和分配相应的动态口令生成密钥,并利用认证服务器的数字证书对动态口令生成密钥进行验证,避免了动态口令生成密钥和加密数据文件的泄露,保证了将动态口令生成密钥分配并写入合法的动态口令卡中。本发明实施例的技术方案,解决了现有技术中由人为进行动态口令生成密钥对动态口令卡的分配和写入所带来的问题,既保证了信息的私密性和安全性,又提高了动态口令生成密钥的分配和管理效率,方便了厂商对动态口令卡的生产。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
图1为本发明实施例一提供的获取动态口令生成密钥的方法流程示意图;
图2为本发明实施例二提供的数字证书颁发流程示意图;
图3为本发明实施例二提供的数字证书格式示意图; 图4为本发明实施例二提供的获取动态口令生成密钥的方法流程示意图;
图5为本发明实施例三提供的获取动态口令生成密钥的装置的结构示意图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。 本发明实施例一提供的获取动态口令生成密钥的方法,如图1所示,所述方法包 括 步骤11 :生成动态口令卡的公钥和私钥; 步骤12 :将动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证 服务器的数字证书,认证服务器利用所述动态口令卡的公钥生成用户的数字证书,所述认 证服务器支持数字证书(CA)颁发系统;
步骤13 :获取动态口令生成密钥; 利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字 签名,并向认证服务器发送数字签名后的所述专有标识信息;当认证服务器利用用户的数 字证书对所述专有标识信息的数字签名验证成功后,接收认证服务器发送的所述动态口令 生成密钥,其中,认证服务器利用认证服务器的私钥和所述数字签名算法对所述动态口令 生成密钥进行数字签名; 步骤14 :根据获得的认证服务器的数字证书对所述动态口令生成密钥的数字签 名进行验证,当验证成功时,保存所述动态口令生成密钥; 进一步的,上述方法还包括步骤15 :利用所述动态口令生成密钥与所述认证服 务器进行动态口令认证。 上述的步骤11至步骤15可以由能够实现动态口令认证的电信智能卡实现,如由 支持动态口令认证的SIM卡等动态口令卡实现,也可以由设置在动态口令卡中的专有模块 实现。 优选的,本发明实施例中的数字签名算法采用非对称加密算法RSA算法,但并不 局限于此算法,可以采用其他适合的非对称加密算法。在步骤11中,可以利用RSA算法生
6成动态口令卡的公钥和私钥。参见图l,在步骤14中,当动态口令生成密钥的数字签名未通 过验证时,表明动态口令生成密钥对动态口令卡的分发过程中存在安全问题,例如,该接收 动态口令生成密钥的动态口令卡为非法的动态口令卡,或者,该动态口令生成密钥为非法 的动态口令生成密钥等,这时,结束操作,不允许利用该动态口令生成密钥进行后续与认证 服务器的动态口令认证。 本发明实施例提供的技术方案,利用生成的动态口令卡的公钥和私钥,由认证服 务器通过网络向动态口令卡颁发认证服务器的数字证书和分配相应的动态口令生成密钥, 并利用认证服务器的数字证书对动态口令生成密钥进行验证,避免了动态口令生成密钥和 加密数据文件的泄露,保证了将动态口令生成密钥分配并写入合法的动态口令卡中。本发 明实施例的技术方案,解决了现有技术中由人为进行动态口令生成密钥对动态口令卡的分 配和写入所带来的问题,既保证了信息的私密性和安全性,又提高了动态口令生成密钥的 分配和管理效率,方便了厂商对动态口令卡的生产。 下面对本发明实施例二提供的获取动态口令生成密钥的方法进行详细说明。在本 发明实施例二中,以利用终端中的SIM卡实现本发明实施例的获取动态口令生成密钥的方 法为例进行说明,SIM卡通过电信网络与所述认证服务器进行信息交互。
步骤21 :生成动态口令卡的公钥和私钥。 根据数字签名算法计算生成动态口令卡的公钥和私钥,该数字签名算法可以采用 满足公钥加密标准PKCSftl (Public Key Cryptogr即hy Standards)或PKCSft11的RSA算法, SIM卡可以支持1024位的RSA算法。 SIM卡(动态口令卡)利用预置的RSA算法生成动态口令卡的公钥和私钥(即生 成该SIM卡的公钥和私钥)。其中,公钥是可以导出卡外的信息,而私钥存储在卡中不能导 出卡外。进行数字签名时使用私钥按照数字签名算法进行运算;验证数字签名的有效性时, 使用公钥按照相同的数字签名算法进行运算。 步骤22 :将动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证 服务器的数字证书,认证服务器利用所述动态口令卡的公钥生成用户的数字证书,所述认 证服务器支持数字证书CA颁发系统。 SIM卡向数字证书(CA)颁发系统申请数字证书,由数字证书颁发系统将相应的数 字证书颁发给SM卡并写入卡内。在本发明实施例中,以采用证书申请信息申请数字证书 的场景为例进行描述。 参见图2,图中所示的认证服务器支持数字证书颁发系统,动态口令卡获取数字证 书的过程主要包括如下操作 步骤221 :SIM卡向认证服务器发送证书申请信息,所述证书申请信息携带动态口 令卡的公钥; 上述证书申请信息中还可以携带动态口令卡的专有标识信息,该专有标识信息可 以包括,例如,集成电路卡识别码(ICCID),或者,国际移动用户识别号(IMSI),或者同时包 括ICCID和IMSI,以对用户的身份进行确认和记录,防止非法用户盗取数字证书,保证将数 字证书颁发给合法的用户。认证服务器利用接收到的SIM卡的公钥,生成用户的数字证书, 以在后续的认证过程中利用该用户的数字证书对来自SIM卡的信息进行认证。
或者,由认证服务器发起该数字证书颁发过程,SIM卡根据认证服务器的读取命令
7发送上述证书申请信息,这时,在步骤221之前还包括步骤220 :认证服务器发送读取命
令,要求读取SIM卡的公钥和/或专有标识信息。 上述证书申请信息可以采用无线方式传送给认证服务器,如SIM卡采用数据短信 方式将证书申请信息传送给认证服务器,也可以先从SM卡读出证书申请信息,通过有线 网络等传送给认证服务器。 进一步的,为保证信息的安全性,SM卡先利用动态口令卡的私钥和数字签名算法 对动态口令卡的专有标识信息进行数字签名,将数字签名后的所述专有标识信息和动态口 令卡的公钥携带在证书申请信息中,再将该证书申请信息发送至认证服务器,认证服务器 利用所述动态口令卡的公钥生成用户的数字证书,并利用用户的数字证书对所述专有标识 信息的数字签名进行验证,当验证成功后,认证服务器记录SIM卡的公钥、专有信息标识与 用户的数字证书的对应关系,或是记录SIM卡的专有信息标识与用户的数字证书的对应关 系。这样,认证服务器可以获知合法的SIM卡与相应用户的数字证书的对应关系,以保证利 用正确的用户的数字证书对合法的SIM卡的相关信息进行验证,避免了数据泄漏带来的安 全隐患。 步骤222:SIM卡接收认证服务器根据所述证书申请信息发送的认证服务器的数 字证书。 认证服务器根据S頂卡的公钥和专有标识信息,将认证服务器的数字证书写入 SM卡内。在本发明实施例中选取X509V3版本的数字证书。 参见图3,显示了本发明实施例提供的一种数字证书格式示意图,在数字证书中携 带了公钥的信息。下面对数字证书中的内容进行简要说明。每张数字证书主要包括三个字 段 证书内容(tbsCertif icate),签名算法(signatureAlgorithm),禾P签名值 (signatureValue)。 其中,证书内容字段包含下列基本项 证书版本号(Version),证书序列号(Serial Number),签名算法(Signature),颁 发者(Issuer),有效期(Validity),主体(Subject), 主体公钥信息(Subject Public Key Info)及作为可选项的唯 一 标识符 (Un i queIdent i f i ers) 证书内容字段还应支持RFC5280中所规定的全部17个扩展项和国家标准GB/T
20518-2006《数字证书格式》中所规定的5个扩展项,并支持自定义扩展项。 RFC5280中所规定的17个扩展项如下 1.机构密钥标识符(Authority Key Identifier); 2.主体密钥标识符(Subject Key Identifier); 3.密钥用途(Key Usage);4.证书策略(Certificate Policies); 5.策略映射(Policy Mappings); 6.主体可选替换名(Subject Alternative Name); 7.颁发者可选替换名(Issuer Alternative Name); 8.主体目录属性(Subject Directory Attributes);
8
9.基本限制(Basic Constraints);
10.名称限制(Name Constraints);
11.策略限制(Policy Constraints);
12.扩展密钥用途(Extended Key Usage);
13. CRL发布点(CRL Distribution Points);
14.禁止anyPolicy (Inhibit anyPolicy); 15.最新CRL/增量CRL发布点(Freshest CRL/Delta CRL DistributionPoint);
16.机构信息访问(Authority Information Access);
17.主体信息访问(Subject Information Access)。
国家标准《数字证书格式》中所规定的5个扩展项如下 个人身份标识码,个人社会保险号,企业工商注册号,企业组织机构代码,企业税号。 步骤23 :利用动态口令卡的私钥从认证服务器获得相应的动态口令生成密钥,所 述动态口令生成密钥经过认证服务器利用认证服务器的私钥和数字签名算法进行数字签 名。 利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字 签名,并向认证服务器发送数字签名后的所述专有标识信息;当认证服务器利用用户的数 字证书对所述专有标识信息的数字签名验证成功后,SIM卡接收认证服务器发送的所述动 态口令生成密钥,其中,认证服务器利用认证服务器的私钥和所述数字签名算法对所述动 态口令生成密钥进行数字签名。 参见图4,显示了在用户首次使用动态口令认证时,获取动态口令生成密钥以及利
用该动态口令生成密钥进行动态口令认证的流程,但并不局限于该场景,例如,用户可以在
首次开通动态口令认证业务时获取动态口令生成密钥,利用该动态口令生成密钥进行后续
的动态口令认证过程;或者用户也可以在每一次使用动态口令认证时或在一段时期之后重
新获取新的动态口令生成密钥,利用新的动态口令生成密钥进行动态口令认证,或者,认证
服务器可以根据实际的需要和安全要求,通过无线方式定期或不定期的更新动态口令卡的
动态口令生成密钥。具体包括如下步骤 步骤231 :SIM卡接收用户发送的开通命令; 例如,接收用户通过"申请开通动态口令菜单"发送的开通命令。 步骤232 :SIM卡向认证服务器发送申请开通动态口令请求,该请求中携带经数字
签名后的SIM卡的专有标识信息; SIM卡利用动态口令卡的私钥和数字签名算法进行计算,生成动态口令卡的专有
标识信息的数字签名。然后,将该具有数字签名的专有标识信息通过申请开通动态口令请
求发送给认证服务器,可以采用数据短信方式实现该申请开通动态口令请求。 步骤233 :认证服务器对专有标识信息的数字签名进行验证,当验证通过后,随机
生成该动态口令卡的动态口令生成密钥。 认证服务器上保存有认证服务器的数字证书和用户的数字证书,用户的数字证书 中记录了动态口令卡的公钥以及该公钥的各种信息(例如该公钥是否在有效期内等),认 证服务器利用用户的数字证书对专有信息标识的数字签名进行验证。验证通过后,随机生成该动态口令卡的动态口令生成密钥,验证失败,则结束操作。 步骤234 :认证服务器对上述动态口令生成密钥进行数字签名。 认证服务器利用自身的私钥和数字签名算法对动态口令生成密钥进行数字签名。 步骤235 :认证服务器将经过数字签名的动态口令生成密钥发送给SIM卡。 认证服务器可以通过数据短信方式将上述动态口令生成密钥发送给SM卡。 步骤236 :根据获得的认证服务器的数字证书对所述动态口令生成密钥的数字签
名进行验证。 根据所述认证服务器的数字证书可以获得认证服务器的公钥,且进一步的,根据 认证服务器的数字证书还可对认证服务器的公钥的有效性进行确认,例如,判断该公钥是 否还处于有效期内,若该公钥为有效的公钥,采用该公钥对动态口令生成密钥的数字签名 进行验证,若该公钥已失效,则可以向用户显示提示信息,重新获取认证服务器的数字证 书,或者,直接结束操作。 利用有效的认证服务器的公钥和数字签名算法对动态口令生成密钥的数字签名 进行验证。 步骤237 :当动态口令生成密钥的数字签名验证成功时,SIM卡在卡中保存所述动 态口令生成密钥,执行步骤238。当验证失败时,则可以向用户显示提示信息,重新执行动态 口令认证过程,或者,直接结束操作。 步骤238 :SIM卡向认证服务器反馈动态口令生成密钥接收成功。 SIM卡即时生成接收成功信息,例如诸如"接收成功"等的文字信息,或者,直接选
取SM卡上的专有标识信息作为该接收成功信息,然后将该接收成功信息发送给认证服务器。 或者,为进一步保证信息的安全性,SIM卡利用自身的私钥和数字签名算法对接收
成功信息进行数字签名。将数字签名后的接收成功信息发送给认证服务器,由认证服务器
对接收成功信息的数字签名进行验证,验证成功后,将该SIM卡置为使用状态。 可以采用数据短信方式将上述接收成功信息发送给认证服务器。 步骤24 :利用所述动态口令生成密钥与所述认证服务器进行动态口令认证。本发
明实施例中SIM卡和认证服务器之间可以采用时间同步认证、事件同步认证、和挑战/应答
认证等技术来实现动态口令认证。 其中,基于时间同步认证技术是把时间作为变动因子,一般以60秒作为变化单 位。所谓"同步"是指用户口令卡和认证服务器所产生的口令在时间上必须同步。可以采 用"滑动窗口 "技术实现时间同步。 基于事件同步认证技术是把变动的数字序列(事件序列)作为口令产生器的一个 运算因子,与用户的动态口令生成密钥共同产生动态口令。这里的同步是指每次认证时,认 证服务器与口令卡保持相同的事件序列。如果用户使用时,因操作失误多产生了几组口令 出现不同步,服务器会自动同步到目前使用的口令, 一但一个口令被使用过后,在口令序列 中所有这个口令之前的口令都会失效。其认证过程与时间同步认证相同。
挑战/应答(Challenge/Response)技术中的变动因子是由认证服务器产生的随 机数字序列(Challenge),它也是口令卡的口令生成的变动因子,与用户的动态口令生成密 钥共同运算产生动态口令。
10
本发明实施例以采用挑战/应答技术实现SM卡和认证服务器之间的动态口令认证为例进行描述。 用户在使用业务,如网络银行、网上购物时,需要登陆到相应的应用系统,该应用系统生成一随机数,如挑战码,应用系统将该挑战码传递给认证服务器,并通过在计算机客户端的屏幕上显示或向用户终端发送消息等方式将挑战码告知用户。或者,认证服务器生成上述随机数,将随机数发送至应用系统,应用系统将该随机数在客户端的界面上进行显示。 步骤241 :SIM卡接收输入的随机数。 可启动用户识别应用发展工具(SIM TOOL KIT, STK)动态口令菜单并利用该菜单进行操作,STK提供了一组开发增值业务的命令,允许基于智能卡的用户身份识别模块(SM)运行自己的应用软件。 SIM卡可以接收通过STK命令输入的随机数。 步骤242 :SIM卡利用所述动态口令生成密钥和加密算法对所述随机数(如挑战码)进行加密运算,从而在用户终端侧生成了相应的动态口令。为便于操作,可以将该动态口令在终端上向用户进行显示。 步骤243 :SIM卡将所述动态口令传递给认证服务器,由认证服务器对该动态口令进行认证。 SIM卡可以通过数据短信方式直接将该动态口令发送给认证服务器,或者,向应用系统输入该动态口令,由应用系统将动态口令传递给认证服务器。 认证服务器使用上述挑战码进行和SIM卡端一致的加密运算,得到验证数据,将得到的验证数据与用户输入的动态口令进行比对进行认证,并将认证结果告知所述应用系统,由应用系统执行相应的操作,例如,当验证数据与动态口令一致时,应用系统允许用户正常登陆使用应用系统;否则,应用系统不允许用户登陆应用系统。 本发明实施例提供的技术方案,利用生成的动态口令卡的公钥和私钥,由认证服务器通过网络向动态口令卡颁发认证服务器的数字证书和分配相应的动态口令生成密钥,并利用认证服务器的数字证书对动态口令生成密钥进行验证,避免了动态口令生成密钥和加密数据文件的泄露,保证了将动态口令生成密钥分配并写入合法的动态口令卡中。本发明实施例的技术方案,解决了现有技术中由人为进行动态口令生成密钥对动态口令卡的分配和写入所带来的问题,既保证了信息的私密性和安全性,又提高了动态口令生成密钥的分配和管理效率,方便了厂商对动态口令卡的生产。 本发明实施例三还提供了 一种获取动态口令生成密钥的装置,如图5所示,所述装置包括 公私钥对生成单元51,用于生成动态口令卡的公钥和私钥; 数字证书获得单元52,用于将所述动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证服务器的数字证书; 密钥获得单元53,用于利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,并向认证服务器发送数字签名后的所述专有标识信息;接收认证服务器对所述专有标识信息的数字签名验证成功后发送的利用认证服务器的私钥进行数字签名的动态口令生成密钥;
验证单元54,用于根据获得的所述认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥。 进一步的,所述装置还包括动态口令单元55,用于利用所述动态口令生成密钥与所述认证服务器进行动态口令认证;例如,动态口令单元55,用于接收输入的随机数;利用所述动态口令生成密钥和加密算法对所述随机数进行加密运算,生成动态口令;将所述动态口令传递给认证服务器,由认证服务器对该动态口令进行认证。 进一步的,所述数字证书获得单元52,利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,将数字签名后的所述专有标识信息和动态口令卡的公钥发送至认证服务器;以及,接收认证服务器对所述专有标识信息的数字签名验证成功后发送的认证服务器的数字证书。 上述的数字签名算法可以采用满足公钥加密标准PKCS#1 (Public
KeyCryptogr即hy Standards)或PKCSft11的RSA算法,以及其他合适的算法。 进一步的,所述密钥获得单元53,具体用于利用动态口令卡的私钥和数字签名算
法对动态口令卡的专有标识信息进行数字签名;向认证服务器发送数字签名后的所述专有
标识信息;当所述专有标识信息的数字签名通过认证服务器的验证后,接收认证服务器发
送的所述动态口令生成密钥。其中,该专有标识信息可以为ICCID,或者为IMSI,或者同时
包括ICCID和IMSI。 进一步的,所述验证单元54,具体用于根据所述认证服务器的数字证书获得认证服务器的公钥;利用所述认证服务器的公钥和数字签名算法验证所述动态口令生成密钥的数字签名,当验证成功时,保存所述动态口令生成密钥。 本发明装置实施例中各功能模块和单元的具体工作方式参见本发明方法实施例。本发明装置实施例中各功能模块和单元可以单独实现,也可以集成在一个或多个单元中实现。例如,本发明实施例中的获取动态口令生成密钥的装置可以由SIM卡以及其他支持动态口令认证的智能卡,或者设置在SM卡中的专有模块等实现。 本发明实施例四还提供了一种获取动态口令生成密钥的系统,该系统包括上述获取动态口令生成密钥的装置。该系统利用上述获取动态口令生成密钥的装置获得动态口令生成密钥。 本发明实施例五还提供了一种认证系统,所述系统包括如上所述的获取动态口令生成密钥的装置和认证服务器, 所述认证服务器,用于接收应用系统通过第一通道传送的随机数或者通过第一通道将生成的随机数传送给应用系统,利用动态口令生成密钥和加密算法对所述随机数进行加密运算,生成验证数据;接收所述获取动态口令生成密钥的装置通过第二通道发送的动态口令,根据所述验证数据对所述动态口令进行认证,并将认证结果告知所述应用系统,由应用系统执行相应的操作; 所述获取动态口令生成密钥的装置,用于接收输入的所述随机数,利用获取到的动态口令生成密钥和与所述认证服务器所采用的加密算法相同的加密算法对所述随机数进行加密运算,生成动态口令;通过所述第二通道将所述动态口令传送给所述认证服务器; 其中,所述第一通道和第二通道为不同类型的通道,例如,第一通道为通过因特网
12实现的通道,第二通道为通过电信网络实现的通道;或者,上述第一通道和第二通道为相同类型的通道,例如,第一通道和第二通道都为通过因特网实现的通道。 由上所述,本发明实施例提供的技术方案,利用生成的动态口令卡的公钥和私钥,由认证服务器通过网络向动态口令卡颁发认证服务器的数字证书和分配相应的动态口令生成密钥,并利用认证服务器的数字证书对动态口令生成密钥进行验证,避免了动态口令生成密钥的泄露,保证了将动态口令生成密钥分配并写入合法的动态口令卡中。本发明实施例的技术方案,解决了现有技术中由人为进行动态口令生成密钥对动态口令卡的分配和写入所带来的问题,既保证了信息的私密性和安全性,又提高了动态口令生成密钥的分配和管理效率,方便了厂商对动态口令卡的生产。 本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
1权利要求
一种获取动态口令生成密钥的方法,其特征在于,所述方法包括生成动态口令卡的公钥和私钥;将动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证服务器的数字证书,认证服务器利用所述动态口令卡的公钥生成用户的数字证书,所述认证服务器支持数字证书CA颁发系统;利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,并向认证服务器发送数字签名后的所述专有标识信息;当认证服务器利用用户的数字证书对所述专有标识信息的数字签名验证成功后,接收认证服务器发送的所述动态口令生成密钥,其中,认证服务器利用认证服务器的私钥和所述数字签名算法对所述动态口令生成密钥进行数字签名;根据获得的认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥。
2. 根据权利要求1所述的获取动态口令生成密钥的方法,其特征在于,所述将动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证服务器的数字证书,认证服务器利用所述动态口令卡的公钥生成用户的数字证书包括利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名;将数字签名后的所述专有标识信息和动态口令卡的公钥发送至认证服务器,由认证服务器利用所述动态口令卡的公钥生成用户的数字证书,并利用用户的数字证书对所述专有标识信息的数字签名进行验证;当认证服务器对所述专有标识信息的数字签名验证成功后,接收认证服务器发送的认证服务器的数字证书,由认证服务器记录所述动态口令卡的公钥、专有信息标识与用户的数字证书的对应关系。
3. 根据权利要求1所述的获取动态口令生成密钥的方法,其特征在于,在所述根据获得的认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥之后,还包括生成接收成功信息或选取接收成功信息;向认证服务器发送所述接收成功信息,以使认证服务器将相应的动态口令卡置为使用状态。
4. 根据权利要求1或2所述的获取动态口令生成密钥的方法,其特征在于,所述专有标 识信息为集成电路卡识别码ICCID和/或国际移动用户识别号IMSI。
5. 根据权利要求1所述的获取动态口令生成密钥的方法,其特征在于,在所述根据获得的认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥之后,还包括采用如下方式利用所述动态口令生成密钥与所述认证服务器进行动态口令认证接收输入的随机数;利用所述动态口令生成密钥和加密算法对所述随机数进行加密运算,生成动态口令;将所述动态口令传递给认证服务器,由认证服务器对该动态口令进行认证。
6. 根据权利要求1、2、3或5任一项所述的获取动态口令生成密钥的方法,其特征在于所述动态口令卡为电信智能卡,所述电信智能卡通过电信网络与所述认证服务器进行信息交互。
7. —种获取动态口令生成密钥的装置,其特征在于,所述装置包括公私钥对生成单元,用于生成动态口令卡的公钥和私钥;数字证书获得单元,用于将所述动态口令卡的公钥发送至认证服务器并接收认证服务器发送的认证服务器的数字证书;密钥获得单元,用于利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,并向认证服务器发送数字签名后的所述专有标识信息;以及,接收认证服务器对所述专有标识信息的数字签名验证成功后发送的利用认证服务器的私钥进行数字签名的动态口令生成密钥;验证单元,用于根据获得的所述认证服务器的数字证书对所述动态口令生成密钥的数字签名进行验证,当验证成功时,保存所述动态口令生成密钥。
8. 根据权利要求7所述的获取动态口令生成密钥的装置,其特征在于,所述数字证书获得单元,利用动态口令卡的私钥和数字签名算法对动态口令卡的专有标识信息进行数字签名,将数字签名后的所述专有标识信息和动态口令卡的公钥发送至认证服务器;以及,接收认证服务器对所述专有标识信息的数字签名验证成功后发送的认证服务器的数字证书。
9. 根据权利要求7所述的获取动态口令生成密钥的装置,其特征在于,所述装置还包括动态口令单元,用于接收输入的随机数;利用所述动态口令生成密钥和加密算法对所述随机数进行加密运算,生成动态口令;将所述动态口令传递给认证服务器。
10. 根据权利要求7至9任一项所述的获取动态口令生成密钥的装置,所述装置由电信智能卡实现,所述装置通过电信网络与所述认证服务器进行信息交互。
11. 一种获取动态口令生成密钥的系统,其特征在于,所述系统包括如权利要求7至9任一项所述的获取动态口令生成密钥的装置。
12. —种认证系统,其特征在于,所述系统包括如权利要求7至9任一项所述的获取动态口令生成密钥的装置和认证服务器,所述认证服务器,用于接收应用系统通过第一通道传送的随机数或者通过第一通道将生成的随机数传送给应用系统,利用动态口令生成密钥和加密算法对所述随机数进行加密运算,生成验证数据;接收所述获取动态口令生成密钥的装置通过第二通道发送的动态口令,根据所述验证数据对所述动态口令进行认证,将认证结果告知所述应用系统,由应用系统执行相应的操作;所述获取动态口令生成密钥的装置,用于接收输入的所述随机数,利用获取到的动态口令生成密钥和与所述认证服务器所采用的加密算法相同的加密算法对所述随机数进行加密运算,生成动态口令;通过所述第二通道将所述动态口令传送给所述认证服务器;其中,所述第一通道和第二通道为相同类型的通道,或者,所述第一通道和第二通道为不同类型的通道。
全文摘要
本发明公开了一种获取动态口令生成密钥的方法、设备和系统,涉及数据安全领域,能够保证信息的私密性和安全性,提高动态口令生成密钥的分配和管理效率,方便厂商对动态口令卡的生产。本发明实施例的获取动态口令生成密钥的方法包括生成动态口令卡的公钥和私钥;将动态口令卡的公钥发送至支持数字证书颁发系统的认证服务器并接收认证服务器发送的认证服务器的数字证书;利用动态口令卡的私钥从认证服务器获取动态口令生成密钥,其中,认证服务器对动态口令生成密钥进行数字签名;根据获得的认证服务器的数字证书对动态口令生成密钥的数字签名进行验证,当验证成功时,保存动态口令生成密钥。本发明适用于采用电信智能卡进行动态口令认证的场合。
文档编号H04L9/30GK101764691SQ20091024282
公开日2010年6月30日 申请日期2009年12月17日 优先权日2009年12月17日
发明者刘敏, 朱红岩, 郑小武, 陈灵灿 申请人:北京握奇数据系统有限公司;福建凯特信息安全技术有限公司