Megolm¶
Megolm — криптографічний протокол групового шифрування, розроблений Matrix.org для ефективного наскрізного шифрування кімнат з великою кількістю учасників.
Опис¶
Головна проблема групового шифрування: якщо використовувати Olm (Double Ratchet) для груп, відправник мав би шифрувати кожне повідомлення окремо для кожного пристрою кожного учасника. При 50 учасниках із двома пристроями кожен — це 100 операцій шифрування на одне повідомлення. Megolm вирішує цю проблему через спільний сесійний ключ.
Megolm використовує одну симетричну ratchet-сесію на кімнату та пристрій відправника. Відправник шифрує повідомлення один раз спільним ключем сесії. Сам ключ сесії розсилається всім пристроям учасників через окремі Olm-сесії — тобто Olm використовується для захищеної доставки ключів Megolm.
Ratchet у Megolm є одностороннім: ключ рухається лише вперед, тому forward secrecy зберігається — компрометація поточного стану ratchet не дозволяє розшифрувати попередні повідомлення. Однак, на відміну від Olm, Megolm не має break-in recovery в рамках однієї сесії. Щоб обмежити ризик, Megolm-сесії ротуються: за замовчуванням нова сесія створюється кожні 100 повідомлень або раз на тиждень.
Коли до кімнати приєднується новий учасник або підключається новий пристрій, він не отримує доступу до старих ключів Megolm-сесій (якщо не налаштований history sharing). Це є свідомим компромісом між безпекою та зручністю.
В контексті UMTC¶
У UMTC всі групові кімнати Matrix використовують Megolm. Для тактичних кімнат (оперативні канали, координація) важливо враховувати:
- Ротація ключів при зміні складу: якщо учасника виключено з кімнати, поточна Megolm-сесія має бути ротована вручну або автоматично (залежить від клієнта), інакше він технічно може розшифровувати нові повідомлення, якщо ключ витік.
- Верифікація пристроїв: Megolm-ключі надсилаються тільки верифікованим пристроям. Невірифікований пристрій не отримає ключів і бачитиме повідомлення як "Unable to decrypt".
- Резервне копіювання: через Key Backup Megolm-ключі зберігаються на Synapse в зашифрованому вигляді.
Пов'язані терміни¶
- olm — протокол для приватних чатів; використовується для доставки Megolm-ключів
- e2ee — загальна концепція наскрізного шифрування
- matrix — протокол, в якому Megolm є стандартом групового шифрування
- element — клієнт, що реалізує Megolm/libolm
Посилання¶
Шлях: glossary/megolm.md