Чи безпечне листування в Meshtastic: шифрування простими словами
Meshtastic шифрує повідомлення, але «зашифровано» не означає «таємно від усіх». Ось що саме захищено, а що ні.
Канали й ключі
За документацією, кожен канал має свій спільний ключ (PSK), і повідомлення в каналі шифруються цим ключем. Довжина ключа визначає варіант шифру: 16 байт це AES-128, 32 байти це AES-256.
Головне правило: хто має ключ каналу, той читає всі повідомлення в ньому.
Чому спільний канал не є приватним
У налаштуваннях за замовчуванням використовується відомий усім ключ, тож трафік такого каналу може прочитати будь-хто. Щоб канал був приватним, треба створити новий ключ і передати його лише своїм.
У нашої спільноти ключ каналу мережі Запоріжжя публікується на сайті (QR-код і посилання), щоб кожен міг приєднатися. Тому цей канал варто сприймати як відкритий для всіх учасників спільноти. Не пишіть у ньому адрес, дані документів чи іншу чутливу інформацію.
Особисті повідомлення
Особисті повідомлення захищені краще. Кожен вузол має пару ключів, два вузли виводять спільний ключ (алгоритм X25519), і повідомлення шифруються AES-256-CCM. Читати їх можуть лише відправник і одержувач, а одержувач може переконатися, від кого воно. Вузли дізнаються публічні ключі одне одного зі службових пакетів.
Що не шифрується
- Заголовки пакетів. Вузлам вони потрібні, щоб ретранслювати повідомлення.
- Службові пакети про вузол і позицію. Зазвичай вони шифруються ключем каналу, тож їх бачать усі, хто його має.
- Нема «прямої секретності». Якщо хтось записав трафік сьогодні й пізніше отримав ключ, він зможе його розшифрувати.
- Підробка відправника. Той, хто має ключ каналу, може надіслати непідписане повідомлення від імені будь-якого вузла. Тому такі повідомлення варто сприймати як твердження, а не як доказ.
Що нового в прошивці
Починаючи з версії 2.8, широкомовні пакети можуть підписуватися, щоб перевіряти відправника. Для каналів у прошивці 2.8.1 і новішій є додатковий захист від підміни пакетів, який вмикається окремою опцією й має збігатися на всіх вузлах каналу.
Практичні висновки
1. Для чутливих розмов використовуйте особисті повідомлення, а не загальний канал. 2. Не вказуйте в загальному каналі точну адресу, телефон чи інші персональні дані. 3. Позицію вмикайте усвідомлено, бо її теж бачать інші.
Докладніше про початок: швидкий старт, а також часті запитання.