CryptoPad на iPhone: первый ключ, контакт и сообщение
Эта инструкция проводит от только что установленного приложения до первого зашифрованного сообщения и обратно: вы создадите свой ключ, отдадите его открытую часть собеседнику, добавите открытый ключ собеседника в контакты, зашифруете для него сообщение и расшифруете присланное вам. На всё уходит минут пять.
На снимках — CryptoPad на iOS 27; на более ранних версиях iOS некоторые экраны выглядят немного иначе, но надписи на кнопках те же. Приложение пока на английском, поэтому названия кнопок ниже тоже английские. Внизу три вкладки — Settings, Contacts и Pad; между ними можно переходить и смахиванием влево-вправо. Открывается приложение всегда на Settings.

1. Создайте ключ
На вкладке Settings введите имя ключа в поле Key Name — например, My phone. Имя — от 2 до 50 символов: буквы любого алфавита (кириллица тоже подходит), цифры, пробелы, точки, дефисы, подчёркивания, апострофы (как в Мар’яна) и точки посередине строки (·). Всё остальное — @, !, косую черту, эмодзи и так далее — приложение не примет и напишет «Name contains invalid characters».
Под именем выберите тип ключа: RSA (по умолчанию), NIST или X25519. Подойдёт любой — чем они отличаются, рассказано в инструкции о ключах. Надпись на кнопке ниже меняется вслед за выбором (Generate RSA Key, Generate NIST Key или Generate X25519 Key), а последний выбранный тип приложение запоминает.
Нажмите кнопку. Ключ RSA создаётся несколько секунд, два других — сразу. Новый ключ появится в разделе Your Keys.


Ключ не покидает телефон. Приложение копирует только его открытую часть; закрытая хранится в связке ключей (Keychain) этого iPhone, только на нём, и никогда не показывается и не копируется.
2. Отправьте свой открытый ключ
Нажмите Copy Public Key рядом с ключом. На мгновение на кнопке появится Copied. Вставьте ключ в любой мессенджер или письмо тем, кто будет вам писать.

Открытый ключ можно отправлять не таясь: он умеет только запирать сообщения для вас. Это блок текста, который начинается строкой -----BEGIN PUBLIC KEY----- и заканчивается строкой -----END PUBLIC KEY-----; отправляйте его целиком, вместе с этими строками.
3. Добавьте контакт
Попросите собеседника прислать его открытый ключ и скопируйте ключ на телефоне. Откройте Contacts и нажмите + вверху (в пустом списке то же делает Add Contact).
В форме введите имя в Contact Name, нажмите Paste, чтобы вставить ключ в раздел Public Key (PEM), и нажмите Add справа вверху. Для имён контактов действуют те же правила, что и для ключей, и двух контактов с одним именем быть не может. Если что-то не так, форма не закроется и покажет ошибку красным.


Прежде чем полагаться на контакт, убедитесь, что ключ действительно его: сверьте ключ с этим человеком по другому каналу — положив телефоны рядом при встрече или прочитав вслух по телефону длинный кусок из середины ключа. Только не первые и не последние строки: у всех ключей одного типа они похожи. Зачем это нужно, рассказано в инструкции о ключах.
4. Выберите, кому сообщение
Контакт с галочкой — это получатель: тот, для кого будет зашифровано следующее сообщение. Чтобы выбрать контакт, нажмите на его имя. Только что добавленный контакт выбирается сам.


Выбор не сохраняется после закрытия приложения, так что проверяйте его перед шифрованием: на Pad он виден как «Recipient: Alice» (сразу после Encrypt или Decrypt эта строка показывает результат, пока вы не измените текст). Найти контакт по имени поможет поле Search contacts над списком.
5. Зашифруйте сообщение
Откройте Pad и наберите сообщение там, где написано Enter plain/cipher text. Нажмите Encrypt. Строка под кнопками скажет, для кого оно зашифровано, — «Encrypted for Alice», — а шифровка появится в нижнем поле.


Нажмите Copy Output и вставьте результат в любой чат или письмо этому человеку. Это одна длинная строка из букв, цифр и нескольких знаков (+, /, =); отправляйте её целиком, одним сообщением. Открыть её сможет только владелец ключа Alice — после шифрования даже вы не сможете. Один и тот же текст, зашифрованный дважды, даёт разные шифровки — так и должно быть.
Кнопка Encrypt остаётся серой, пока не выбран получатель или на Pad нет текста. Если получатель не выбран, Pad напишет об этом красным: «Select a recipient in Contacts tab to encrypt messages».
6. Расшифруйте присланное сообщение
Скопируйте полученную шифровку. На вкладке Pad нажмите кнопку Paste (она стоит под нижним полем, но вставляет текст в верхнее, заменяя всё, что там было), а затем Decrypt. В нижнем поле появится обычный текст, а строка над ним скажет, каким из ваших ключей открыто сообщение: «Decrypted for My phone».


Выбирать ключ не нужно: CryptoPad пробует все ваши ключи. Кнопка Decrypt остаётся серой, пока у вас нет своего ключа; тогда Pad пишет «Generate a key in Settings tab to decrypt messages». Сообщение, зашифрованное на Android, открывается здесь точно так же. Когда закончите, кнопка Clear очистит оба поля.
7. Поиск и удаление
Наберите текст в поле Search contacts — в списке останутся только контакты, в имени которых он есть. Чтобы удалить контакт или ключ, смахните его строку влево и нажмите Delete. Приложение переспросит: удаление нельзя отменить. Если передумали, коснитесь экрана за пределами вопроса (или нажмите Cancel, если iOS показывает эту кнопку).


Удалённый ключ не вернуть. Зашифрованные для него сообщения больше не откроет никто. Если создадите новый ключ, снова отправьте собеседникам его открытую часть.
8. Если что-то не так
- «Invalid key: expected a PEM public key» (или другое сообщение, начинающееся с «Invalid key» или «Unsupported key»; CryptoPad принимает только ключи RSA, NIST/P-256 и X25519) — в поле ключа вставлен не весь открытый ключ. Попросите прислать его ещё раз и скопируйте целиком, вместе с обеими строками-метками.
- «Decryption failed: no matching key for this message» — сообщение зашифровано не для ваших ключей (например, для удалённого ключа или для кого-то другого), либо его обрезали или изменили по дороге. Спросите отправителя, каким из ваших открытых ключей он пользовался, и попросите прислать сообщение ещё раз, одним куском.
- «Contact with this name already exists» или «Key with this name already exists» — имена должны различаться, заглавные буквы не в счёт. Измените имя и попробуйте снова.


Другие ответы — на странице Поддержка.