首页 / 专利库 / 商业 / 电子商务 / 移动商务 / 一种基于动态口令的纯软件DPVA身份认证方法

一种基于动态口令的纯软件DPVA身份认证方法

阅读:462发布:2020-05-08

专利汇可以提供一种基于动态口令的纯软件DPVA身份认证方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于动态口令的纯 软件 DPVA身份认证方法,利用信任和信任传递理论,构建一个基于信任传递的虚拟身份认证模型,并分别设计多种环境下的虚拟身份认证方案。消费者首先与支付平台和网上 银 行系统达成某种契约并预留安全信息。消费者在商家系统中进行购物结算行为时,无需登录支付平台或网上银行,而是将预留安全信息通过加密处理发送给商家系统,商家系统将此安全信息发送给支付平台或网上银行,经过验证后,支付平台或网上银行确认该支付 请求 是由消费者产生的,从而达成交易。消费者无需在每次交易中登录支付平台或网上银行,整个 移动商务 过程会得到精简,其交易效率和交易体验都会大大提高、收到钓鱼和仿冒攻击的 风 险则会大大降低。,下面是一种基于动态口令的纯软件DPVA身份认证方法专利的具体信息内容。

1.一种基于动态口令的纯软件DPVA身份认证方法,其特征在于,包括如下步骤:
(1)契约初始化阶段:
S1.1、消费者Ru向支付平台Rp发送建立契约请求,并向支付平台Rp发送IDup和INFOu,其中IDup表示消费者Ru在支付平台Rp中的身份标识符,INFOu表示消费者Ru的非安全性信息;
S1.2、支付平台Rp在收到建立契约请求后,进行审核;
S1.3、通过审核后,支付平台Rp随机生成一个整数因子N,并将N发送给Ru;
S1.4、消费者Ru收到整数因子N后,将自己设定的口令PWup经过N次哈希算法而得到安全令牌STup并将安全令牌STup发送至支付平台Rp;
STup=HASH(PWup)N
S1.5、支付平台Rp收到安全令牌STup后,存储N、STup和INFOu;
(2)商务流程的注册阶段:
S2.1、消费者Ru向商家系统Rb发送注册请求,并向商家系统Rb发送IDub和INFOu;其中IDub表示消费者在商家系统Rb中的身份标识符,INFOu表示消费者Ru的非安全性信息;
S2.2、商家系统Rb在收到注册请求后,进行审核;
S2.3、通过审核后,商家系统Rb向消费者Ru发送系统消息MSG;
S2.4、收到系统消息MSG后,消费者Ru将自己设定的口令PWub经过1次哈希算法而得到安全令牌STub并将安全令牌STub发送至商家系统Rb;
STub=HASH(PWub)
S2.5、商家系统Rb收到安全令牌STub后,存储STub和INFOu;
(3)商务流程的登录阶段:
S3.1、消费者Ru向商家系统Rb发送登录请求,并向商家系统Rb发送包括IDub、STub和SI在内的安全信息;SI为除IDub和PWub之外的安全信息;
S3.2、商家系统Rb在收到登录请求后,根据消费者在步骤S3.1所发送的IDub从数据库中调取存储的相应的安全令牌STub并进行审核,通过审核后,向消费者Ru发送系统消息MSG;
(4)结算阶段:
S4.1、消费者Ru向商家系统Rb发送结算请求,并向商家系统Rb发送IDup,用于商家系统Rb和支付系统Rp建立信任关系;
S4.2、商家系统Rb在收到结算请求后,将IDup转发至支付平台Rp;
S4.3、支付平台Rp根据商家系统在步骤S4.2中发送的IDup从数据库中查询对应消费者Ru的相关信息,若未查询到则返回相关错误信息,若查询到则返回最近一次存储的整数因子N’,并将整数因子N’-1发送给商家系统Rb;
S4.4、商家系统Rb在收到整数因子N’-1后转发给消费者Ru;
S4.5、消费者Ru收到整数因子N’-1后,将自己的口令PWup经过N’-1次哈希算法而得到新的安全令牌STup并将新的安全令牌STup发送至商家系统Rb;
STup=HASH(PWup)N’-1
S4.6、商家系统Rb在收到消费者在步骤S4.5中发出的新的安全令牌STup后转发给支付平台Rp;
S4.7、支付平台Rp收到步骤S4.6发出的安全令牌STup后,从数据库中调取最近一次存储该消费者Ru的安全令牌ST’up,验证ST’up=HASH(STup),若验证成功则跳转至步骤S4.8并发送通知验证成功的系统消息MSG,若验证失败则发送通知验证失败的系统消息MSG;
S4.8、商家系统Rb和支付平台Rp之间的信任关系建立;
TRUST=IsTrue(ST’up=HASH(STup))
S4.9、商家系统Rb向支付平台Rp发起结算请求并发送结算信息M;
S4.10、支付平台Rp向商家系统Rb结算;
S4.11、若结算成功,支付平台Rp用步骤S4.6中收到的安全令牌STup替换原来的安全令牌ST’up,用新的整数因子N’-1替换原来的整数因子N’;
ST’up=STup;
N’=N’-1;
S4.12、支付平台Rp向商家系统Rb返回结算成功消息;
S4.13、商家系统Rb向消费者Ru返回结算成功消息。
2.根据权利要求1所述的方法,其特征在于,步骤S1.2中,所述审核的内容包括信息完整性和标识符唯一性。
3.根据权利要求1所述的方法,其特征在于,步骤S2.2中,所述审核的内容包括信息完整性和标识符唯一性。
4.根据权利要求1所述的方法,其特征在于,还包括有:
(5)契约维护阶段
S5.1、契约维护发生的情况包括两种:
第一种是主动维护:消费者Ru主动向支付平台Rp发起维护契约请求,并向支付平台Rp发送IDup、STup和INFOu;
第二种情况是被动维护:整数因子经过一段时间使用后已经满足N’=1,无法进行下一步的递减,此时消费者Ru如想继续契约,则需要被动向支付平台Rp发起维护契约请求;
S5.2、支付平台Rp在收到请求后,进行包括信息完整性和标识符唯一性在内的审核;
S5.3、通过审核后,如果维护契约请求是主动维护,则更新消费者信息;如果维护契约请求是被动维护,则支付平台Rp重新随机生成一个整数因子N替换原来的整数因子N’并将N发送给消费者Ru,并跳转至步骤S5.3;
INFO’u=INFOu;
N’=N;
S5.3、对于被动维护请求,消费者Ru收到整数因子N后,将自己设定的口令PWup经过N次哈希算法而得到安全令牌STup并将安全令牌STup发送至Rp:
STup=HASH(PWup)N
S5.4、支付平台Rp收到STup后,存储N、STup和INFOu。

说明书全文

一种基于动态口令的纯软件DPVA身份认证方法

技术领域

[0001] 本发明属于信息技术领域,应用于电子商务行业,具体涉及一种基于动态口令的纯软件DPVA身份认证方法。

背景技术

[0002] 现有的两方身份认证泛指仅仅通过交易双方的协商、信息交换和判断,来进行彼此之间的身份认证。这种认证方式无需第三方参与,过程简洁,但无法精确地互相确定双方的身份。常见的两方身份认证机制主要有以下几种类型。
[0003] (1)单因子身份认证
[0004] 单因子认证一般基于口令,这种认证方式是一种被验证者输入账号和口令信息,验证者通过被验证这输入的信息和验证者存储的被验证者信息进行比对而进行身份认证的过程。账号和口令一般是被验证者注册时预留的,这些信息被加密后存储在验证者的数据库中。
[0005] Lamport在1981年提出了基于一次性口令的身份认证方案。在此认证方案中,验证者通过将被验证者输入的口令与事先存储在验证者服务器中的密码表进行比对的方法来实现身份认证的目的。随后,Shimizu、Hailer和Sandirigama等人在Lamport的方案基础上进行安全、性能和效率等方面的改进。这类方案的优点在于实现起来比较容易,但是验证者端需要存放用户口令或口令表,一旦验证者端数据库漏洞造成口令遗失或口令表规则被破解,则会威胁认证系统的安全。同时,这类方案主要面向单向认证,无法实现双向认证,容易造成仿冒和钓鱼攻击。
[0006] Harn等人在Diffie-Hellman公钥加密技术的基础上,提出了一种基于非对称密钥体制的口令认证方案。此方案在验证者端无需对与用户口令有关的信息进行特别保护,在更新相关验证信息的时候也不需要被验证者的参与。
[0007] Peyravian和Zunic提出了一种基于摘要算法的、轻量化的单向身份认证协议,但此协议存在易遭受钓鱼攻击等安全问题。为了解决此协议中存在的问题,Hwang等在文献、Lee等分别针对Peyravian-Zunic协议提出了改进方案,Peyravian也对自己的协议提出了优化方案。之后,Zhu等人在Hwang-Yeh协议的基础上提出了一种改进协议,但这个改进协议在抵御冒充攻击和密钥协商等方面有所欠缺。Islam等人针对上述问题在Hwang-Yeh协议的基础上提出了一种改进协议,用于解决上述问题。
[0008] (2)多因子身份认证
[0009] 基于口令的单因子身份认证存在很多问题,例如用户口令存储于认证者服务器,认证者技术平和意识良莠不齐,导致数据安全隐患、用户信息容易泄露。攻击者可以利用盗取、分析、解密甚至“撞库”等手段进行攻击。另外,基于口令的单因子身份认证是单向的,服务器可以对用户身份进行认证,但用户不能对服务器身份进行认证,这就使钓鱼和仿冒成为可能。
[0010] 智能卡是一种不易仿冒的信息设备,它一般由认证方发放并支持高强度加密,利用智能卡和口令共同实现身份认证,可以在一定程度上解决上述问题。1991年,Chang和Wu提出了一种基于智能卡和口令的双因子身份认证协议。Lee和Chang首次提出基于用户身份和分布式密钥的认证体系,但该协议对于仿冒攻击防范能较弱。Tsuar和Wu等人提出了一种基于非对称加密算法RSA的身份认证协议,Li和Lin等人提出了基于神经网络的身份认证协议,但该协议对硬件负荷较大。对此问题,Lin和Hwang等人进行了改进。Chang和Lee等人提出了一种无预置表的密钥生成算法,但该算法生成的密钥不具动态性,容易遭受仿冒攻击。2009年,Liao和Wang提出一种基于动态身份识别码的认证协议,Hsiang和Shih在此基础上提出了利用动态识别码替代静态识别码的改进方案。此后,Shao和Chin等人和Wang和Ma等人分别针对安全性和轻量化等问题做了进一步完善。2011年,Wen和Li指出Wang-Ma协议存在仿冒和口令推测攻击的可能性,并在Wang-Ma协议的基础上提出了一种改进的动态密钥协商身份认证协议,这种协议基于哈希函数进行计算,效率很高,但同时存在内部安全隐患、可能遭受仿冒或钓鱼攻击。
[0011] (3)挑战应答认证
[0012] 挑战应答(Challenge-Response)认证是一种典型的零知识证明认证方式。在当前的移动商务中,口令认证和挑战应答认证相结合的身份认证机制被较为广泛的应用。
[0013] 挑战应答认证的原理是每次认证时验证者服务器都会给被验证者发送一个随机的“挑战”信息,这个信息一般是一个字符串,被验证者收到这个信息后向验证者进行应答,验证者根据应答结果来验证被验证者的身份是否合法。其认证过程如图2所示。
[0014] 挑战应答认证方案由于是由被验证者无规律发起,所以如果被验证者频繁地请求认证,就会给认证服务器、网络服务商和客户带来较大的资源消耗。同时由于该认证方案人工参与过程较多、信息发送收移动通信网络和供应商影响较大,所以可能造成延迟。挑战应答认证方案更适用于只有双方参与的身份认证过程。
[0015] 现有的身份认证流程不仅不利于移动商务本身对于便捷性的要求,更可能会在复杂的过程中产生信息泄露、钓鱼攻击等严重的安全问题。如能解决移动支付过程中的跨域单点身份认证问题——使移动支付参与者之间建立起传递信任关系、将多方参与的身份认证过程在用户端视上简化为双方参与的身份认证过程——即可解决上述安全问题。

发明内容

[0016] 针对现有技术的不足,本发明旨在提供一种基于动态口令的纯软件DPVA身份认证方法。
[0017] 为了实现上述目的,本发明采用如下技术方案:
[0018] 一种基于动态口令的纯软件DPVA身份认证方法,包括如下步骤:
[0019] (1)契约初始化阶段:
[0020] S1.1、消费者Ru向支付平台Rp发送建立契约请求,并向支付平台Rp发送IDup和INFOu,其中IDup表示消费者Ru在支付平台Rp中的身份标识符,INFOu表示消费者Ru的非安全性信息;
[0021] S1.2、支付平台Rp在收到建立契约请求后,进行审核;
[0022] S1.3、通过审核后,支付平台Rp随机生成一个整数因子N,并将N发送给Ru;
[0023] S1.4、消费者Ru收到整数因子N后,将自己设定的口令PWup经过N次哈希算法而得到安全令牌STup并将安全令牌STup发送至支付平台Rp;
[0024] STup=HASH(PWup)N
[0025] S1.5、支付平台Rp收到安全令牌STup后,存储N、STup和INFOu;
[0026] (2)商务流程的注册阶段:
[0027] S2.1、消费者Ru向商家系统Rb发送注册请求,并向商家系统Rb发送IDub和INFOu;其中IDub表示消费者在商家系统Rb中的身份标识符,INFOu表示消费者Ru的非安全性信息;
[0028] S2.2、商家系统Rb在收到注册请求后,进行审核;
[0029] S2.3、通过审核后,商家系统Rb向消费者Ru发送系统消息MSG;
[0030] S2.4、收到系统消息MSG后,消费者Ru将自己设定的口令PWub经过1次哈希算法而得到安全令牌STub并将安全令牌STub发送至商家系统Rb;
[0031] STub=HASH(PWub)
[0032] S2.5、商家系统Rb收到安全令牌STub后,存储STub和INFOu;
[0033] (3)商务流程的登录阶段:
[0034] S3.1、消费者Ru向商家系统Rb发送登录请求,并向商家系统Rb发送包括IDub、STub和SI在内的安全信息;SI为除IDub和PWub之外的安全信息;
[0035] S3.2、商家系统Rb在收到登录请求后,根据消费者在步骤S3.1所发送的IDub从数据库中调取存储的相应的安全令牌STub并进行审核,通过审核后,向消费者Ru发送系统消息MSG;
[0036] (4)结算阶段:
[0037] S4.1、消费者Ru向商家系统Rb发送结算请求,并向商家系统Rb发送IDup,用于商家系统Rb和支付系统Rp建立信任关系;
[0038] S4.2、商家系统Rb在收到结算请求后,将IDup转发至支付平台Rp;
[0039] S4.3、支付平台Rp根据商家系统在步骤S4.2中发送的IDup从数据库中查询对应消费者Ru的相关信息,若未查询到则返回相关错误信息,若查询到则返回最近一次存储的整数因子N’,并将整数因子N’-1发送给商家系统Rb;
[0040] S4.4、商家系统Rb在收到整数因子N’-1后转发给消费者Ru;
[0041] S4.5、消费者Ru收到整数因子N’-1后,将自己的口令PWup经过N’-1次哈希算法而得到新的安全令牌STup并将新的安全令牌STup发送至商家系统Rb;
[0042] STup=HASH(PWup)N’-1
[0043] S4.6、商家系统Rb在收到消费者在步骤S4.5中发出的新的安全令牌STup后转发给支付平台Rp;
[0044] S4.7、支付平台Rp收到步骤S4.6发出的安全令牌STup后,从数据库中调取最近一次存储该消费者Ru的安全令牌ST’up,验证ST’up=HASH(STup),若验证成功则跳转至步骤S4.8并发送通知验证成功的系统消息MSG,若验证失败则发送通知验证失败的系统消息MSG;
[0045] S4.8、商家系统Rb和支付平台Rp之间的信任关系建立;
[0046] TRUST=IsTrue(ST’up=HASH(STup))
[0047] S4.9、商家系统Rb向支付平台Rp发起结算请求并发送结算信息M;
[0048] S4.10、支付平台Rp向商家系统Rb结算;
[0049] S4.11、若结算成功,支付平台Rp用步骤S4.6中收到的安全令牌STup替换原来的安全令牌ST’up,用新的整数因子N’-1替换原来的整数因子N’;
[0050] ST’up=STup;
[0051] N’=N’-1;
[0052] S4.12、支付平台Rp向商家系统Rb返回结算成功消息;
[0053] S4.13、商家系统Rb向消费者Ru返回结算成功消息。
[0054] 进一步地,步骤S1.2中,所述审核的内容包括信息完整性和标识符唯一性。
[0055] 进一步地,步骤S2.2中,所述审核的内容包括信息完整性和标识符唯一性。
[0056] 进一步地,所述方法还包括有:
[0057] (5)契约维护阶段
[0058] S5.1、契约维护发生的情况包括两种:
[0059] 第一种是主动维护:消费者Ru主动向支付平台Rp发起维护契约请求,并向支付平台Rp发送IDup、STup和INFOu;
[0060] 第二种情况是被动维护:整数因子经过一段时间使用后已经满足N’=1,无法进行下一步的递减,此时消费者Ru如想继续契约,则需要被动向支付平台Rp发起维护契约请求;
[0061] S5.2、支付平台Rp在收到请求后,进行包括信息完整性和标识符唯一性在内的审核;
[0062] S5.3、通过审核后,如果维护契约请求是主动维护,则更新消费者信息;如果维护契约请求是被动维护,则支付平台Rp重新随机生成一个整数因子N替换原来的整数因子N’并将N发送给消费者Ru,并跳转至步骤S5.3;
[0063] INFO’u=INFOu;
[0064] N’=N;
[0065] S5.3、对于被动维护请求,消费者Ru收到整数因子N后,将自己设定的口令PWup经过N次哈希算法而得到安全令牌STup并将安全令牌STup发送至Rp:
[0066] STup=HASH(PWup)N
[0067] S5.4、支付平台Rp收到STup后,存储N、STup和INFOu。
[0068] 本发明的有益效果在于:
[0069] (1)认证效率:
[0070] 本发明所提出的身份认证模型和方案通过信任关系传递,将多方参与的身份认证过程简化为双方参与的身份认证过程,同时提出信任的建立和维护规则,将普通认证流程中的效率瓶颈即“多次认证过程中的输入输出和交互”问题简化,提高了身份认证的效率。
[0071] (2)安全性:
[0072] 本发明所提出的身份认证模型和方案用一种虚拟身份认证即“代理”的形式解决身份认证参与者之间的复杂关系,即消费者事先与支付平台或行达成某种契约并预留安全令牌。在移动商务网站中进行结算行为时,消费者无需登录支付平台或银行系统,而是将预留安全令牌通过加密处理发送给网站,网站作为代理将此安全令牌发送给支付平台或银行系统,经过验证后,移动商务网站和支付平台之间即可进行无需消费者参与的结算活动。利用这种机制,可以使消费者不必在每次交易中登录支付平台或网上银行,整个移动商务过程会得到精简,受到钓鱼和仿冒攻击的险则会大大降低。
[0073] (3)可靠性:
[0074] 在本发明所提出的身份认证模型和方案中,身份认证参与者之间的密凭和安全令牌属于独享信息,并在契约建立阶段由参与者之间认可建立,且密凭既不被存储也不被明文传输,或者由随机算法计算而来。另外,安全令牌生成算法是不可逆的,各方身份认证参与者均无法通过其转发的安全令牌推导出。在模型和方案的各个关键流程中,均有日志存储环节,亦可成为历史交易的真实性作保证。
[0075] (4)轻量化
[0076] 本发明基于动态密码,在客户端和服务器端均无需特殊的环境、配置或插件,其安全令牌机制可采用标准哈希算法,例如MD5或SHA,这些算法均比较成熟,可在各种环境下轻易实现。
[0077] (5)高效性
[0078] 本发明的方案简单,因此效率较高。尤其是它的计算工作量HASH()N-1是在客户端Ru中进行而非服务器端Rp,因此整个方案的性能是较高的。
[0079] (6)抗DoS和字典攻击
[0080] DoS攻击也称拒绝服务攻击,是攻击者不断向服务器发送高消耗性请求,导致服务器资源耗尽而停止响应的攻击方法。字典攻击则是攻击者利用字典模拟用户不断向服务器发送登录请求,直至猜测成功。
[0081] 在本发明中,消费者Ru的结算请求并不是Ru主动触发的,而是由Rp发送的信息被动触发的。即:消费者Ru在完成商务流程之后,向商家系统Rb提出结算请求,Rb收到请求后将Ru在支付平台Rp中的唯一标识符IDup发送给Rp,Rp收到请求后会要求Rb向Ru转发整数因子N,收到N后Ru需要进行N-1次哈希算法,而Rp只需要进行1次哈希算法。在这个过程中,首先Ru无法主动发送结算请求,则攻击者也无法主动发送结算请求;其次主要的计算工作量HASH()N-1是在客户端Ru中进行而非服务器端Rp,因此攻击者很难达成高消耗的请求,减少了DoS攻击和字典攻击发生的可能性。
[0082] (7)抗冒充和重放攻击
[0083] 抗冒充和重放攻击主要是指商家系统Rb在未经消费者Ru允许的情况下,冒充Ru向支付平台Rp发起结算请求,或者Rb将历史交易过程中所转发的STup即HASH(PWup)N-1)、N等信息保存并重放,用以伪造结算请求。
[0084] 在本发明中,在每次Ru提出登录请求后,Rp会将整数因子N发送给客户端,客户端利用这个整数因子N进行N-1次哈希算法将用户口令加密并将加密后的口令发送至服务器端,服务器端再将传递过来的加密后的用户口令进行1次哈希算法,将得到的值与上次Ru登录时保存的安全令牌ST’up进行比对进行身份认证。在每次用户成功登录之后,这个整数因子都会减1,同时保存本次加密口令已被下次比对之用。基于上述流程,可以得出以下结论。
[0085] a)消费者Ru的密凭PWup仅仅Ru自己知道,并且不在网络中传输;
[0086] b)在这种身份认证方案中,Ru用于Rp的密凭PWup既不在Ru端存储,也不在Rp端存储;
[0087] c)哈希算法是一种不可逆算法,即使Rb存储了本次交易的安全令牌HASH(PWup)N-1,N-1 N-2也无法根据HASH(PWup) 逆向推导出下一次交易所用的安全令牌HASH(PWup) 。
[0088] 基于上述分析,本发明可以有效地防范冒充和重放攻击。
[0089] (8)抗交易抵赖
[0090] 抗交易抵赖主要是指消费者Ru否认结算流程的真实性,即不承认结算请求是由自己发起的,由于本方案中的结算流程是由商家系统Rp代理Ru实现的,因此抗交易抵赖在本方案中就显得尤为重要。基于本发明的工作流程,可以得出以下结论。
[0091] a)消费者Ru的密凭PWup属于Ru独享信息,并在契约建立阶段由Ru和Rp双方认可建立,且PWup既不被存储也不被明文传输。另外,哈希算法是不可逆的,商家系统和支付平台均无法通过其转发的安全令牌STup推导出。
[0092] b)在本方案的各个关键流程中,均有日志存储环节,日志可为历史交易的真实性作保证。
[0093] 基于上述分析,Ru在正常情况下无法否认已发生交易的真实性,即本发明可以有效地防交易抵赖。附图说明
[0094] 图1为现有技术中身份认证系统的构成元素示意图;
[0095] 图2为现有的身份认证技术中挑战应答认证过程示意图;
[0096] 图3为本发明实施例中契约初始化阶段的流程示意图;
[0097] 图4为本发明实施例中商务流程的注册阶段流程示意图;
[0098] 图5为本发明实施例中商务流程的登录阶段流程示意图;
[0099] 图6为本发明实施例中结算阶段的流程示意图;
[0100] 图7为本发明实施例中契约维护阶段的流程示意图。

具体实施方式

[0101] 以下将结合附图对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
[0102] 以下先对本领域的一些专业术语作简单的解释:
[0103] 1、密码和加密算法
[0104] 密码学是信息理论的一个分支,它负责处理安全消息的所有环节,包括身份认证、数字签名和密钥管理。简单来说,加密是一个过程,它将明文信息用某种方法重新编排,让它成为不被理解的密文信息,信息接收者在通过相反的过程将密文信息还原为明文信息然后使用。可以用下面的定义和流程来解释加密和解密过程。
[0105] 定义:加密算法
[0106] 对加解密过程中的信息定义如下:
[0107] (1)Mp:信息发送方明文原始信息;
[0108] (2)K:信息发送方用于加密Mp的密钥;
[0109] (3)Mc:信息发送方将Mp进行加密后得到的密文;
[0110] (4)Mc’:信息接收方收到的密文;
[0111] (5)K’:信息接收方用于解密Mc’的密钥;
[0112] (6)Mp’:将Mc’解密后得到的明文信息。
[0113] 则,加密算法可定义为:
[0114] E:(Mp+K)→Mc
[0115] 解密算法可定义为:
[0116] E’:(Mc’+K’)→Mp’
[0117] 2.身份认证
[0118] 身份认证(Identity Authentication)是认证商务参与者身份是否合法的过程,它是整个商务活动可运行的基础。身份认证的基本原理是检验被认证者的相关信息以实现身份确认的。随着电子商务——尤其是移动商务——的飞速发展,认证商务参与者的身份和保证各方安全正在成为移动商务流程里最为关键的过程之一。身份认证技术按照认证级别和认证实体的不同可以分为单向认证和双向认证两种,其特点和适用环境如表1所示。
[0119] 表1 单向和双向身份认证
[0120]
[0121] 常见的身份认证系统包括以下几个部分:身份认证协议、商务参与者、认证信息和攻击者等元素组成,如图1所示。
[0122] 根据图1所示的基本元素,可以描述身份认证系统应具有的基本功能。如表2所示。一般来说,身份认证方案可以分为两类:简单身份认证方案和高强度身份认证方案。简单身份认证方案的身份认证信息中一般只包含账号和口令等关键信息、信息一般以非加密的形式传输。但是非加密的信息极易被非法获取,一般的解决方案是将信息通过哈希函数(如MD5或SHA)进行处理或使用动态口令(OTP),利用这些方案,即使信息明文被窃取,也无法推导出原始身份认证信息。高强度身份认证方案一般将采用复合式加密机制来防止认证过程中的敏感数据被非法获取和使用。例如,Kerberos协议就是一种被广泛应用的强度身份认证方案。新兴的高强度身份认证方案更是将可信第三方、挑战/应答、智能卡甚至生物识别等技术融合,实现了更高强度的身份认证。下面列出几种常见的身份认证方案,并讨论它们的特点和应用环境。
[0123] 表2 身份认证系统的主要功能
[0124]
[0125]
[0126] 3.动态口令
[0127] 动态口令也被叫做一次性口令(One Time Password)。动态口令所使用的秘密信息在每次交易过程中是不同的,攻击者即使通过某种手段获取了某次交易过程中的安全信息,也无法用于下一次交易。
[0128] 动态口令的基本原理是:被认证方首先提出认证请求,认证方根据认证请求生成一个动态信息,这个动态信息可以是任何无法推断的唯一性信息,例如随机数或时间戳,也可以是在固定信息基础上进行计算或组合而形成的唯一性信息,例如通过动态加密或摘要算法得到的值。
[0129] 由于动态口令的唯一性和不一致性,基于动态口令的身份认证技术在某种程度上可以防范窃听和重放攻击,也可以降低由商务系统本身的安全缺陷引发后续连安全问题的风险。典型的动态口令如表3所示。
[0130] 表3典型的动态口令
[0131]
[0132]
[0133] 与传统的静态密码认证技术相比,动态口令具有表4中所描述的特点:
[0134] 表4 动态口令的特点
[0135]
[0136] 本实施例提供的一种基于动态口令的纯软件DPVA身份认证方法,具体如下:
[0137] 1、如下方法说明中所用到的参数及其符号如表5所示。
[0138] 表5 本技术方案符号说明
[0139]
[0140] 2、方法描述
[0141] (1)契约初始化阶段,如图3所示:
[0142] S1.1、消费者Ru向支付平台Rp发送建立契约请求,并向支付平台Rp发送IDup和INFOu,其中IDup表示消费者Ru在支付平台Rp中的身份标识符,INFOu表示消费者Ru的非安全性信息;一般地,非安全性信息包括昵称、性别、兴趣、积分等。
[0143] S1.2、支付平台Rp在收到建立契约请求后,进行包括信息完整性和标识符唯一性在内的审核;
[0144] S1.3、通过审核后,支付平台Rp随机生成一个整数因子N,并将N发送给Ru;
[0145] S1.4、消费者Ru收到整数因子N后,将自己设定的口令PWup经过N次哈希算法而得到安全令牌STup并将安全令牌STup发送至支付平台Rp;
[0146] STup=HASH(PWup)N
[0147] S1.5、支付平台Rp收到安全令牌STup后,存储N、STup和INFOu。
[0148] (2)商务流程的注册阶段,如图4所示:
[0149] S2.1、消费者Ru向商家系统Rb发送注册请求,并向商家系统Rb发送IDub和INFOu;其中IDub表示消费者在商家系统Rb中的身份标识符,INFOu表示消费者Ru的非安全性信息;
[0150] S2.2、商家系统Rb在收到注册请求后,进行包括信息完整性和标识符唯一性在内的审核;
[0151] S2.3、通过审核后,商家系统Rb向消费者Ru发送系统消息MSG;
[0152] S2.4、收到系统消息MSG后,消费者Ru将自己设定的口令PWub经过1次哈希算法而得到安全令牌STub并将安全令牌STub发送至商家系统Rb;
[0153] STub=HASH(PWub)
[0154] S2.5、商家系统Rb收到安全令牌STub后,存储STub和INFOu。
[0155] (3)商务流程的登录阶段,如图5所示:
[0156] S3.1、消费者Ru向商家系统Rb发送登录请求,并向商家系统Rb发送包括IDub、STub和SI在内的安全信息;SI为除IDub和PWub之外的安全信息,例如验证码和挑战/应答信息;
[0157] S3.2、商家系统Rb在收到登录请求后,根据消费者在步骤S3.1所发送的IDub从数据库中调取存储的相应的安全令牌STub并进行审核,审核内容包括计算判断用户的登录请求中的STub和数据库中的安全令牌STub是否一致;通过审核后,向消费者Ru发送系统消息MSG。
[0158] (4)结算阶段,如图6所示:
[0159] S4.1、消费者Ru向商家系统Rb发送结算请求,并向商家系统Rb发送IDup,用于商家系统Rb和支付系统Rp建立信任关系;
[0160] S4.2、商家系统Rb在收到结算请求后,将IDup转发至支付平台Rp;
[0161] S4.3、支付平台Rp根据商家系统在步骤S4.2中发送的IDup从数据库中查询对应消费者Ru的相关信息,若未查询到则返回相关错误信息,若查询到则返回最近一次存储的整数因子N’(若此为第一次结算,则返回契约初始化时建立的整数因子N),并将整数因子N’-1发送给商家系统Rb;
[0162] S4.4、商家系统Rb在收到整数因子N’-1后转发给消费者Ru;
[0163] S4.5、消费者Ru收到整数因子N’-1后,将自己的口令PWup经过N’-1次哈希算法而得到新的安全令牌STup并将新的安全令牌STup发送至商家系统Rb;
[0164] STup=HASH(PWup)N’-1
[0165] S4.6、商家系统Rb在收到消费者在步骤S4.5中发出的新的安全令牌STup后转发给支付平台Rp;
[0166] S4.7、支付平台Rp收到步骤S4.6发出的安全令牌STup后,从数据库中调取最近一次存储该消费者Ru的安全令牌ST’up,因上一次的安全令牌ST’up是PWup经过N次哈希算法而得到的值,本次的安全令牌STup是PWup经过N’-1次哈希算法而得到的值,因此只需验证ST’up=HASH(STup),若验证成功则跳转至步骤S4.8并发送通知验证成功的系统消息MSG,若验证失败则发送通知验证失败的系统消息MSG;
[0167] S4.8、商家系统Rb和支付平台Rp之间的信任关系建立;
[0168] TRUST=IsTrue(ST’up=HASH(STup))
[0169] S4.9、商家系统Rb向支付平台Rp发起结算请求并发送结算信息M;
[0170] S4.10、支付平台Rp向商家系统Rb结算;
[0171] S4.11、若结算成功,支付平台Rp用步骤S4.6中收到的安全令牌STup替换原来的安全令牌ST’up,用新的整数因子N’-1替换原来的整数因子N’;
[0172] ST’up=STup
[0173] N’=N’-1
[0174] S4.12、支付平台Rp向商家系统Rb返回结算成功消息;
[0175] S4.13、商家系统Rb向消费者Ru返回结算成功消息。
[0176] (5)契约维护阶段
[0177] S5.1、契约维护发生的情况包括两种;
[0178] 第一种是主动维护:消费者Ru主动向支付平台Rp发起维护契约请求,并向支付平台Rp发送IDup、STup和INFOu;主动维护的目的一般是修改消费者Ru的相关信息INFOu;
[0179] 第二种情况是被动维护:整数因子经过一段时间使用后已经满足N’=1,无法进行下一步的递减,此时消费者Ru如想继续契约,则需要被动向支付平台Rp发起维护契约请求;
[0180] S5.2、支付平台Rp在收到请求后,进行包括信息完整性和标识符唯一性在内的审核;
[0181] S5.3、通过审核后,如果维护契约请求是主动维护,则更新消费者信息;如果维护契约请求是被动维护,则支付平台Rp重新随机生成一个整数因子N替换原来的整数因子N’并将N发送给消费者Ru,并跳转至步骤S5.3;
[0182] INFO’u=INFOu;
[0183] N’=N
[0184] S5.3、对于被动维护请求,消费者Ru收到整数因子N后,将自己设定的口令PWup经过N次哈希算法而得到安全令牌STup并将安全令牌STup发送至Rp:
[0185] STup=HASH(PWup)N
[0186] S5.4、支付平台Rp收到STup后,存储N、STup和INFOu。
[0187] 本实施例提供的基于动态口令的纯软件DPVA身份认证方法,主要具有如下优势:
[0188] (1)认证效率:
[0189] 本实施例方法所提出的身份认证模型和方案通过信任关系传递,将多方参与的身份认证过程简化为双方参与的身份认证过程,同时提出信任的建立和维护规则,将普通认证流程中的效率瓶颈即“多次认证过程中的输入输出和交互”问题简化,提高了身份认证的效率。
[0190] (2)安全性:
[0191] 本实施例方法所提出的身份认证模型和方案用一种虚拟身份认证即“代理”的形式解决身份认证参与者之间的复杂关系,即消费者事先与支付平台或银行达成某种契约并预留安全令牌。在移动商务网站中进行结算行为时,消费者无需登录支付平台或银行系统,而是将预留安全令牌通过加密处理发送给网站,网站作为代理将此安全令牌发送给支付平台或银行系统,经过验证后,移动商务网站和支付平台之间即可进行无需消费者参与的结算活动。利用这种机制,可以使消费者不必在每次交易中登录支付平台或网上银行,整个移动商务过程会得到精简,受到钓鱼和仿冒攻击的风险则会大大降低。
[0192] (3)可靠性:
[0193] 在本实施例方法所提出的身份认证模型和方案中,身份认证参与者之间的密凭和安全令牌属于独享信息,并在契约建立阶段由参与者之间认可建立,且密凭既不被存储也不被明文传输,或者由随机算法计算而来。另外,安全令牌生成算法是不可逆的,各方身份认证参与者均无法通过其转发的安全令牌推导出。在模型和方案的各个关键流程中,均有日志存储环节,亦可成为历史交易的真实性作保证。
[0194] (4)轻量化
[0195] 本实施例方法基于动态密码,在客户端和服务器端均无需特殊的环境、配置或插件,其安全令牌机制可采用标准哈希算法,例如MD5或SHA,这些算法均比较成熟,可在各种环境下轻易实现。
[0196] (5)高效性
[0197] 本实施例方法的方案简单,因此效率较高。尤其是它的计算工作量HASH()N-1是在客户端Ru中进行而非服务器端Rp,因此整个方案的性能是较高的。
[0198] (6)抗DoS和字典攻击
[0199] DoS攻击也称拒绝服务攻击,是攻击者不断向服务器发送高消耗性请求,导致服务器资源耗尽而停止响应的攻击方法。字典攻击则是攻击者利用字典模拟用户不断向服务器发送登录请求,直至猜测成功。
[0200] 在本方案中,消费者Ru的结算请求并不是Ru主动触发的,而是由Rp发送的信息被动触发的。即:消费者Ru在完成商务流程之后,向商家系统Rb提出结算请求,Rb收到请求后将Ru在支付平台Rp中的唯一标识符IDup发送给Rp,Rp收到请求后会要求Rb向Ru转发整数因子N,收到N后Ru需要进行N-1次哈希算法,而Rp只需要进行1次哈希算法。在这个过程中,首先Ru无法主动发送结算请求,则攻击者也无法主动发送结算请求;其次主要的计算工作量HASH()N-1是在客户端Ru中进行而非服务器端Rp,因此攻击者很难达成高消耗的请求,减少了DoS攻击和字典攻击发生的可能性。
[0201] (7)抗冒充和重放攻击
[0202] 抗冒充和重放攻击主要是指商家系统Rb在未经消费者Ru允许的情况下,冒充Ru向支付平台Rp发起结算请求,或者Rb将历史交易过程中所转发的STup即HASH(PWup)N-1)、N等信息保存并重放,用以伪造结算请求。
[0203] 在本方案中,在每次Ru提出登录请求后,Rp会将整数因子N发送给客户端,客户端利用这个整数因子N进行N-1次哈希算法将用户口令加密并将加密后的口令发送至服务器端,服务器端再将传递过来的加密后的用户口令进行1次哈希算法,将得到的值与上次Ru登录时保存的安全令牌ST’up进行比对进行身份认证。在每次用户成功登录之后,这个整数因子都会减1,同时保存本次加密口令已被下次比对之用。基于上述流程,可以得出以下结论。
[0204] a)消费者Ru的密凭PWup仅仅Ru自己知道,并且不在网络中传输;
[0205] b)在这种身份认证方案中,Ru用于Rp的密凭PWup既不在Ru端存储,也不在Rp端存储;
[0206] c)哈希算法是一种不可逆算法,即使Rb存储了本次交易的安全令牌HASH(PWup)N-1,也无法根据HASH(PWup)N-1逆向推导出下一次交易所用的安全令牌HASH(PWup)N-2。
[0207] 基于上述分析,本方案可以有效地防范冒充和重放攻击。
[0208] (8)抗交易抵赖
[0209] 抗交易抵赖主要是指消费者Ru否认结算流程的真实性,即不承认结算请求是由自己发起的,由于本方案中的结算流程是由商家系统Rp代理Ru实现的,因此抗交易抵赖在本方案中就显得尤为重要。基于本方案的工作流程,可以得出以下结论。
[0210] a)消费者Ru的密凭PWup属于Ru独享信息,并在契约建立阶段由Ru和Rp双方认可建立,且PWup既不被存储也不被明文传输。另外,哈希算法是不可逆的,商家系统和支付平台均无法通过其转发的安全令牌STup推导出。
[0211] b)在本方案的各个关键流程中,均有日志存储环节,日志可为历史交易的真实性作保证。
[0212] 基于上述分析,Ru在正常情况下无法否认已发生交易的真实性,即本方案可以有效地防交易抵赖。
[0213] 对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形,都应该包括在本发明权利要求的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈