# SMTP від провайдера DeltaChat в Thunderbird Сабж такий, що я довго не можу знайти заміни Gmail: то потрібен номер телефону, то інша скринька, то апрув. Мені це набридло і я згадав про безкоштовні сервери SMTP від DeltaChat. Чим вони зручні - що видають "одноразові" хешовані адреси email, які легко змінити у разі виявлення спамерами. В своїй конфігурації, отримувачів (Android) я погнав на відповідний додаток. А сам віднедавна (на десктоп) перебрався на Thunderbird. Тому уявімо, що вони там варяться самі по собі і шлють шифровані листи з коробки через юзер-френдлі Autocrypt, а ви - їх читаєте на пташці. Поки опишу спосіб, де я реєструю собі акаунт через DeltaChat (Tauri) і потім створюю для нього обліковий запис в Thunderbird, використовуючи умовний логін `abcde123@nine.testrun.org` і пароль, які в DeltaChat можна побачити з меню "Advanced" > "Password and Account". Сервери в Thunderbird (148.0) налаштуються автоматично, тому на їх параметрах не акцентую уваги. ## Приватний ключ відправника Оскільки сервери SMTP в DeltaChat належать будь-кому, але не юридично обмеженому Google, не шифровану пошту може читати будь хто з адмінів обраного поштового сервера. Тому в такому "дикому" форматі, я користуватимусь виключно end-to-end шифруванням OpenPGP, що раджу і вам. * В DeltaChat експортуємо два файли свого приватного і публічного ключів у форматі `.asc` через "Advanced" > "Export Secret Keys" * В Thunderbird імпортуємо саме приватний ключ в "Key Manager" (публічний ключ не потрібен, хоча він й експортується разом з приватним) ## Публічні ключі отримувачів Після того, як імпортували свій приватний ключ, в Thunderbird вже можна буде читати розшифровані повідомлення від отримувачів, але для відправлення відповідей - потрібно знати їх публічний ключ. Проблема в тому, що DeltaChat не надсилає ключ отримувача в кожному листі, можливо це якась "оптимізація" чатингу, не знаю. Меню дельтачат - це пекло, мені не вийшло просто дістати публічний ключ у файл, бачу тільки QR та інший клікбейтний мотлох властивий смартфонщикам. Тому видер ці дані запитом з експортованої БД ("Chats and Media" > "Export backup") ``` bash sqlite3 '/path/to/abcde123@nine.testrun.org/dc_database_backup.sqlite' "SELECT hex(public_key) FROM public_keys WHERE id=1;" | xxd -r -p > contact.pgp ``` * `abcde123@nine.testrun.org` - це ваш обліковий запис на сервері `nine.testrun.org` (або іншому) * `id=1` - обираємо потрібний, або просто експортуємо усі * `contact.pgp` - експортований бінарний ключ, його потрібно додати в Thunderbird (Import Public Key from File) Якщо все зроблено правильно, то отримані листи матимуть такий індикатор: => using-encrypted-deltachat-smtp-in-thunderbird/openpgp-encrypted-indicator.png Індикація для отриманих листів (скріншот) А при створенні, бути відміченим без помилок безпеки відповідне меню OpenPGP та його сутності: => using-encrypted-deltachat-smtp-in-thunderbird/write-encrypted-indicator.png Індикатор увімкненого шифрування OpenPGP (скріншот) => using-encrypted-deltachat-smtp-in-thunderbird/write-encrypted-entries.png Перелік зашифрованих сутностей листа (скріншот) ## Специфіка листування Сервер SMTP від екосистеми DeltaChat має свої відмінності, які варто враховувати: * Користувачі DeltaChat будуть відправляти на ваш клієнт Thunderbird "порожні" листи з подіями, типу emoji, оновлення статусу на читання, тощо. Я поки не знайшов для себе вирішення цієї проблеми окрім як попередити відправника, що я не бачу його "райдужних мультяшок"; * Більшість (якщо не всі) сервери DC відхиляють повідомлення без наскрізного шифрування. Тому ваш реципієнт повинен бути або юзером клієнта DeltaChat або гіком, хто налаштував свій поштовий клієнт для шифрування засобами OpenPGP; * Стандартно, Thunderbird не застосовує шифрування до нових листів і потрібно кожного разу вмикати OpenPGP кнопкою. Якщо забути це зробити, то лист надішлеться не шифрованим (і ймовірно буде відхилений сервером) тому з метою запобігання як мінімум перехоплення даних, варто окремо увімкнути шифрування для нових листів в меню конкретного облікового запису: _End-To-End Encryption_ > _Default settings for sending messages_ > _Enable encryption for new messages_: => using-encrypted-deltachat-smtp-in-thunderbird/enable-encryption-for-new-mails.png Налаштування автоматичного шифрування для нових листів (скріншот)