[发明专利]基于时间型动态口令实现多业务种子分散的方法在审
申请号: | 201410127602.3 | 申请日: | 2014-03-31 |
公开(公告)号: | CN103916247A | 公开(公告)日: | 2014-07-09 |
发明(设计)人: | 王翔平;沈勇坚;胡永刚 | 申请(专利权)人: | 上海动联信息技术股份有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/16 |
代理公司: | 上海天翔知识产权代理有限公司 31224 | 代理人: | 刘常宝 |
地址: | 201203 上海市浦东新区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 时间 动态 口令 实现 业务 种子 分散 方法 | ||
技术领域
本发明涉及动态口令认证技术,具体涉及一种动态口令多业务种子分散的方法。
背景技术
动态口令:是根据专门的算法生成一个不可预测的随机数字组合,每个密码只能使用一次,目前被广泛运用在网银、网游、电信运营商、电子商务、企业等应用领域。
目前动态口令按技术主要分两种:同步口令技术、异步口令技术。
同步口令技术又分为:时间同步口令、事件同步口令,其中时间同步口令基于令牌和服务器的时间同步,通过运算来生成一致的动态口令,基于时间同步的令牌,一般更新率为60秒,每60秒产生一个新口令。
步进值:动态口令包含一个步进值参数,比如时间型动态口令的步进值,一般采用60秒;表示在每一个60秒内的生成的动态口令是相同的,而该动态口令在认证系统端进行认证时仅允许被认证一次,在下一个60秒内生成的动态口令则变成了另一个不同的动态口令。
种子密钥:用于根据一些参数,来计算生成动态口令的种子密钥。
参见图1,当前的动态口令在硬件令牌生成当前时间、每一个步进值(比如60秒)一变的动态口令,然后认证系统端使用与硬件令牌里面相同的种子密钥生成一个动态口令,并于硬件令牌生成的动态口令进行比对,进行认证;
如果在动态口令的步进值(比如时间型动态库步进值为60秒的硬件令牌,则为在60秒的时间范围内)范围内,每次将生成相同的应答值:即时间型动态口令均是一样的。
如此的认证方式,在一个动态口令的步进值内,只能够实现一种业务的安全认证。例如:
银行系统在进行“网上转账”功能时,要求使用动态口令来认证客户,在60秒内(即动态口令的步进值)网银端的认证系统会利用种子密钥结合时间因子生成相应的动态口令;与此同时网银客户将在硬件令牌上利用其内的种子密钥根据时间因子计算出相应的动态口令,并传递到网银端的认证系统进行认证。
而在该60秒内(即同一步进值范围内),该客户若使用其它业务,比如“网上支付”功能时,如果使用相同的时间因子,则可能生成相同的动态口令,而服务端在认证该口令时,将可能会认为是重放攻击,无法进行认证。
发明内容
针对现有时间型类型的动态口令在认证过程中所存在的问题,本发明的目的在于提供基于时间型动态口令实现多业务的种子分散的方法,该方法能够在时间型动态口令生成的过程中,在相同的时间因子、同一个步进值范围内,产生不同的时间型动态口令。
为了达到上述目的,本发明采用如下的技术方案:
基于时间型动态口令实现多业务种子分散的方法,所述方法分别在认证系统以及硬件令牌两端,在计算时间型动态口令时,在相同时间因子的情况下根据不同的业务形成对应的计算密钥,并以此来生成对应于不同业务的时间型动态口令。
在优选实例中,认证系统端以及硬件令牌端根据不同的业务引入对应的业务代码参数,将原始的种子密钥与对应的业务代码参数进行运算,得到对应于不同业务的计算密钥;再使用该计算密钥结合对应的时间因子计算得到对应于不同业务的时间型动态口令。
进一步的,所述业务代码参数为一个整形的数值,在令牌端显示为功能菜单的序号。
再进一步的,在交易过程中,认证系统端会根据业务需要选择指定业务代码,并形成对应的业务代码要求提示,客户在操作令牌时根据认证系统端提示的要求,在令牌上选择对应的业务功能,以保持令牌与服务端的业务代码一致。
进一步的,所述认证系统端以及硬件令牌端中使用分散算法计算得到计算密钥。
再进一步的,在利用分散算法计算密钥时,由原始种子数据,根据业务代码分散出计算密钥,具体计算时由工作密钥+业务代码构成消息,杂凑值作动态口令的计算密钥。
再进一步的,所述计算密钥的公式如下:
Calc_Seed=SM3(Work_Seed|alg_type_1);
其中,Work_Seed(Byte):原始工作密钥,若令牌包含激活功能,则为激活后的工作密钥;
alg_type_1(4Byte):业务代码,高位在前;
Calc_Seed:输出的计算密钥,最大32字节;若需要的种子长度小于32字节,则进行截取。
本发明通过引入了多业务种子分散策略的方法,实现在相同的种子密钥、不同的业务代码、同一个步进值范围内,用于生成时间型动态口令的种子密钥不同,从而实现,在相同的时间因子、同一个步进值范围内,产生不同的时间型动态口令,可以实现在同一个步进值范围内对多个业务进行认证。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海动联信息技术股份有限公司,未经上海动联信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410127602.3/2.html,转载请声明来源钻瓜专利网。