mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-11-11 11:47:44 +00:00
251 lines
24 KiB
Markdown
251 lines
24 KiB
Markdown
# The World's Most Secure Messaging
|
||
|
||
**Ultimate security**: SimpleX network uses the most secure end-to-end encryption, with continuous post-quantum key exchange to protect all messages and metadata.
|
||
|
||
**Unique privacy**: SimpleX network has no user profile IDs, not even random numbers or keys. It provides better privacy of your contacts, protecting who you talk with from network servers.
|
||
|
||
**No spam**: nobody can contact you unless you share 1-time link or long-term address.
|
||
|
||
**Data ownership**: only your device stores your profiles, contacts and messages. You can securely move your data to another device. Servers store encrypted messages only while your device is offline.
|
||
|
||
**Secure decentralization**: you control which servers to connect to. For security 4 different servers are used in each chat — they can't observe which IP addresses talk to each other.
|
||
|
||
#### How to connect to others
|
||
|
||
- Tap new chat button in the corner, then create 1-time link.
|
||
- Share the link with your contact via any other messenger or email - it is secure.
|
||
- Ask your contact to use the link in the app - click it after the app is installed or paste into the search field in the app.
|
||
|
||
## Чому SimpleX є унікальним
|
||
|
||
### Ви маєте повну конфіденційність
|
||
|
||
SimpleX захищає конфіденційність вашого профілю, контактів та метаданих, приховуючи їх від серверів мережі SimpleX та будь-яких спостерігачів.
|
||
|
||
На відміну від будь-якої іншої існуючої мережі для обміну повідомленнями, у SimpleX немає ідентифікаторів, призначених користувачам — **не навіть випадкових чисел**.
|
||
|
||
### Вас захищено від спаму та зловживань
|
||
|
||
Оскільки у вас немає ідентифікатора або фіксованої адреси в мережі SimpleX, ніхто не може зв'язатися з вами, якщо ви не поділитеся одноразовою або тимчасовою адресою користувача, як QR-кодом або посиланням.
|
||
|
||
### Ви контролюєте свої дані
|
||
|
||
SimpleX зберігає всі дані користувачів на пристроях клієнтів у **переносному зашифрованому форматі бази даних** — його можна передавати на інший пристрій.
|
||
|
||
Зашифровані повідомлення від кінця до кінця тимчасово зберігаються на ретрансляційних серверах SimpleX до їх отримання, після чого вони назавжди видаляються.
|
||
|
||
### Ви власник мережі SimpleX
|
||
|
||
Мережа SimpleX повністю децентралізована та незалежна від будь-якої криптовалюти або будь-якої іншої мережі, окрім Інтернету.
|
||
|
||
Ви можете **використовувати SimpleX з власними серверами** або з серверами, які ми надаємо — і все одно підключатися до будь-якого користувача.
|
||
|
||
# Повна конфіденційність вашої ідентичності, профілю, контактів та метаданих
|
||
|
||
На відміну від інших мереж для обміну повідомленнями, у SimpleX **немає ідентифікаторів, призначених користувачам**. Він не покладається на номери телефонів, адреси на основі доменів (як електронна пошта або XMPP), імена користувачів, публічні ключі або навіть випадкові числа для ідентифікації своїх користувачів — оператори серверів SimpleX не знають, скільки людей використовують їхні сервери.
|
||
|
||
Для доставки повідомлень SimpleX використовує [парні анонімні адреси](https://csrc.nist.gov/glossary/term/Pairwise_Pseudonymous_Identifier) однобічних черг повідомлень, окремо для отриманих та відправлених повідомлень, зазвичай через різні сервери.
|
||
|
||
Цей дизайн захищає конфіденційність того, з ким ви спілкуєтесь, приховуючи це від серверів мережі SimpleX та від будь-яких спостерігачів. Щоб приховати вашу IP-адресу від серверів, ви можете **підключатися до серверів SimpleX через Tor**.
|
||
|
||
# Найкращий захист від спаму та зловживань
|
||
|
||
Оскільки у вас немає ідентифікатора в мережі SimpleX, ніхто не може зв'язатися з вами, якщо ви не поділитеся одноразовою або тимчасовою адресою користувача, як QR-кодом або посиланням.
|
||
|
||
Навіть з необов'язковою адресою користувача, яка може бути використана для відправки спамових запитань на зв'язок, ви можете змінити або повністю видалити її, не втрачаючи жодного з ваших з'єднань.
|
||
|
||
# Власність, контроль та безпека ваших даних
|
||
|
||
SimpleX Chat зберігає всі дані користувачів лише на пристроях клієнтів за допомогою **переносного зашифрованого формату бази даних**, який можна експортувати і передавати на будь-який підтримуваний пристрій.
|
||
|
||
Зашифровані повідомлення від кінця до кінця тимчасово зберігаються на ретрансляційних серверах SimpleX до їх отримання, після чого вони назавжди видаляються.
|
||
|
||
На відміну від федеративних мереж серверів (електронна пошта, XMPP або Matrix), сервери SimpleX не зберігають облікові записи користувачів, вони лише ретранслюють повідомлення, захищаючи приватність обох сторін.
|
||
|
||
Між надісланим і отриманим серверним трафіком немає спільних ідентифікаторів чи шифрованого тексту — якщо хтось його спостерігає, він не може легко визначити, хто спілкується з ким, навіть якщо TLS скомпрометовано.
|
||
|
||
# Повністю децентралізована — користувачі володіють мережею SimpleX
|
||
|
||
Ви можете **використовувати SimpleX зі своїми власними серверами** і при цьому спілкуватися з людьми, які використовують сервери, попередньо налаштовані в додатках.
|
||
|
||
Мережа SimpleX використовує [відкритий протокол](https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md) і надає [SDK для створення чат-ботів](https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript), що дозволяє реалізувати сервіси, з якими користувачі можуть взаємодіяти через додатки SimpleX Chat — ми справді чекаємо, щоб побачити, які сервіси SimpleX ви створите.
|
||
|
||
Якщо ви плануєте розробляти для мережі SimpleX, наприклад, чат-бота для користувачів додатка SimpleX або інтеграцію бібліотеки SimpleX Chat у ваші мобільні додатки, будь ласка, [зв'яжіться з нами](https://simplex.chat/contact#/?v=1&smp=smp%3A%2F%2FPQUV2eL0t7OStZOoAsPEV2QYWt4-xilbakvGUGOItUo%3D%40smp6.simplex.im%2FK1rslx-m5bpXVIdMZg9NLUZ_8JBm8xTt%23MCowBQYDK2VuAyEALDeVe-sG8mRY22LsXlPgiwTNs9dbiLrNuA7f3ZMAJ2w%3D) для отримання порад та підтримки.
|
||
|
||
## Особливості
|
||
|
||
Повідомлення з шифруванням від кінця до кінця з можливістю використання Markdown та редагування
|
||
|
||
Зображення, відео та файли з шифруванням від кінця до кінця
|
||
|
||
Децентралізовані групи з шифруванням від кінця до кінця — тільки користувачі знають про їх існування
|
||
|
||
Голосові повідомлення з шифруванням від кінця до кінця
|
||
|
||
Зникнення повідомлень
|
||
|
||
Дзвінки з шифруванням від кінця до кінця для аудіо та відео
|
||
|
||
Переносне зашифроване зберігання додатку — переміщуйте профіль на інший пристрій
|
||
|
||
Режим інкогніто —
|
||
унікальний для SimpleX Chat
|
||
|
||
## Що робить SimpleX конфіденційним
|
||
|
||
### Тимчасові анонімні парні ідентифікатори
|
||
|
||
SimpleX використовує тимчасові анонімні парні адреси та облікові дані для кожного користувача, контакту чи учасника групи.
|
||
|
||
Це дозволяє доставляти повідомлення без ідентифікаторів профілю користувача та забезпечує кращу конфіденційність метаданих, ніж альтернативи.
|
||
|
||
### Позаканальний обмін ключами
|
||
|
||
Багато комунікаційних мереж вразливі до MITM-атак серверів чи постачальників мережі.
|
||
|
||
Щоб запобігти цьому, програми SimpleX передають одноразові ключі позаканально, коли ви ділитесь адресою як посиланням або QR-кодом.
|
||
|
||
### 2 рівні шифрування від кінця до кінця
|
||
|
||
Протокол подвійної рейки — OTR-повідомлення з ідеальною передачею секрету та відновленням злому.
|
||
|
||
NaCL криптокоробка в кожній черзі для запобігання кореляції трафіку між чергами повідомлень у разі компрометації TLS.
|
||
|
||
### Перевірка цілісності повідомлення
|
||
|
||
Для гарантії цілісності повідомлення пронумеровані послідовно та містять хеш попереднього повідомлення.
|
||
|
||
Якщо будь-яке повідомлення додається, вилучається чи змінюється, отримувач буде проінформований.
|
||
|
||
### Додатковий рівень шифрування сервера
|
||
|
||
Додатковий рівень шифрування сервера для доставки отримувачу для запобігання кореляції між отриманим та відісланим трафіком сервера у разі компрометації TLS.
|
||
|
||
### Змішування повідомлень для зменшення кореляції
|
||
|
||
Сервери SimpleX виступають як вузли низької затримки для змішування — вхідні та вихідні повідомлення мають різний порядок.
|
||
|
||
### Безпечний аутентифікований транспорт TLS
|
||
|
||
Використовується лише TLS 1.2/1.3 із сильними алгоритмами для з'єднань клієнт-сервер.
|
||
|
||
Відбиток сервера та зв'язування каналу запобігають MITM та атакам повтору.
|
||
|
||
Відновлення з'єднання вимкнено для запобігання атакам на сесію.
|
||
|
||
### Опційний доступ через Tor
|
||
|
||
Для захисту вашої IP-адреси ви можете отримати доступ до серверів через Tor чи іншу транспортну оверлейну мережу.
|
||
|
||
Для використання SimpleX через Tor, будь ласка, встановіть [додаток Orbot](https://guardianproject.info/apps/org.torproject.android/) та активуйте SOCKS5-проксі (або VPN [на iOS](https://apps.apple.com/us/app/orbot/id1609461599?platform=iphone)).
|
||
|
||
### Однобічні черги повідомлень
|
||
|
||
Кожна черга повідомлень передає повідомлення в одному напрямку, з різними адресами для відправки та отримання.
|
||
|
||
Це зменшує вектори атак порівняно із традиційними брокерами повідомлень та доступними метаданими.
|
||
|
||
### Кілька рівнів наповнення вмісту
|
||
|
||
SimpleX використовує наповнення вмісту для кожного шару шифрування для ускладнення атак за розміром повідомлень.
|
||
|
||
Це забезпечує, що повідомлення різних розмірів виглядають однаково для серверів та спостерігачів мережі.
|
||
|
||
## SimpleX Network
|
||
|
||
SimpleX Chat надає найкращу конфіденційність, поєднуючи переваги P2P та федеративних мереж.
|
||
|
||
### На відміну від мереж P2P
|
||
|
||
Всі повідомлення відправляються через сервери, що забезпечує кращу конфіденційність метаданих та надійну асинхронну доставку повідомлень, уникаючи багатьох .
|
||
|
||
# Порівняння з протоколами P2P-повідомлень
|
||
|
||
[Протоколи та додатки для P2P-зв'язку](https://en.wikipedia.org/wiki/Peer-to-peer) мають різні проблеми, які роблять їх менш надійними порівняно із SimpleX, складнішими для аналізу та вразливими до кількох типів атак.
|
||
|
||
1. P2P-мережі покладаються на якусь варіацію [розподіленої хеш-таблиці (DHT)](https://en.wikipedia.org/wiki/Distributed_hash_table) для маршрутизації повідомлень. Дизайни DHT повинні балансувати гарантію доставки та затримку. У SimpleX є як краща гарантія доставки, так і менша затримка порівняно із P2P, оскільки повідомлення може передаватися паралельно кількома серверами, використовуючи сервери, обрані отримувачем. У P2P-мережах повідомлення проходить через вузли *O(log N)* послідовно, використовуючи вузли, обрані алгоритмом.
|
||
2. У дизайні SimpleX, на відміну від більшості P2P-мереж, немає жодних глобальних ідентифікаторів користувачів будь-якого виду, навіть тимчасових, та використовуються лише тимчасові парні ідентифікатори, що забезпечує кращу анонімність та захист метаданих.
|
||
3. P2P не вирішує проблему атаки [MITM](https://en.wikipedia.org/wiki/Man-in-the-middle_attack), і більшість існуючих реалізацій не використовують поза каналом повідомлень для початкового обміну ключами. SimpleX використовує поза каналом повідомлень або, у деяких випадках, передбачені і безпечні з'єднання для початкового обміну ключами.
|
||
4. Реалізації P2P можуть бути заблоковані деякими інтернет-провайдерами (наприклад, [BitTorrent](https://en.wikipedia.org/wiki/BitTorrent)). SimpleX є незалежним від транспорту — він може працювати через стандартні веб-протоколи, наприклад, WebSockets.
|
||
5. Всі відомі P2P-мережі можуть бути вразливими до атаки [Sybil](https://en.wikipedia.org/wiki/Sybil_attack), оскільки кожен вузол є відкритим, і мережа працює як ціле. Відомі заходи для пом'якшення цієї атаки вимагають або централізованого компонента, або дорогого [доказу роботи](https://en.wikipedia.org/wiki/Proof_of_work). Мережа SimpleX не має виявності сервера, вона роздроблена і працює як кілька ізольованих підмереж, що робить неможливими атаки на всю мережу.
|
||
6. P2P-мережі можуть бути вразливими до атаки [DRDoS](https://www.usenix.org/conference/woot15/workshop-program/presentation/p2p-file-sharing-hell-exploiting-bittorrent), коли клієнти можуть ребродкастити та збільшувати трафік, що призводить до відмови в обслуговуванні на рівні всієї мережі. Клієнти SimpleX лише пересилають трафік від відомого підключення і не можуть бути використані зловмисником для збільшення трафіку в усій мережі.
|
||
|
||
---
|
||
|
||
### На відміну від федеративних мереж
|
||
|
||
Сервери SimpleX Chat НЕ зберігають профілі користувачів, контакти та доставлені повідомлення, НЕ підключаються один до одного, і НЕ існує каталог серверів.
|
||
|
||
---
|
||
|
||
### Мережа SimpleX
|
||
|
||
сервери надають однобічні черги для з'єднання користувачів, але вони не мають видимості графа підключень в мережі — лише користувачі.
|
||
|
||
## Пояснення SimpleX
|
||
|
||
1. Що відчувають користувачі
|
||
|
||
2. Як це працює
|
||
|
||
3. Що бачать сервери
|
||
|
||
1. Що відчувають користувачі
|
||
|
||
Ви можете створювати контакти та групи і вести двосторонні розмови, як у будь-якому іншому месенджері.
|
||
|
||
Як це може працювати з однобічними чергами та без ідентифікаторів профілю користувача?
|
||
|
||
2. Як це працює
|
||
|
||
Для кожного з'єднання ви використовуєте дві окремі черги обміну повідомленнями для відправки та отримання повідомлень через різні сервери.
|
||
|
||
Сервери передають повідомлення тільки в одному напрямку, не маючи повної картини розмов або підключень користувача.
|
||
|
||
3. Що бачать сервери
|
||
|
||
Сервери мають окремі анонімні облікові дані для кожної черги і не знають, які користувачі до них відносяться.
|
||
|
||
Користувачі можуть додатково підвищити конфіденційність метаданих, використовуючи Tor для доступу до серверів, що запобігає кореляції за IP-адресою.
|
||
|
||
## Порівняння з іншими протоколами
|
||
|
||
| | | Signal, великі платформи | XMPP, Matrix | Протоколи P2P |
|
||
| --- | --- | --- | --- | --- |
|
||
| Потребує глобального ідентифікатора | Ні - конфіденційно | Так [1] | Так [2] | Так [3] |
|
||
| Можливість MITM | Ні - безпечно [4] | Так [5] | Так | Так |
|
||
| Залежність від DNS | Ні - стійко | Так | Так | Ні |
|
||
| Одна чи централізована мережа | Ні - децентралізовано | Так | Ні - федеративно [6] | Так [7] |
|
||
| Центральний компонент чи інша атака на всю мережу | Ні - стійко | Так | Так [2] | Так [8] |
|
||
|
||
---
|
||
|
||
1. Зазвичай базується на номері телефону, у деяких випадках на іменах користувачів
|
||
2. Адреси, засновані на DNS
|
||
3. Відкритий ключ чи який-небудь інший глобально унікальний ідентифікатор
|
||
4. Ретранслятори SimpleX не можуть порушити e2e-шифрування. Перевірте безпековий код для зменшення ризику атаки на зовнішньобандовий канал
|
||
5. Якщо сервери оператора порушені. Перевірте безпековий код в Signal та деяких інших додатках для зменшення ризику
|
||
6. Не захищає конфіденційність метаданих користувачів
|
||
7. Хоча P2P є розподіленими, вони не є федеративними — вони працюють як одна мережа
|
||
8. Мережі P2P мають або центральний орган управління, або всю мережу можна порушити — [дивіться тут](https://github.com/simplex-chat/simplex-chat/blob/stable/docs/SIMPLEX.md#comparison-with-p2p-messaging-protocols)
|
||
|
||
## Comparison of end-to-end encryption security in different messengers
|
||
|
||
| | Session | Briar | Element | Cwtch | Signal | SimpleX |
|
||
| --- | --- | --- | --- | --- | --- | --- |
|
||
| Message padding | ✗ | ✔︎[1] | ✗ | ✔︎ | ✔︎[1] | ✔︎ |
|
||
| Repudiation (deniability) | ✗ | ✗ | ✗ | ✔︎[2] | ✔︎[3] | ✔︎ |
|
||
| Forward secrecy | ✗ | ✔︎ | ✔︎ | ✔︎ | ✔︎ | ✔︎ |
|
||
| Post-compromise security | ✗ | ✗ | ✗ | ✔︎ | ✗[4] | ✔︎ |
|
||
| 2-factor key exchange | ✔︎ | ✔︎[5] | ✔︎[5] | ✔︎ | ✔︎[5] | ✔︎ |
|
||
| Post-quantum hybrid crypto | ✗ | ✗ | ✗ | ✗ | ✔︎[6] | ✔︎ |
|
||
|
||
---
|
||
|
||
1. Briar pads messages to the size rounded up to 1024 bytes, Signal - to 160 bytes
|
||
2. Repudiation does not include client-server connection.
|
||
3. It appears that the usage of cryptographic signatures compromises repudiation (deniability), but it needs to be clarified.
|
||
4. Multi-device implementation compromises post-compromise security of Double Ratchet — [дивіться тут](https://eprint.iacr.org/2021/626.pdf).
|
||
5. 2-factor key exchange is optional via security code verification.
|
||
6. Post-quantum key agreement is "sparse" — it protects only some of the ratchet steps.
|