`
java-mans
  • 浏览: 11453741 次
文章分类
社区版块
存档分类
最新评论

OMA DM最佳实践之二:MD5安全认证

 
阅读更多

田海立

2012-02-27

DM业务现在是国内运营商要求的必备业务之一。通过DM业务运营商可以掌握用户终端情况和数据使用情况,并是客服模式发生了改变;终端厂商可以降低售后成本,配置参数以及后续版本升级更加方便。中国移动就把DM业务叫做增强售后服务业务。本系列文章针对CMCC的DM业务的终端自注册、安全认证、参数采集,以及参数配置等业务,给出实现它们的最佳实践。

安全认证是CMCCDM业务中除了自注册之外所有的其他业务都需要的。

1. 认证流程

下面以MD5/Base64为例,看终端和Server相互认证的流程。


DM Security#1

DM Security#

DM Security#3

图中,

- 圆角方框内的Credential是通过username:password,以及Nonce计算出来的数值;

- 方框内的NextNonce发给对方,让对方下次计算Credential时使用;

- 椭圆内的数值代表了对对方认证的结果。

2. Credential的计算

设定:

H:利用MD5进行Hash计算;

Credential:MD5进行Hash计算的结果

B64:Base64Encode计算

那么,Credential的计算方法为:

Credential= H(B64(H(uasername:password)):nonce)

其中要特别注意:

图中的流程上所示的NextNonce并不能直接用于公式中nonce,NextNonce为了网络上传输,进行了BaseEncode操作,所以NextNonceDecode之后才能用于Credential的计算。


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics