- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
WDPF系统中认证授权流程的设计与实现
(3)限制密码域使用
虽然在密码域中已经将所输入的字符以掩码形式显示了,但是它并没有实现真正保密,因为用户可以通过复制该密码域中的内容,并将复制的密码粘贴到其他文档中查看到密码。为实现密码的真正安全,可将密码域的复制功能屏蔽,同时将密码域的掩码符号也进行改变。实现密码域的内容禁止复制的功能主要是通过控制其Oncopy,Oncut,Onpaste事件实现的。
<input name="pwd" type="password" id="pwd" oncopy="return false" oncut="return false"onpaste="return false">。
此外,提高基本认证安全性措施还可以绑定用户手机使用一次性随机码,安装密码域安全插件等。
2.2 基于HTTP摘要的认证
为了保证业务终端和服务器之间交互的安全性,业务规范中采用HTTP Digest方式进行终端注册和消息保护。在该过程中,双方需要有特定的密钥对消息头内容进行摘要和对摘要进行认证。通过此方式,终端和服务器对彼此进行身份认证,并保证消息防篡改。HTTP Digest摘要认证请求基于Diameter基本协议实现。
Diameter基本协议为移动IP(Internet Protocol,网际协议),网络接入服务等应用提供最基本的服务(如用户会话、计费等),具有能力协商、差错通知等功能。协议元素由众多命令和AVP(Attribute-Value Pair,属性值对)构成,可以在客户机、代理、服务器之间传递鉴别,授权和计费信息。但是不管客户机、代理还是服务器,都可以主动发出会话请求,对方给予应答,所以也叫对等实体之间的协议。命令代码,AVP值和种类都可以按应用需要和规则进行扩展。
通过使用HTTP Digest方式进行鉴权,完成客户端和服务器间的双向认证,系统默认使用MD5摘要算法。
2.2.1 摘要计算算法
(1)客户端请求服务器的请求消息摘要计算算法如下:
response=MD5(MD5(A1)":"unq(nonce-value)":"nc-value":"unq(cnonce-value)":"unq(qop-value)":"MD5(A2))。
A1=unq(username-value)":"unq(realm-value)":"passwd。
Qop=auth或无值时,A2=Method":"digest-uri-value。
Qop=auth-int时,A2=Method":"digest-uri-value":"MD5(entity-body)。
(2)服务器返回客户端的响应消息摘要计算算法如下:
respauth=MD5(MD5(A1)":"unq(nonce-value)":"nc-value":"unq(cnonce-value)":"unq(qop-value) ":"MD5(A2))。
A1=unq(username-value)":"unq(realm-value)":"passwd。
Qop=auth或无值时,A2=":"digest-uri-value。
Qop=auth-int时,A2=":"digest-uri-value":"MD5(entity-body)。
其中,Method=GET;unq(X)代表去掉X前后的引号;Entity-body代表HTTP请求的消息体;Passwd代表客户端和服务器间共享的私钥。
2.2.2 摘要认证流程
当终端需要与WDPF进行业务交互时,可通过Digest Verify接口从WDPF获得终端摘要认证消息的验证结果。
(1)终端组装Digest_Verify.REQ消息给WDPF。
(2)WDPF执行摘要认证消息的计算和摘要认证结果的对比,WDPF将执行结果Result Code AVP封装在Digest_Verify.RES消息返回给终端。
实现HTTP Digest请求使用以下3组Diameter命令(见表1)。
表1 摘要认证Diameter消息
●CER/CEA:在传送连接建立时,两个Diameter节点进行交换的第一个Diameter消息为CER/CEA。该消息包括节点的标识和它的能力(协议版本号,支持的Diameter应用,支持的安全机制等)。
●DWR/DWA:一旦传送层或应用层发生故障,Diameter需要立即发现并采取正确的行动。Diameter检测故障的机制基于应用层监督。当两个Diameter节点建立通信时,如果一个节点发送请求,并在规定的时间内没有收到应答,就可以检测到传送层或应用层出现了故障。如果没有定期的通信,就无法检测到潜在的故障。通过在Diameter节点发送DWR消息,检测传送层和应用层,从而解决了上述问题。若没有收到DWA,则可以断定有故障发生。
●DVR/DVA:以上两组Diameter消息中,CER/CEA保证了节点有权限和服务器进行能力交互,DWR/DWA保证了客户端和服务器之间链路的顺畅,在此基础之上DVR/DVA消息才是真正实现摘要认证,客户端携带Digest-Username AVP,Digest-Realm AVP,Digest-Nonce AVP等RADIUS(Remote Authentication Dial In User Service,远程认证拨号用户服务)应用于Digest认证的扩展,根据客户端和服务器间的双向认证实现HTTP Digest的算法计算应答认证值并存储在Digest-Response-Auth AVP值域通过DVA消息返回。
作者:张辉华 李炜 来源:电信网技术
上一篇:智能控制深港3G过境信号
下一篇:2G/3G互操作之邻区优化