FOLD
Технологии · Стандарты

Стандарты соблюдены.Пробелы названы.

Каждый протокол, на котором работает FOLD, определён в RFC. На этой странице перечислены те, по которым оценивают почтовый клиент, и для каждого сказано, что код делает сегодня: реализовано, реализовано частично, пока нет или сознательно не реализовано, и почему.

Сверено с кодом 2026-09-23

Реализовано
58
Реализовано и используется.
Частично
8
Часть работает; в примечании сказано, какая.
Пока нет
10
Пока не реализовано.
Сознательно нет
6
Сознательно не реализовано; причина указана в примечании.

Формат письма

Как письмо составляется, читается и отображается.

RFCСтандартСтатусВ FOLD
RFC 5322Internet Message FormatРеализованоСтрого при записи; при чтении допускаются одиночные переводы строки (LF), 8-битные заголовки и варианты формата даты.
RFC 2045-2049MIMEРеализованоFOLD загружает письмо целиком и строит дерево MIME на устройстве.
RFC 2047MIME Encoded-WordsРеализованоТекст вне ASCII в заголовках, декодирование и кодирование.
RFC 2231MIME Parameter Value and Encoded Word ExtensionsЧастичноДлинные имена файлов и имена вне ASCII читаются; при отправке FOLD пока не записывает их в этой форме.
RFC 2183Content-DispositionРеализованоВстроенное содержимое или вложение, а также имя файла.
RFC 2387multipart/relatedРеализованоПисьма со встроенными изображениями, чтение и запись.
RFC 2392Content-ID and Message-ID URLsРеализованоСсылки cid: на встроенные изображения разрешаются внутри письма.
RFC 6532Internationalized Email HeadersРеализованоЗаголовки в UTF-8 читаются всегда; FOLD записывает их только для международных адресов и только если сервер предлагает SMTPUTF8 или UTF8=ACCEPT.с 2026-09-21
RFC 3676The Text/Plain Format and DelSp ParametersПока нетТекст format=flowed пока не переформатируется, и FOLD его не отправляет.
RFC 2369List Commands in Header FieldsРеализованоList-Unsubscribe как действие: FOLD сам отправляет письмо с запросом, веб-ссылки открываются в браузере.
RFC 2919List-IdРеализованоРаспознаёт списки рассылки, чтобы типичные для них нарушения подписи не показывались как подделка.
RFC 8058One-Click UnsubscribeПока нетЗаголовок распознаётся, но FOLD не отправляет запрос отписки в один клик; отписка идёт по почте или через веб-страницу.
RFC 8098Message Disposition NotificationЧастичноПри отправке FOLD может запросить уведомление о прочтении, но сам намеренно никогда его не отправляет.

Чтение и синхронизация (IMAP)

FOLD спрашивает сервер, что тот поддерживает, и ещё раз после входа, а каждое расширение включает, только если сервер его объявляет; иначе используется более простой способ.

RFCСтандартСтатусВ FOLD
RFC 3501IMAP4rev1РеализованоБазовый уровень, который поддерживает любой сервер, включая STARTTLS без отката на открытый текст.
RFC 9051IMAP4rev2Сознательно нетРаспознаётся, но не включается: ни один сервер из целевой группы его не требует; вместо него FOLD использует расширения rev1.
RFC 2177IDLEРеализованоFOLD держит IDLE на папке «Входящие» каждой учётной записи и обновляет его каждые 25 минут; остальные папки опрашиваются, на iPhone и iPad только пока приложение открыто.
RFC 4315UIDPLUSРеализованоUID EXPUNGE, чтобы FOLD удалял только собственные письма.
RFC 6851MOVEРеализованоС COPY и EXPUNGE как запасным путём; после MOVE FOLD проверяет, что осталось в исходной папке.
RFC 7162CONDSTORE and QRESYNCРеализованоИнкрементальная синхронизация, включая VANISHED (EARLIER).
RFC 5161ENABLEРеализованоРасширение считается включённым, только когда сервер подтвердит это ответом ENABLED.
RFC 6154SPECIAL-USEРеализованоРоли папок берутся из меток сервера, привычные имена служат лишь запасным вариантом, недостающие папки создаются с нужной ролью.
RFC 9208QUOTAРеализованоЗаполненность почтового ящика показывается на Mac.
RFC 7888LITERAL+ and LITERAL-РеализованоМеньше обменов запрос-ответ при загрузке на сервер.
RFC 4959SASL-IRРеализованоВход за один обмен запрос-ответ.
RFC 5530IMAP Response CodesРеализованоНеверный пароль и временно недоступный сервер различаются.
RFC 4731ESEARCHРеализованоКомпактные результаты серверного поиска на iPhone и iPad; серверы без ESEARCH получают классический SEARCH.с 2026-09-21
RFC 5258LIST-EXTENDEDРеализованоПапки и их роли одной командой.с 2026-09-21
RFC 5819LIST-STATUSРеализованоСчётчики папок в том же LIST, без выбора каждой папки.с 2026-09-21
RFC 6855UTF8=ACCEPTРеализованоИмена папок и заголовки в UTF-8; кодировка имён папок переключается в одном месте.с 2026-09-21
RFC 2342NAMESPACEПока нетПоддержка на сервере распознаётся, но сама команда никогда не отправляется.
RFC 2971IDПока нетНекоторые серверы Yahoo требуют ID до входа.
RFC 4978COMPRESS=DEFLATEПока нетОтложено: нужен частичный сброс (partial flush), которого нет во фреймворке Compression от Apple; планируется использовать zlib напрямую.
RFC 8474OBJECTIDПока нетСтабильные идентификаторы, не меняющиеся при переименовании; пока не используются.
RFC 8970PREVIEWПока нетПредпросмотр формируется на устройстве из загруженного письма.
RFC 8508REPLACEПока нетЧерновики сохраняются на устройстве во время написания и выгружаются один раз при закрытии окна письма; более ранняя копия на сервере не заменяется.
RFC 3516BINARYСознательно нетНе нужно: FOLD сам декодирует дерево MIME.
RFC 5256SORT and THREADСознательно нетFOLD строит разговоры локально по References и In-Reply-To, одинаково на любом сервере.
RFC 5465NOTIFYСознательно нетПочти ни один сервер из целевой группы его не предлагает.

Отправка (SMTP)

Как FOLD передаёт письмо вашему серверу.

RFCСтандартСтатусВ FOLD
RFC 5321Simple Mail Transfer ProtocolРеализованоВключая корректное удвоение точек (dot-stuffing).
RFC 6409Message Submission for MailРеализованоВсегда со входом перед отправкой, на порту 587 или 465.
RFC 4954SMTP Service Extension for AuthenticationРеализованоВход с начальным ответом (initial response) и корректное прерывание, если способ входа не сработал.
RFC 1870SIZEРеализованоРазмер объявляется, если сервер называет лимит, а письмо сверх лимита отклоняется до загрузки.
RFC 2920PIPELININGРеализованоОтправитель и получатели группами; DATA только после всех ответов на конверт, так что письмо уходит либо всем получателям, либо никому.с 2026-09-21
RFC 61528BITMIMEРеализованоОбъявляется, если письмо содержит 8-битные данные; без поддержки на сервере FOLD 8-битные данные не отправляет.с 2026-09-21
RFC 6531SMTPUTF8РеализованоМеждународные адреса и заголовки в UTF-8; если сервер этого не поддерживает, FOLD останавливается с понятным сообщением.с 2026-09-21
RFC 3463Enhanced Mail System Status CodesРеализованоОтказы объясняются простыми словами, а не кодом сервера (вместе с RFC 2034).с 2026-09-21
RFC 3461Delivery Status NotificationsПока нетОтчёты о доставке по запросу не реализованы.
RFC 3030CHUNKING (BDAT)Сознательно нетРаспознаётся, но не используется; DATA покрывает все случаи.
RFC 8689REQUIRETLSСознательно нетПочти ни один сервер его пока не поддерживает.

Соединение и вход

Шифрование соединения, способы входа и автоматическая настройка.

RFCСтандартСтатусВ FOLD
RFC 8314Cleartext Considered ObsoleteРеализованоFOLD никогда не подключается без TLS и предпочитает неявный TLS, если DNS предлагает оба варианта.
RFC 3207SMTP over TLS (STARTTLS)РеализованоЕсли сервер не предлагает STARTTLS, FOLD останавливается, а не отправляет открытым текстом.
RFC 7817TLS Server Identity Check for EmailРеализованоЦепочку сертификатов и имя хоста система проверяет по настроенному серверу.
RFC 4422SASLРеализованоОснова для всех перечисленных ниже способов входа.
RFC 7677SCRAM-SHA-256ЧастичноПредпочитается при отправке (SMTP), с проверкой подписи сервера; для входа по IMAP пока используется PLAIN.
RFC 4616PLAINРеализованоТолько внутри TLS, никогда открытым текстом (намеренно строже, чем RFC).
RFC 6749OAuth 2.0РеализованоВход через Google; XOAUTH2 для IMAP и SMTP, способ, который используют крупные провайдеры.
RFC 7636PKCEРеализованоПри каждом входе через OAuth, только S256; в приложении нет клиентского секрета.
RFC 8252OAuth 2.0 for Native AppsРеализованоВход в системном браузере, никогда во встроенном веб-представлении.
RFC 7628OAUTHBEARERПока нетНи один провайдер из целевой группы его не требует; их покрывает XOAUTH2.
RFC 6186SRV Records for Email Submission and AccessРеализованоОдин из источников для автоматической настройки.

Шифрование и подписи

S/MIME и OpenPGP, а также компоненты, на которых они построены.

RFCСтандартСтатусВ FOLD
RFC 5652Cryptographic Message SyntaxРеализованоФормат контейнера S/MIME: на iPhone и iPad собственная реализация, на Mac системная.
RFC 8551S/MIME 4.0ЧастичноПодпись, проверка, шифрование и расшифровка с сертификатами RSA и AES-CBC; AES-GCM, которого требует S/MIME 4.0, пока не поддерживается.
RFC 1847Security Multiparts for MIMEРеализованоОболочка подписанных и зашифрованных писем.
RFC 3565AES in CMSРеализованоAES для шифрования S/MIME.
RFC 5754SHA-2 in CMSРеализованоSHA-256 и более стойкие хеши для подписей S/MIME.
RFC 5280X.509 CertificatesРеализованоПути сертификации проверяет системная оценка доверия; проверки отзыва необязательны.
RFC 9580OpenPGPЧастичноКлючи версии 4 (Ed25519, Curve25519, RSA) с AES-256 и проверкой целостности, протестировано на gpg; ключи версии 6 и шифрование AEAD пока не поддерживаются.
RFC 6637Elliptic Curve Cryptography in OpenPGPРеализованоКлючи шифрования Curve25519, формат, который FOLD создаёт и использует.
RFC 3156MIME Security with OpenPGPРеализованоPGP/MIME для подписанных и зашифрованных писем.
RFC 3394AES Key WrapРеализованоУпаковывает сеансовый ключ для получателей с Curve25519.
RFC 7253OCB Authenticated EncryptionРеализованоСобственная реализация поверх системного AES, проверена по тестовым векторам RFC; используется для чтения писем из GnuPG, зашифрованных в режиме OCB.
RFC 9106Argon2РеализованоВывод ключа в режиме Fortress, проверен по тестовому вектору RFC.
RFC 7693BLAKE2РеализованоВнутри Argon2, собственная реализация, проверена на openssl.
RFC 5869HKDFРеализованоИз CryptoKit, для режима Fortress.

Подлинность отправителя

Как FOLD проверяет, кто на самом деле отправил письмо.

RFCСтандартСтатусВ FOLD
RFC 6376DKIM SignaturesРеализованоПроверяется на устройстве: хеш тела и подпись вычисляются заново.
RFC 8463Ed25519 for DKIMРеализованоПроверено на примере письма из RFC.
RFC 8301DKIM Crypto Algorithm UsageРеализованоКлючи короче 1024 бит и подписи rsa-sha1 отклоняются.
RFC 8601Authentication-ResultsЧастичноДоверие получают только результаты, проставленные под IMAP-именем хоста учётной записи; провайдеры, которые используют другое имя, в том числе Gmail, пока не дают результата.
RFC 7489DMARCЧастичноFOLD использует результат DMARC, записанный вашим сервером, и сам проверяет выравнивание доменов; опубликованная политика запрашивается только перед показом логотипа бренда.
RFC 7208SPFЧастичноДля SPF нужен IP-адрес отправителя; FOLD читает результат, записанный вашим сервером.
BIMIBrand Indicators for Message Identification (Internet-Draft)РеализованоЛоготип только после пройденной проверки DMARC при политике с применением мер и с проверенным сертификатом товарного знака; загружается один раз на письмо и хранится вместе с ним.
RFC 9399Logotypes in X.509 CertificatesРеализованоЛоготип бренда берётся из проверенного сертификата товарного знака.
Методика

Как ведётся эта страница

Статус берётся из правил соответствия FOLD и аудита почтового стека на соответствие RFC. Каждая строка сверяется с исходным кодом, прежде чем появиться здесь, и страница меняется вместе с кодом. Всего код ссылается на 95 различных RFC; на этой странице показаны те, от которых зависит, насколько хорошо почтовый клиент работает с реальными серверами.