RTSP認證方式

2021-10-06 18:41:51 字數 4302 閱讀 9982

基本認證是http 1.0提出的認證方案,其訊息傳輸不經過加密轉換因此存在嚴重的安全隱患。

1.1 客戶端傳送describe請求到前端裝置,url中攜帶請求的url位址

describe rtsp://

192.168

.1.55

:554

/live/

1/video.sdp?token=a00453fr805a54c8

rtsp/

1.0\r\n

cseq:

1\r\n

user-agent: realplayer\r\n\r\n

2、裝置認證通過,傳送 www-authenticate認證請求

rtsp/

1.0401 unauthorized\r\n

cseq:

1\r\n

www-authenticate: basic realm=

"rtspd"\r\n\r\n

此時客戶端程式會彈出使用者名稱名密碼認證視窗,輸入認證資訊後,

describe rtsp://

192.168

.1.55

:554

/live/

1/video.sdp?token=a00453fr805a54c8

rtsp/

1.0\r\n

cseq:

2\r\n

user-agent: realmedia player helixdnaclient/

12.0

.1.647

(win32)\r\n

authorization: basic ywrtaw46ywrtaw4=\r\n\r\n

其中「ywrtaw46ywrtaw4=」為前端裝置訪問username:password明文的base64編碼

摘要認證是http 1.1提出的基本認證的替代方案,其訊息經過md5雜湊轉換因此具有更高的安全性。

1、 客戶端第一次建立連線,傳送options request報文,詢問服務端有哪些方法可用

options rtsp://

10.67

.193

.76:

554/streaming/channels/

1?transportmode=unicast&profile=profile_1 rtsp/

1.0cseq:

2user-agent: libvlc/

3.0.5

(live555 streaming media v2016.

11.28

)

此時服務端(即裝置)在回應資訊中提供所有的可用方法

rtsp/

1.0200 ok

cseq:

2public: options, describe, play, pause, setup, teardown, set_parameter, get_parameter

date: wed, jun 03

202010:

54:30 gmt

2、客戶端傳送describe request報文,得到服務端的**初始化描述資訊

describe rtsp://

10.67

.193

.76:

554/streaming/channels/

1?transportmode=unicast&profile=profile_1 rtsp/

1.0cseq:

3user-agent: libvlc/

3.0.5

(live555 streaming media v2016.

11.28

)

此時裝置返回相應401報文,提示使用者需要認證

rtsp/

1.0401 unauthorized

cseq:

3www-authenticate: digest realm=

"ip camera(23435)"

, nonce=

"8fd7c44874480bd643d970149224da11"

, stale=

"false"

date: wed, jun 03

202010:

54:30 gmt

3.通過上一步rtsp server 返回的 realm 和 nonce 計算出 authorization,然後重新獲取請求,在請求中加上 authorization

describe rtsp://

10.67

.193

.76:

554/streaming/channels/

1?transportmode=unicast&profile=profile_1 rtsp/

1.0cseq:

4authorization: digest username=

"", realm=

"ip camera(23435)"

, nonce=

"8fd7c44874480bd643d970149224da11"

, uri=

"rtsp:"

, response=

"ca29ba3297f50b32425e46e23723ef7b"

user-agent: libvlc/

3.0.5

(live555 streaming media v2016.

11.28

)

服務端校驗是否通過認證,通過的話,回應**初始化描述資訊,主要是sdp

rtsp/

1.0200 ok

cseq:

7content-base: rtsp://

10.67

.193

.76:

554/streaming/channels/1/

content-length:

895

4.客戶端傳送play request請求

play rtsp://

10.67

.193

.76:

554/streaming/channels/1/

?transportmode=unicast&profile=profile_1 rtsp/

1.0cseq:

10authorization: digest username=

"admin"

, realm=

"ip camera(23435)"

, nonce=

"18de8ae133a1703bae94cb37ce8bf08d"

, uri=

"rtsp:"

, response=

"fe32b85aeae647879fb384ad60f6a711"

user-agent: libvlc/

3.0.5

(live555 streaming media v2016.

11.28

)session:

427807408

range: npt=

0.000

-

rtsp/

1.0200 ok

cseq:

10session:

427807408

rtp-info: url=rtsp://

10.67

.193

.76:

554/streaming/channels/

1/trackid=

1?transportmode=unicast&profile=profile_1;seq=

40721

;rtptime=

4036421714

,url=rtsp://

10.67

.193

.76:

554/streaming/channels/

1/trackid=

2?transportmode=unicast&profile=profile_1;seq=

35759

;rtptime=

740568584

date: wed, jun 03

202010:

54:37 gmt

1.

2.

RTSP 摘要認證

說明 1.請求頭欄位說明 例如 options rtsp 字段依次包含 public method,uri位址,協議版本 response欄位的計算 rtsp客戶端應該使用username password並計算response如下 1 當password為md5編碼,則 response md5 ...

RTSP鑑權認證之基礎認證和摘要認證

基本認證 basic authentication http 1.0提出的認證方案,其訊息傳輸不經過加密轉換因此存在嚴重的安全隱患 摘要認證 digest authentication http 1.1提出的基本認證的替代方案,其訊息經過md5雜湊轉換因此具有更高的安全性。1.客戶端傳送descri...

HTTP認證方式

http請求報頭 authorization http響應報頭 www authenticate http認證 基於 質詢 回應 challenge response 的認證模式。基本認證 basic authentication http1.0提出的認證方法 客戶端對於每乙個realm,通過提供使...