Discord активував E2EE шифрування для аудіо та відеодзвінків
Discord оголосив про впровадження наскрізного шифрування (E2EE) для аудіо- та відеодзвінків на платформі, що є важливим кроком у забезпеченні конфіденційності користувачів. Ця нова технологія, відома під назвою DAVE, була розроблена після детальних експериментів, проєктування та аудиту.
Метою E2EE є захист особистих даних приблизно 200 мільйонів користувачів Discord, які щомісяця активно користуються платформою для спілкування. З запуском цієї функції голосові та відеодзвінки в особистих повідомленнях, групових чатах, голосових каналах та трансляціях Go Live будуть зашифровані.
Користувачі зможуть перевіряти шифрування дзвінків та учасників у реальному часі, що забезпечить ще більшу безпеку та приватність. Discord також планує надати технічний огляд та деталі щодо дизайну нової системи, аби пояснити користувачам, як працює протокол DAVE і які переваги він приносить.
Як це реалізували?
Discord оголосив про важливі кроки, які були зроблені для створення безпечного та надійного протоколу наскрізного шифрування аудіо- та відеодзвінків (E2EE A/V). Прозорість є ключовою частиною цього процесу, тому компанія випускає технічну документацію протоколу DAVE (discord/dave-protocol) і бібліотеки, які використовуються для його реалізації (discord/libdave). Усі майбутні зміни в протоколі або кодовій базі будуть відображатися в цих сховищах, що забезпечить відкритість і довіру до нової технології.
Для підвищення надійності протоколу, Discord тісно співпрацював із компанією з кібербезпеки Trail of Bits, яка провела глибокий аналіз дизайну та реалізації DAVE. Висновки експертів будуть опубліковані для загального доступу, включаючи результати перевірки як дизайну, так і впровадження.
Варто зазначити, що хоч аудіо та відео тепер зашифровані, повідомлення в Discord залишатимуться незмінними та не будуть шифруватись E2EE, щоб забезпечити відповідність політикам модерації контенту.
Протокол DAVE був створений із врахуванням можливості подальшого вдосконалення функцій безпеки для підтримки максимального захисту користувачів.
5 ключових цілей розробки та реалізації протоколу DAVE
- Справді приватні розмови. Головна мета протоколу DAVE — забезпечити повну конфіденційність аудіо- та відеорозмов, де доступ до вмісту мають лише учасники. Шифрувальні ключі генеруються для кожного дзвінка окремо і змінюються при зміні учасників, що виключає можливість доступу до даних з боку сторонніх осіб, включно з Discord.
- Відкритий протокол. Кожен може ознайомитися з технічною документацією та кодом. Discord використовує криптографічні стандарти та підпротоколи, що пройшли зовнішній аудит компанією Trail of Bits, для забезпечення найвищого рівня безпеки.
- Широка підтримка платформи. DAVE сумісний з більшістю голосових і відеоінтерфейсів Discord, включаючи настільні та мобільні версії клієнтів. Використання технології WebRTC дозволяє забезпечити передачу аудіо та відео в реальному часі, хоча підтримка протоколу на вебклієнтах стикається з технічними обмеженнями API браузерів.
- Прозорий для користувачів. Впровадження E2EE не впливає на якість дзвінків: юзери продовжуватимуть користуватися голосовими та відеодзвінками Discord без помітних змін. Оновлення протоколу відбуватимуться автоматично, забезпечуючи безперервність дзвінків незалежно від того, скільки учасників долучається або виходить.
- Масштабованість і продуктивність. Протокол DAVE здатен підтримувати наскрізне шифрування для будь-якої кількості учасників дзвінка, не знижуючи рівень безпеки навіть у масштабних розмовах. Впроваджені алгоритми обміну ключами забезпечують мінімальні затримки — близько кількох сотень мілісекунд, що дозволяє швидко отримувати доступ до медіа без втрати якості чи продуктивності.
Компоненти протоколу DAVE
Протокол DAVE складається з наступних чотирьох основних компонентів:
- WebRTC Encoded Transforms (Кодування та Перетворення)
DAVE використовує API WebRTC для шифрування медіаконтенту. Шифрування відбувається після кодування на стороні відправника і перед декодуванням на стороні одержувача. Спеціальні алгоритми забезпечують коректне пакетування та депакетування медіаданих, зберігаючи несумісні з кодеками послідовності від незашифрованих. - Обмін ключами: захист рівня обміну повідомленнями (MLS)
DAVE використовує MLS для обміну ключами в групових викликах. Це забезпечує оновлення спільних ключів кожного разу, коли учасники приєднуються або виходять з виклику. Це гарантує, що нові учасники не можуть отримати доступ до попередніх повідомлень, а ті, хто виходить, не мають доступу до майбутніх. - Пари ключів ідентифікації та верифікація користувачів
Учасники генерують пари ключів для підтвердження своєї автентичності. Під час виклику можна позасмугово підтвердити особу кожного учасника, порівнюючи коди автентифікації. Пари ключів можуть бути як тимчасовими для кожного виклику, так і постійними для більш тривалих сесій перевірки. - Версія протоколу та групові переходи
Для успішного використання E2EE всі учасники виклику повинні підтримувати протокол. Протокол DAVE автоматично переходить між звичайним шифруванням і E2EE, якщо учасник приєднується або виходить. Система гарантує безперервну передачу медіа, навіть під час зміни контексту групи або версії протоколу.
Ці компоненти надають комплексний захист комунікацій, включаючи аудіо та відео, забезпечуючи наскрізне шифрування.
Досвід користувача з наскрізним шифруванням
Голосові та відеодзвінки в Discord, на перший погляд, здається, що не змінились. Та було внесено суттєві вдосконалення для підтримки наскрізного шифрування (E2EE). Оновлений інтерфейс користувача тепер надає чітку інформацію про статус зашифрованих дзвінків і спрощує процес перевірки учасників.
З новою функцією користувачі можуть без зусиль перевірити, чи є виклик захищеним наскрізним шифруванням. Додано спеціальну вкладку «Конфіденційність», де відображається голосовий код конфіденційності. Цей код є зашифрованим автентифікатором, що змінюється з кожним підключенням або відключенням учасників. Це забезпечує можливість перевірки автентичності всіх учасників розмови поза межами платформи, підтверджуючи, що ніхто не видає себе за іншого.
Тепер є можливість переглядати індивідуальні коди підтвердження для кожного учасника, що дає змогу перевірити їхні особистості поза платформою і переконатися, що спілкування відбувається з потрібними особами. У разі успішного завершення цього процесу буде локально збережено публічний ідентифікаційний ключ для перевіреного користувача.
Що далі?
Впровадження нових функцій є значною зміною для спільноти розробників і з самого початку було вирішено зробити цей перехід максимально плавним. Тепер доступні важливі ресурси, такі як офіційний документ протоколу, бібліотека з відкритим вихідним кодом і оновлена документація з голосового вебсокета.
Зважаючи на те, що різні користувачі Discord мають різні очікування щодо конфіденційності, компанія продовжить інвестувати в удосконалення функцій безпеки та технологій, що дозволяють краще контролювати досвід користувача.
2023 рік був присвячений тестуванню та вдосконаленню протоколу DAVE, і компанія планує продовжувати оновлювати документацію, розширювати підтримку на нових платформах та шукати можливості для подальшого вдосконалення.