RTSP认证类型
- 基本认证(basic authentication):http 1.0提出的认证方案,其消息传输不经过加密转换因此存在严重的安全隐患;
- 摘要认证(digest authentication):http 1.1提出的基本认证的替代方案,其消息经过MD5哈希转换因此具有更高的安全性。
基本认证:
1.客户端发送DESCRIBE请求到服务端;
2. RTSP服务端认为没有通过认证,发出WWW-Authenticate认证响应
RTSP/1.0 401 Unauthorized\r\n CSeq: 1\r\n WWW-Authenticate: Basic realm="RTSPD"\r\n\r\n
此时客户端程序应该如果弹出密码认证窗口 ,提示用户名,输入认证信息,密码认证窗口,从响应消息中进行判断,如果发现是Basic 认证,按如下方式处理。
3:客户端携带Authorization串再次发出DESCRIBE请求即可。
摘要认证:
1.客户端发送DESCRIBE请求;
2. 服务器端返回401错误,提示未认证并以nonce质询;
RTSP/1.0 401 Unauthorized Server: HiIpcam/V100R003 VodServer/1.0.0 Cseq: 2 WWW-Authenticate:Digest realm="HipcamRealServer", nonce="3b27a446bfa49b0c48c3edb83139543d"
3.客户端以用户名,密码,nonce,HTTP方法,请求的URI等信息为基础产生response信息进行反馈;
4. 服务器对客户端反馈的response进行校验,通过则返回 RTSP/1.0 200 OK。