Импорт закрытых ключей OpenPGP в Proton Mail
- Чтение
- 4 мин.
- Категория
- Шифрование и ключи
Proton Mail позволяет вам импортировать существующие закрытые ключи OpenPGP (или секретные ключи) в свою зашифрованную экосистему. Это позволит вам продолжить использовать эти ключи для подписи и расшифровки ваших электронных писем.
Импортируемые вами ключи должны соответствовать минимальным требованиям Proton к ключам по соображениям безопасности и совместимости.
Если ваш ключ соответствует нашим минимальным требованиям, вы сможете импортировать его напрямую.
Если ваш ключ не соответствует нашим минимальным требованиям, после попытки загрузить его вы увидите экран с ошибкой. На этом экране будет объяснено, почему ключ был отклонен. Мы предоставляем руководства по изменению ключа, чтобы вы могли его импортировать.
Как импортировать свой ключ OpenPGP в Proton Mail
- Войдите в свой аккаунт Proton в веб-приложении Proton Mail
- Нажмите Настройки → Все настройки → Шифрование и ключи → Ключи шифрования эл. почты.
- Выберите адрес электронной почты, связанный с данным ключом, нажмите на выпадающее меню Создать ключ и нажмите Импортировать ключ.

Готово! Теперь вы можете использовать свои закрытые ключи OpenPGP в Proton Mail.
Как изменить свой ключ OpenPGP
Если ваши ключи не соответствуют нашим требованиям, вы не сможете импортировать свои ключи.
Мы рассмотрим самые распространенные сценарии, в которых ваш ключ может быть отклонен, и объясним, как вы можете разрешить эту ситуацию.
Прежде чем начать
Если вам нужно изменить свои закрытые ключи OpenPGP, чтобы загрузить их в Proton Mail, перед началом вам необходимо выполнить два шага:
- Скачайте и настройте GnuPG и импортируйте свои ключи
- Создайте резервную копию своих ключей OpenPGP перед их изменением
Настройте GnuPG и импортируйте свои ключи
В этом руководстве мы используем инструмент GnuPG (GNU Privacy Guard) для изменения закрытых ключей, которые хотим импортировать.
Если у вас не установлен GnuPG, перейдите по ссылке https://gnupg.org/download/(новое окно), чтобы найти приложение для своего устройства.
Если ключ, который вы хотите импортировать в Proton Mail, еще не импортирован в GnuPG, вам нужно сделать это с помощью команды:
gpg --import
Большинство последующих операций выполняются с помощью интерактивных команд на основе
gpg --edit-key
Ознакомьтесь с документацией GnuPG(новое окно).
Важно: создайте резервную копию ключей перед их изменением
Если закрытый ключ, который вы пытаетесь импортировать, используется в других приложениях помимо Proton, обязательно создайте резервную копию этого ключа перед его изменением.
Если вы уже импортировали свой закрытый ключ в GnuPG, вы можете сделать это с помощью команды:
gpg --armor --export-secret-keys > backup-key.asc
Позже вы сможете повторно импортировать исходный ключ с помощью команды:
gpg --import backup-key.asc
Причины, по которым ваш закрытый ключ был отклонен
- У вашего ключа есть срок действия
- У вашего ключа неверные личные данные
- У вашего ключа нет субключа шифрования
- Ваш ключ использует неподдерживаемые алгоритмы
У вашего ключа есть срок действия

Что это значит
Ключи (и субключи) OpenPGP могут иметь срок действия, после которого все совместимые с OpenPGP библиотеки будут отклонять их.
Чтобы вы всегда могли получать электронные письма в Proton Mail с помощью этого ключа OpenPGP, мы требуем, чтобы для всех импортируемых ключей не был задан срок действия.
Если вы попытаетесь импортировать ключ со сроком действия, он будет отклонен.
Как это исправить
- Откройте GnuPG и проверьте, установлен ли для ключа срок действия, выполнив команду:
gpg --list-keys
где «идентификатор пользователя» — это адрес электронной почты, связанный с ключом.
Результат выполнения команды будет выглядеть примерно так:
$ gpg --list-keys key.import.test@example.proton.mesec rsa3072 2022-09-21 [SC] [expires: 2024-09-20] C931E2A00A01EE4604049A4EA9C08446B1B88861uid Import key guide ssb rsa3072 2022-09-21 [E] [expires: 2024-09-20] |
Здесь видно, что и для основного ключа, и для субключа шифрования установлен срок действия 2024-09-20.
Чтобы импортировать ключ в Proton Mail, нам нужно изменить его так, чтобы у него не было срока действия.
2. Чтобы изменить ключ, выполните команду:
gpg --edit-key
GnuPG перейдет в интерактивный режим. Вам потребуется просмотреть каждый субключ и изменить его срок действия. Вы можете выбрать субключи с помощью команды:
key
а затем установите срок его действия на никогда с помощью команды:
expire 0
3. Сохраните с помощью команды:
save
Для ключа в примере выше весь процесс будет выглядеть так:
$ gpg --edit-key key.import.test@example.proton.megpg> key 0gpg> expire 0gpg> key 1gpg> expire 0gpg> save |
4. Проверьте сроки действия своих ключей с помощью команды:
gpg --list-keys
Результат должен быть примерно следующим:
$ gpg --list-keys key.import.test@example.proton.mepub rsa3072 2022-09-21 [SC] C931E2A00A01EE4604049A4EA9C08446B1B88861uid [ultimate] Import key guide sub rsa3072 2022-09-21 [E] |
Как видите, разделы, в которых были указаны сроки действия, теперь пусты.
5. Теперь можно экспортировать ключ из GnuPG с помощью команды:
gpg --armor --export-secret-keys > exported-key.asc
6. Теперь вы можете импортировать только что экспортированный ключ в Proton Mail
У вашего ключа неверные личные данные или несколько личных данных

Что это значит
Ключи OpenPGP могут быть связаны с одними или несколькими личными данными пользователей, которые содержат определенный адрес электронной почты.
В некоторых службах Proton эти личные данные используются для поиска ключа для данного адреса.
Чтобы ваш ключ был связан с нужным адресом и не ассоциировался с неверным, Proton требует, чтобы все импортируемые ключи содержали только один ID пользователя, который использует тот же адрес электронной почты, что и у аккаунта Proton, в который импортируется ключ.
Если у вас несколько адресов Proton Mail, убедитесь, что вы импортируете правильный ключ для нужного адреса.

Эта ошибка также может возникнуть, если с адресом связано несколько личных данных пользователей (одни из которых могут быть связаны с адресом Proton Mail, в который вы импортируете ключ). В этом случае Proton требует удалить остальные личные данные, так как Proton не может подтвердить, что ключ был создан владельцем адреса, если это внешний адрес (не принадлежащий Proton Mail).
Как это исправить
- Откройте GnuPG и проверьте, какие личные данные связаны с вашим ключом. Вы можете выбрать свой ключ по цифровому отпечатку, который можно найти в диалоговом окне импорта. Для этого выполните команду:
gpg --list-keys
Результат будет выглядеть примерно так:
$ gpg --list-keys 5980f1c63aeb7534f36c3c669b838c4a93779a09pub rsa3072 2022-10-11 [SC] 5980F1C63AEB7534F36C3C669B838C4A93779A09uid [ultimate] Some identity sub rsa3072 2022-10-11 [E] |
Здесь мы видим, что ключ содержит личные данные пользователя, связанные с адресом электронной почты, который не обслуживается Proton.
2. Измените ключ, выполнив команду:
gpg --edit-key
Затем создайте новые личные данные пользователя с помощью команды:
adduid
Укажите имя и адрес электронной почты (это должен быть адрес Proton Mail, для которого вы импортируете ключ).
Теперь ваш ключ, скорее всего, содержит несколько личных данных. Чтобы продолжить, вы должны удалить те из них, которые не связаны с вашим адресом Proton Mail.
3. Выберите другие личные данные пользователя, которые вы хотите удалить, с помощью команды:
uid
Удалите их с помощью команды:
deluid
4. Сохраните изменения с помощью команды:
save
Для ключа в примере выше весь процесс будет выглядеть так:
$ gpg --edit-key 5980f1c63aeb7534f36c3c669b838c4a93779a09...gpg> adduidReal name: Import testEmail address: key.import.test@example.proton.meComment:...Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? Osec rsa3072/9B838C4A93779A09 created: 2022-10-11 expires: never usage: SC trust: ultimate validity: ultimatessb rsa3072/07FE974BC493DC08 created: 2022-10-11 expires: never usage: E [ultimate] (1) Some identity [ unknown] (2). Import test gpg> uid 1...gpg> deluidReally remove this user ID? (y/N) y...gpg> save |
5. Проверьте личные данные пользователей для ваших ключей с помощью команды:
gpg --list-keys
Результат должен быть примерно следующим:
$gpg --list-keys 5980f1c63aeb7534f36c3c669b838c4a93779a09...pub rsa3072 2022-10-11 [SC] 5980F1C63AEB7534F36C3C669B838C4A93779A09uid [ultimate] Import test sub rsa3072 2022-10-11 [E] |
Как видите, ключ теперь связан только с одними личными данными пользователя, и эти личные данные привязаны к одному адресу Proton Mail.
6. Экспортируйте ключ из GnuPG с помощью команды:
gpg --armor --export-secret-keys > exported-key.asc
7. Теперь вы можете импортировать только что экспортированный ключ в Proton Mail
У вашего ключа нет подключа шифрования

Что это значит
Чтобы пользователи Proton Mail могли получать зашифрованные письма, службы Proton ожидают, что каждый ключ адреса поддерживает шифрование данных. Вот почему мы требуем, чтобы импортируемые ключи содержали как минимум один подключ, способный выполнять шифрование (некоторые подключи могут использоваться только для подписей).
Как это исправить
- Откройте GnuPG и проверьте подключи ключа, который вы пытаетесь импортировать, выполнив команду:
gpg --list-keys
Результат должен быть примерно следующим:
$ gpg --list-keys key.import.test@example.proton.mepub rsa3072 2022-09-21 [SC] C931E2A00A01EE4604049A4EA9C08446B1B88861uid [ultimate] Import key guide |
В этом примере у ключа есть только один подключ с функциями подписи и сертификации (помечен как [SC]). Подключа с функциями шифрования (который был бы помечен как [E]) нет.
2. Выберите ключ для изменения с помощью команды:
gpg --edit-key
Добавьте новый подключ с помощью команды:
addkey
Выберите алгоритм шифрования. Proton поддерживает только RSA (только для шифрования) или ECC (только для шифрования).
Выберите размер для подключей RSA. Proton требует, чтобы он составлял не менее 2048 бит.
Выберите срок действия. Proton требует, чтобы это значение было равно 0 (без ограничения срока действия).
3. Подтвердите новый подключ, а затем сохраните изменения с помощью команды:
save
Вся запись должна выглядеть примерно так:
$ gpg --edit-key key.import.test@example.proton.megpg> addkeyPlease select what kind of key you want: (3) DSA (sign only) (4) RSA (sign only) (5) Elgamal (encrypt only) (6) RSA (encrypt only) (14) Existing key from cardYour selection? 6RSA keys may be between 1024 and 4096 bits long.What keysize do you want? (3072)Requested keysize is 3072 bitsPlease specify how long the key should be valid. 0 = key does not expire = key expires in n days w = key expires in n weeks m = key expires in n months y = key expires in n yearsKey is valid for? (0) 0Key does not expire at allIs this correct? (y/N) yReally create? (y/N) ygpg> save |
4. Проверьте личные данные пользователей ваших ключей с помощью команды:
gpg --list-keys
gpg --list-keys key.import.test@example.proton.mepub rsa3072 2022-09-21 [SC] C931E2A00A01EE4604049A4EA9C08446B1B88861uid [ultimate] Import key guide sub rsa3072 2022-10-11 [E] |
Как видите, теперь у ключа есть подключ с возможностью шифрования.
5. Экспортируйте ключ из GnuPG с помощью команды:
gpg --armor --export-secret-keys > exported-key.asc
6. Теперь вы можете импортировать только что экспортированный ключ в Proton Mail
Ваш ключ использует неподдерживаемые алгоритмы

Что это значит
Ключи OpenPGP могут поддерживать множество различных криптографических алгоритмов, некоторые из которых Proton не считает достаточно безопасными для защиты ваших электронных писем.
Proton будет отклонять ключи, использующие слабые или устаревшие алгоритмы, чтобы избежать снижения уровня безопасности других пользователей и гарантировать, что пользователи Proton Mail смогут расшифровать полученные сообщения.
Следующие асимметричные алгоритмы не поддерживаются Proton:
- RSA с ключами размером менее 2048 бит
- ElGamal
- Ключи ECC с кривыми, отличными от x25519 и NIST P-256, P-384 или P-521
- DSA
Мы также требуем, чтобы импортированные ключи сигнализировали о поддержке AES-256 в качестве симметричного шифра, SHA-256 в качестве хеш-функции и ZLIB в качестве функции сжатия.
Как это исправить
- Проверьте, какие алгоритмы используются для каждого ключа, с помощью
gpg --list-keys
Вывод будет выглядеть примерно так:
$ gpg --list-keys key.import.test@example.proton.mesec dsa2048 2022-09-21 [SC] [expires: 2024-09-20] C931E2A00A01EE4604049A4EA9C08446B1B88861uid Import key guide ssb elg2048 2022-09-21 [E] [expires: 2024-09-20] |
Здесь основной ключ (помеченный функцией SC(новое окно)) является ключом DSA, а подключ шифрования — ключом ElGamal.
Если ваш основной ключ (тот, который обладает функцией сертификации) использует устаревший или слабый алгоритм, вы не сможете импортировать этот ключ.
2a. Вы можете сгенерировать новый ключ прямо в настройках аккаунта веб-приложения Proton Mail или с помощью GnuPG, используя команду:
gpg --generate-key
2b. Если ваш основной ключ использует поддерживаемый алгоритм, но один из подключей использует устаревший или слабый алгоритм, вы можете удалить этот подключ (и при необходимости сгенерировать новые) с помощью команды:
gpg --edit-key
Выберите подключ, использующий неподдерживаемый алгоритм, с помощью команды:
key
где n — это индекс подключа (как показано в запросе)
Затем удалите его с помощью команды:
delkey
Если у вас больше нет подключа шифрования, вы можете сгенерировать новый с помощью команды:
addkey
3. Подтвердите изменения с помощью команды:
save
Вся запись должна выглядеть примерно так:
$ gpg --edit-key test@gpg.example.proton.me...sec rsa3072/BC93CFA50EFCDAF0 created: 2022-11-04 expires: never usage: SC trust: ultimate validity: ultimatessb elg2048/CEB2A2B7DB363D99 created: 2022-11-04 expires: never usage: E[ultimate] (1). teststes gpg> key 1gpg> delkey...gpg> addkey...sec rsa3072/BC93CFA50EFCDAF0 created: 2022-11-04 expires: never usage: SC trust: ultimate validity: ultimatessb rsa2048/E910A70D5E1E5FC8 created: 2022-11-04 expires: never usage: E [ultimate] (1). teststes gpg> save |
4. Экспортируйте ключ из GnuPG с помощью команды:
gpg --armor --export-secret-keys > exported-key.asc
5. Теперь вы можете импортировать только что экспортированный ключ в Proton Mail