Приватність
Коротко й перевірювано: що сервер знає, чого не знає, і скільки з цього зберігається.
Чого сервер не знає
Тексту повідомлень, файлів, голосу в дзвінках. Ключів шифрування. Вашої адресної книги - застосунок її не читає. Вашого номера телефону - його ніхто не питає. Один виняток із першого рядка називаємо тут же: якщо ви самі надішлете скаргу, вибрані вами повідомлення підуть на сервер відкритим текстом і полежать 90 днів. Іншого способу розглянути скаргу в месенджері, який не читає листування, не існує.
Що сервер знає
Імʼя користувача, яке ви самі вибрали при реєстрації, і токен для сповіщень. Адресу черги - 64 випадкові символи, які нічого про вас не кажуть: вони приїжджають до співрозмовника всередині запрошення, а не рахуються з імені. Поки в App Store живе перша версія застосунку, у акаунта є й друга, стара адреса, яка рахується з імені, - її приберемо разом із тією версією. Час, коли конверт прийшов і коли його забрали. Розмір конверта. IP, з якого ви прийшли, - як і будь-який сервер в інтернеті.
Ще на сервері лежать: зашифрована копія акаунта, відкриті ключі для знайомства, конверти запрошень, зашифровані вкладення (разом із тим, хто їх поклав), час відкладеного надсилання, лічильник невдалих спроб відновлення, хеш імені видаленого акаунта - ім'я стоїть зайнятим 30 днів, щоб його не перехопили одразу, - і ключ підтвердження застосунку (App Attest): за ним сервер відрізняє справжню «Тишу» від підробленої збірки. Цей ключ привʼязаний до телефона, а не до акаунта, і забувається після пів року мовчання. Перелік повний: якщо в ньому чогось бракує, це помилка сторінки, і ми її виправимо.
Хто кому пише, сервер знає. Імʼя відправника в конверті не пишеться, воно всередині шифротексту, - але надсилання йде вашим токеном, тож сервер бачить, з якого акаунта пішов конверт і в яку чергу. Щоб не дати розсилати спам, він годину тримає перелік черг, на які писав акаунт, і потім стирає. І ще: перший конверт кожної розмови несе відкритий ключ відправника, тож поки такий конверт лежить непрочитаним, із бази видно, від кого він. Signal ховає відправника механізмом Sealed Sender; у «Тиші» його поки немає, і він у плані. Доти межа проходить тут, а не там, де приємніше.
Про дзвінок сервер знає, що він був і скільки тривав: поки дзвінок іде, телефон раз на кілька секунд питає сервер, чи не поклали трубку. І ще: щоб розбудити телефон гудком, потрібне окреме сповіщення. Це вимикається в налаштуваннях - тоді дзвінок дійде лише поки застосунок відкритий.
Звук і відео за замовчуванням ідуть через наш ретранслятор - щоб співрозмовник не бачив вашої IP-адреси. Ціна названа прямо: ретранслятор сам бачить IP-адреси учасників розмови, коли вона була й скільки байтів пройшло, - але не звук і не картинку, вони зашифровані на телефонах. У груповому дзвінку так само для кожної пари учасників.
Скільки це живе
Доставлений конверт стирається одразу. Недоставлений - не довше тридцяти днів. Файли - чотирнадцять днів. Запрошення - до пʼятнадцяти хвилин, якщо ви не задали інакше. Скарга - 90 днів. Журналів із вмістом листування не ведеться взагалі. У журналах сервера немає ні IP, ні імен, ні тіл запитів. Виняток - ретранслятор дзвінків: у його журналі лишаються IP-адреси тих, хто розмовляв через нього; журнал обмежений трьома файлами по 10 МБ і сам себе переписує. Про кожну нову реєстрацію нам приходить повідомлення в Telegram - без імені, лише «новий акаунт», загальна кількість і час.
Сповіщення
Apple передає сповіщення, і сервер не може вкласти в нього текст - він його не знає. Тому приходить порожній сигнал, а текст підставляє вже ваш телефон, розшифрувавши повідомлення сам. Скільки показувати в банері - ваш вибір: ім'я з текстом, лише ім'я або нічого.
Ціну цього вибору називаємо прямо: щоб підставити текст, окремому помічнику «Тиші» потрібні ключі, поки телефон розблокований - і замок застосунку його не питає. Хто тримає ваш розблокований телефон, прочитає те, що приходить. Не хочете цього - виберіть у сповіщеннях «нічого не показувати».
Які ключі де живуть
Перенесено сюди з головної: там ця таблиця зупиняла читання, а тут вона на своєму місці - поруч із рештою того, що можна перевірити.
Резервні копії
Листування не потрапляє в iCloud і не синхронізується нікуди - і в нашу копію воно теж не входить. Скажемо прямо, бо це найдорожча неточність для месенджера: 12 слів повертають акаунт, а не листування. У копії лежать ваша особистість, співрозмовники, список чатів, групи й налаштування - тобто ви повертаєтеся туди ж, де були, але з порожніми розмовами. Текст лишається тільки на тому телефоні, де його читали.
Саму копію відкрити можете тільки ви: вона зашифрована ключем, виведеним із ваших 12 слів, і цього ключа в нас немає. Втратили телефон - заводите застосунок на новому й вводите ті самі 12 слів. Втратили й слова - копія лишиться назавжди набором байтів, і це не фігура мови.
Сайт
Цей сайт рахує відвідування - щоб ми розуміли, чи доходить до людей те, що ми про «Тишу» розповідаємо. Рахує наша власна статистика на нашому ж сервері: без cookies, без сторонніх сервісів, і браузер не звертається ні до кого, крім tysha.cloud. Ми бачимо, скільки людей зайшло, на які сторінки, звідки прийшли, з якої країни й міста та з якого приладу. IP-адреса не зберігається - з неї лише визначається країна й місто. Якщо в браузері ввімкнено «Не відстежувати», візит не рахується зовсім. Застосунку це не стосується: у ньому аналітики немає.