GB28181注册认证

说几句GB28181那个上面写的验证算法,完全不知所云,不知哪位"大仙"写的,就想给他说一句:以后写的时候认真点好不,最起码对得起"GB"这两个字母啊,不发牢骚了,往下看

所使用的鉴权计算公式是这样的:

HA1=md5(username:realm:password)

HA2=md5(Method:Uri)

RESPONSE=md5(HA1:nonce:HA2)

 

其中会涉及到如下几个关键词:

username:即国标id号

realm:通常是id的前10位,由401消息携带告知。

password:提前配置商定,如海康的IPC有专门的配置项,测试的时候用户名和密码配置一样。

Method:REGISTER

Uri:由请求方在第二次REGISTER中携带。

nonce:由401消息携带告知。

 

例子:

HA1=md5(username:realm:password)
HA1=md5(11000000003000000001:1100000000:123456)
       =81f021fe3f4876df315d89c82a24cdff    用小写的
        81F021FE3F4876DF315D89C82A24CDFF

HA2=md5(Method:Uri)
HA2=md5(REGISTER:sip:[email protected]:5060;transport=UDP)
       =160aad37c1bf7fe16ae9cb656ebbf4e4    用小写的
        160AAD37C1BF7FE16AE9CB656EBBF4E4

nonce=13150012922:c44236aa4b0085fd6c5161d73c8e29b3
RESPONSE=md5(HA1:nonce:HA2)
RESPONSE=md5(81f021fe3f4876df315d89c82a24cdff:13150012922:c44236aa4b0085fd6c5161d73c8e29b3:160aad37c1bf7fe16ae9cb656ebbf4e4)
                    =97d60ab7abb7c59d288223600b9eddfd

你可能感兴趣的:(GB28181)