digest авторизация (rtsp) vlc

296
01 ноября 2019, 18:00

День добрый. При запросе по протоколу rtsp к камере сервер требует digest-авторизацию. Ниже пример лога подключения через vlc.

RTSP/1.0 401 Unauthorized
CSeq: 3
WWW-Authenticate: Digest realm="IP Camera(22462)",nonce="a88f568824492211e1129e760e958797", stale="FALSE"
Date:  Thu, Feb 28 2019 15:31:00 GMT

Resending...
Sending request: DESCRIBE rtsp://192.168.240.100:554/media2 RTSP/1.0
CSeq: 4
Authorization: Digest username="admin", realm="IP Camera(22462)", nonce="a88f568824492211e1129e760e958797", uri="rtsp://192.168.240.100:554/media2", response="aa8df722ea25d9ddc6d2830d7a780fb2"
User-Agent: LibVLC/3.0.6 (LIVE555 Streaming Media v2016.11.28)
Accept: application/sdp

В итоге клиент авторизуется и получает свой поток. Все хорошо. Но при попытке выполнить то же самое средствами java, response получается другой.

   String realm = "IP Camera(22462)";
   String nonce = "a88f568824492211e1129e760e958797";
   String A1 = "admin"+ ":" + realm + ":" + "admin123";
   A1 = DigestUtils.md5Hex(A1);
   String A2 = "DESCRIBE" + ":" + "rtsp://192.168.100.240:554/media2";
   A2 = DigestUtils.md5Hex(A2);
   String response = DigestUtils.md5Hex(A1 + ":" + nonce + ":" + A2);

На выхлопе получаем разный результат.

  1. для java response = df45a532402b728c3abcc9dd197cb1c6
  2. для vlc response = aa8df722ea25d9ddc6d2830d7a780fb2

Причем случай с джавой проверял разными либами, выдаёт одинаково. Для запроса в vlc вводятся те же данные. Нечто похожее видел здесь https://stackoverflow.com/questions/25332235/cant-explain-rtsp-authentication-basic-and-digest, но толком там не объяснили,а в спецификацию пока еще не очень хочется лезть. В чем может быть подвох?

READ ALSO
Спецификация версии Java в .gitlab-ci.yml

Спецификация версии Java в .gitlab-ci.yml

Описываю pipeline в Gitlab, как мне явно указать используемую версию Java вgitlab-ci

175
Проблемы с валидацией

Проблемы с валидацией

При добавлении invNum которого нету в базе все работает и добавляется, а вот если есть уже такой в базе то ошибка! класс валидации

251
Вопрос касательно java Annotation и Reflection

Вопрос касательно java Annotation и Reflection

Здраствуйте, у меня вопрос, У меня есть множество классов помеченые какой то анотацией, мне нужно все класы которие помечение анотацией засунуть...

220
Зачем нужен статический метод?

Зачем нужен статический метод?

Знаю, что переменные static как бы общие для всех классов и являются единственным экземпляромНо зачем нам нужны статические методы ? И почему...

259