Это звучит нормально для меня!
getRemoteCertificates , к сожалению, не везде доступно, что может усложнить задачу. Тем не менее, вы можете получить это непосредственно из SessionDescription! Ищите a=fingerprint
, это может быть либо на уровне медиа, либо на глобальном уровне.
Я не знаю, облегчает ли это, но если вы контролируете всех клиентов, вы также можете предоставить свой собственный сертификат! Конструктор RTCPeerConnection позволяет пользователям передавать свои собственные сертификаты. Тогда вам не нужно беспокоиться о MITM вообще.
gfile также может послужить хорошим источником вдохновения. Он реализует передачу файлов через RTCDataChannels.