DZ先生怪谈国标28181之国标注册

1. 自述

今天DZ先生主讲的课题是:国标注册

2. 背景

DZ先生曾在外地认识了一位女性朋友,她叫碗,碗是位对知识充满渴望,对监控十分感兴趣的妹子,别小看人家,人家可是做人脸识别的。搞得是高大上的行业,基础监控只是他的拓展而已。碗的公司建立了一个新的平台,需要和我们的平台进行对接,由于对国标这块的空白,她选择了我这位老朋友。国标对接的第一步骤就是看register报文是否走完流程哈。下面我们就来看看国标注册是如何运作的。

3. 国标注册流程(前端注册和平台注册流程相同)

说明:

Step.1:
注册设备向对方中心服务器发送 Register 注册消息
Step.2:
中心服务器检查注册设备带来信令中的 Authorization 字段(鉴权字段),发现 Register 信令中未带鉴
权字段。回复 注册设备: 401 Unauthorized(注册未带鉴权)。注意,这不是异常报错,这是国
标注册中的正常流程。
Step.3:
注册设备重新向中心服务器发送 Register 注册消息,并带上鉴权字段(Register With Authorized)
Step.4:
中心服务器检查 Authorization 字段,如果该鉴权通过,则回复 200OK,设备在线。

4. 案例分析及字段解释

REGISTER(前端注册到中心服务器)

REGISTER sip:32028100002000000000@3202810000 SIP/2.0---------方法:register;请求URI 用户名@域   版本号

Via: SIP/2.0/UDP 46.10.1.66:5060;rport;branch=z9hG4bK111093174--

Via 头域是标志了用于事务传输的传输设备,并且也标志了应答送回的地址。
branch这个参数用于区分请求创建的事务

From: <sip:32028104561321000011@3202810000>;tag=1179799581

提交这个注册信息的用户的 address-ofrecord 资料 和to是一样的,后面要加个tag,为什么查看RFC3261的19.3章节

address-of-record由注册用户ID@域名组成 域名也可以是ip地址:端口 这种格式

To: <sip:32028104561321000011@3202810000>

Call-ID: 2033429411------标志一组会话,

CSeq: 1 REGISTER--------和method对应一组会话,会递增

Contact: <sip:32028104561321000011@46.10.1.66:5060>----提供了访问后续请求的特定 UA 实例的联系方法

Max-Forwards: 70--最大跳转数(网络层)

User-Agent: IP Camera---这边UA代理是一个摄像头

Expires: 3600----注册有效期

Content-Length: 0---文本字节

 

401

SIP/2.0 401 Unauthorized

Via: SIP/2.0/UDP 46.10.1.66:5060;branch=z9hG4bK111093174

Call-ID: 2033429411

From: <sip:32028104561321000011@3202810000>;tag=1179799581---from and to消息同上

To: <sip:32028104561321000011@3202810000>;tag=4dd866e7

CSeq: 1 REGISTER

User-Agent: IMOS/V3

WWW-Authenticate:Digest

realm="32028100002000000000",nonce="519c58b9519c58b9ac8c58b9a79c58b9d39c58b9009c58b9ac8c58b9198c58",algorithm=MD5

---告知没有填写认证,并给予认证方式

Content-Length: 0

REGISTER消息

REGISTER sip:32028100002000000000@3202810000 SIP/2.0

Via: SIP/2.0/UDP 46.10.1.66:5060;rport;branch=z9hG4bK132008081----同上

From: <sip:32028104561321000011@3202810000>;tag=1179799581

--from and to消息一致

To: <sip:32028104561321000011@3202810000>
Call-ID: 2033429411---会话唯一标识符
Contact: <sip:32028104561321000011@46.10.1.66:5060>
Authorization: Digest username="32028104561321000011", realm="32028100002000000000", nonce="519c58b9519c58b9ac8c58b9a79c58b9d39c58b9009c58b9ac8c58b9198c58", uri="sip:32028100002000000000@3202810000", response="c990b63bfa21138bd724a467ec27b134", algorithm=MD5
知道这个怎么算吗?下文告诉你
Max-Forwards: 70
User-Agent: IP Camera
Expires: 3600
Content-Length: 0

200OK消息

SIP/2.0 200 OK

Via: SIP/2.0/UDP 46.10.1.66:5060;branch=z9hG4bK132008081---同上

Call-ID: 2033429411

From: <sip:32028104561321000011@3202810000>;tag=1179799581---from and to消息一致同上

To: <sip:32028104561321000011@3202810000>;tag=3129b066

CSeq: 2 REGISTER

Contact: <sip:32028104561321000011@46.10.1.66:5060>

Expires: 3600

User-Agent: IMOS/V3

Date: 2018-07-13T13:22:50.215-----回复消息这一时刻的时间,这个date头域必须存在

Content-Length: 0

5. REGISTER认证加密计算

计算Response过程:
1)下载MD5加解密工具。
2)将username,realm,password依次组合获取1个字符串,并对这个字符串使用算法H来进行加密,获得密文1.
3)将method,uri依次组合获取1个字符串,并对这个字符串使用算法H来进行加密,获得密文2.
4)将密文1,nonce和密文2依次组合获取1个字符串,并对这个字符串使用算法H来进行加密,获得密文3.
这个密文3就是最终的结果Response。

步骤1.

32028104561321000011:32028100002000000000:admin12345
MD5加密后密文 :
c9504793987d578e0640c26357fb1097

步骤2:
REGISTER:sip:32028100002000000000@3202810000
MD5加密后密文 :
3e9f8eefefb80928175d2f3671f9b5e9

步骤3:

 

密文1+nonce+密文2:
c9504793987d578e0640c26357fb1097:519c58b9519c58b9ac8c58b9a79c58b9d39c58b9009c58b9ac8c58b9198c58:3e9f8eefefb80928175d2f3671f9b5e9
MD5加密后密文:
c990b63bfa21138bd724a467ec27b134
response = c990b63bfa21138bd724a467ec27b134

 

MD5加密后密文 = response  所以注册校验成功。

DZ先生个人官方微信

 

***关注DZ君,让监控变得更简单!***

 

  1、支持国标GB28181平台、国标GB28181 IPC和国标GB28181 NVR设备同时接入 (支持GB28181-2011版本和GB28181-2016版本)     2、支持国标GB28181设备注册和注销,对所有设备进行管理,获取资源 对资源列表进行管理     3、支持国标GB28181的目录订阅,对接收的订阅通知进行处理     4、支持国标GB28181实时视频请求(支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     5、支持国标GB28181 PTZ控制     6、支持国标GB28181 录像查询     7、支持国标GB28181 历史视频点播 (支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     8、支持国标GB28181 历史视频下载 (支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     9、支持对接收的国标实时视频码流和历史视频码流进行管理     10、支持将国标的PS码流转换成ES码流     11、支持丢包打印和断流打印     13、支持RTSP服务和RTSP会话管理     14、支持RTSP客户端 UDP传输和TCP传输     15、支持国标GB28181设备5000路左右的接入管理,支持国标请求视频在100路左右     16、支持国标28181设备和通道写入mysql数据库      17、支持设备的云台PTZ控制,控制类型:上"up",下"down",左"left",右"right",左上"leftup",左下"leftdown",右上"rightup",右下"rightdown",镜头近"zoomin",镜头远"zoomout", 焦距远"focusfar",焦距近"focusnear", 设置预置位"setpos",调预置位"callpos"     18、支持历史视频的查询和历史视频的点播控制     19、支持对国标设备的控制,"record":录像开启和停止-通道id "guard":布放和撤防-报警通道id "reboot":设备重启-设备id "keyfame":强制关键帧-通道id     20、支持对实时视频的图片截图,通过http直接访问图片    21、支持rtmp和hls会话一直保留    22、支持报警消息(设备上线、下线和设备端报警)通过httpclient方式主动通知    23、支持公网和局域网同时存在    24、支持httpserver,接口支持http+json    25、支持设备上线、下线和设备报警通过httpclient通知到指定的httpserver   26、支持http+json设置平台信息  27、支持http+json获取资源组、资源等信息  29、支持国标28181级联上级
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值