RTSP 鉴权认证

RTSP 的认证基本认证 basic authentication和摘要认证 digest authentication。摘要认证是 http 1.1 提出的基本认证的替代方案,其消息经过 MD5 哈希转换因此具有更高的安全性。

交互过程

  1. DESCRIBE 环节,客户发送与不需要认证一样的请求。服务器端返回401错误,提示未认证,并且在响应报文里面返回 nonce 。
    DESCRIBE Request
rtsp://admin:admin123@127.0.0.1:554/cam/playback?channel=2&subtype=0&starttime=2019_08_05_18_13_13 RTSP/1.0
CSeq: 2
User-Agent: ./testRTSPClient (LIVE555 Streaming Media v2019.07.27)
Accept: application/sdp

DESCRIBE Response

Received 139 new bytes of response data.
Received a complete DESCRIBE response:
RTSP/1.0 401 Unauthorized
CSeq: 2
WWW-Authenticate: Digest realm="Login to 4M05CC9FAC28B0B", nonce="c5cdebfb791630ad189ac43081c7c01e"
  1. DESCRIBE 环节,客户端以用户名,密码,nonce,请求方法(OPTIONS/DESCRIBE/SETUP/PLAY),请求的 URI 等信息为基础产生 response 信息进行反馈:
    DESCRIBE Request
rtsp://admin:admin123@127.0.0.1:554/cam/playback?channel=2&subtype=0&starttime=2019_08_05_18_13_13 RTSP/1.0
CSeq: 3
Authorization: Digest username="admin", realm="Login to 4M05CC9FAC28B0B", nonce="c5cdebfb791630ad189ac43081c7c01e", uri="rtsp://admin:admin123@127.0.0.1:554/cam/playback?channel=2&subtype=0&starttime=2019_08_05_18_13_13", response="5e607d3405777309839c3d4fe4509e4e"
User-Agent: ./testRTSPClient (LIVE555 Streaming Media v2019.07.27)
Accept: application/sdp

DESCRIBE Response 认证通过

RTSP/1.0 200 OK
CSeq: 3
x-Accept-Dynamic-Rate: 1
Content-Base: rtsp://admin:admin123@127.0.0.1:554/cam/playback?channel=2&subtype=0&starttime=2019_08_05_18_13_13/
Cache-Control: must-revalidate
Content-Length: 409
Content-Type: application/sdp
.......

DESCRIBE Response 认证不通过

RTSP/1.0 401 Unauthorized
CSeq: 2
WWW-Authenticate: Digest realm="Login to 4M05CC9FAC28B0B", nonce="f015500fc594469c59837dcdca716b13"

digest/response 计算方法

    hs1 := md5hash(username + ":" + realm + ":" + password)
    hs2 := md5hash(method + ":" + requestUri)
    response := md5hash(hs1 + ":" + nonce + ":" + hs2)
  • username:用户名
  • password: 密码
  • realm: 通常一个 server 对应一个 realm
  • method:请求方法(OPTIONS/DESCRIBE/SETUP/PLAY)
  • requestUri: 请求的 uri
  • nonce: 随机字符串,通常一个 session 对应一个 nonce
  1. SETUP, PLAY 阶段用相同的方式进行认证
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值