Página de inicio de Proton

Importar claves privadas de OpenPGP en Proton Mail

Lectura
13 min
Categoría
Cifrado y claves

Proton Mail te permite importar tus claves privadas (o claves secretas) de OpenPGP existentes a su ecosistema cifrado. Esto te permitirá seguir utilizando esas claves para firmar y descifrar tus correos electrónicos.

Las claves que importes deben cumplir con los requisitos mínimos de claves de Proton por motivos de seguridad y compatibilidad.

Si tu clave cumple con nuestros requisitos mínimos, deberías poder importarla directamente.
Si tu clave no cumple con nuestros requisitos mínimos, verás una pantalla de error después de intentar cargarla. Esta pantalla de error explicará por qué se rechazó la clave. Proporcionamos guías para modificar tu clave para que puedas importarla.

  1. Cómo importar tu clave OpenPGP en Proton Mail
  2. Cómo modificar tu clave OpenPGP

Cómo importar tu clave OpenPGP en Proton Mail

  1. Inicia sesión en tu cuenta de Proton en la aplicación web de Proton Mail
  2. Haz clic en Configuración → Todos los ajustes → Cifrado y clavesClaves de cifrado del correo electrónico.
  3. Selecciona la dirección de correo electrónico asociada a la clave en cuestión, haz clic en el menú desplegable que dice Generar clave y haz clic en Importar clave.

¡Listo! Ahora puedes usar tus claves privadas de OpenPGP en Proton Mail.

Cómo modificar tu clave OpenPGP

Si tus claves no cumplen con nuestros requisitos, no podrás importarlas.

Explicaremos los escenarios más comunes en los que tu clave puede ser rechazada y cómo puedes resolver la situación.

Antes de empezar

Si necesitas modificar tus claves privadas de OpenPGP para cargarlas en Proton Mail, hay dos pasos que debes seguir antes de empezar:

  1. Descarga y configura GnuPG e importa tus claves
  2. Haz una copia de seguridad de tus claves de OpenPGP antes de modificarlas

Configurar GnuPG e importar tus claves

Utilizamos la herramienta GnuPG (GNU Privacy Guard) a lo largo de esta guía para modificar las claves privadas que queremos importar.
Si no tienes GnuPG instalado, ve a https://gnupg.org/download/(ventana nueva) para buscar la aplicación para tu dispositivo.

Si la clave que quieres importar a Proton Mail no se ha importado a GnuPG, debes hacerlo con el comando:

gpg --import 

La mayoría de las siguientes operaciones dependerán de comandos interactivos basados en

gpg --edit-key

Lee la documentación de GnuPG(ventana nueva).

Importante: haz una copia de seguridad de las claves antes de modificarlas

Si la clave privada que estás intentando importar se usa para otras aplicaciones además de Proton, asegúrate de crear una copia de seguridad de cualquier clave antes de modificarla.

Si ya has importado tu clave privada a GnuPG, puedes hacerlo con el comando:

gpg --armor --export-secret-keys  > backup-key.asc

Más tarde podrás volver a importar la clave original con el comando:

gpg --import backup-key.asc

Razones por las que se rechazó tu clave privada

  1. Tu clave tiene una fecha de expiración 
  2. Tu clave tiene una identidad incorrecta
  3. Tu clave no tiene subclave de cifrado
  4. Tu clave utiliza algoritmos no admitidos

Tu clave tiene una fecha de expiración

Qué significa esto

Las claves de OpenPGP (y subclaves) pueden tener fechas de expiración, después de las cuales todas las bibliotecas compatibles con OpenPGP las rechazarían.

Para asegurarnos de que siempre puedas recibir tus correos electrónicos en Proton Mail utilizando esta clave OpenPGP, requerimos que todas las claves importadas no tengan una fecha de expiración establecida.

Si intentas importar una clave con una fecha de expiración, será rechazada.

Cómo resolver esto

  1. Abre GnuPG y comprueba que la clave tiene una fecha de expiración establecida ejecutando el comando:
gpg --list-keys 

siendo el “user id” la dirección de correo electrónico asociada a la clave.

El resultado que verás tendrá un aspecto similar a este:

$ gpg --list-keys key.import.test@example.proton.me
sec rsa3072 2022-09-21 [SC] [expires: 2024-09-20]
C931E2A00A01EE4604049A4EA9C08446B1B88861
uid Import key guide
ssb rsa3072 2022-09-21 [E] [expires: 2024-09-20]

Aquí podemos ver que tanto la clave principal como la subclave de cifrado tienen una fecha de expiración establecida para el 2024-09-20.
Para importarla a Proton Mail, necesitamos editar la clave para que no tenga fecha de expiración.

2. Para editar la clave, ejecuta el comando:

gpg --edit-key 

GnuPG entrará en un modo interactivo. Debes revisar cada subclave y editar su fecha de expiración. Puedes seleccionar subclaves usando el comando:

key 

y luego establece su fecha de expiración en nunca usando el comando:

expire 0

3. Guarda usando el comando:

save

Para la clave del ejemplo anterior, el registro completo se verá así:

$ gpg --edit-key key.import.test@example.proton.megpg> key 0gpg> expire 0gpg> key 1gpg> expire 0gpg> save

4. Comprueba las fechas de expiración de tus claves usando el comando:

gpg --list-keys 

El resultado que verás debería ser algo parecido a esto:

$ gpg --list-keys key.import.test@example.proton.me
pub rsa3072 2022-09-21 [SC]
C931E2A00A01EE4604049A4EA9C08446B1B88861
uid [ultimate] Import key guide
sub rsa3072 2022-09-21 [E]

Como puedes ver, las secciones donde aparecían las fechas de expiración ahora están en blanco.

5. Ahora podemos exportar la clave de GnuPG usando el comando:

gpg --armor --export-secret-keys  > exported-key.asc

6. Ahora puedes importar la clave recién exportada a Proton Mail

Tu clave tiene una identidad incorrecta o múltiples identidades

Qué significa esto

Las claves OpenPGP se pueden asociar con una o más identidades de usuario que tengan una dirección de correo electrónico específica.
En algunos servicios de Proton, esta identidad se usa para buscar una clave para una dirección determinada.
Para asegurarte de que tu clave esté asociada con la dirección deseada y evitar que se asocie con una dirección incorrecta, Proton requiere que todas las claves importadas contengan una única ID de usuario que utilice la misma dirección de correo electrónico que la cuenta de Proton a la que se está importando la clave.

Si tienes varias direcciones de Proton Mail, asegúrate de importar la clave correcta en la dirección adecuada.

Este error también puede ocurrir si la dirección tiene múltiples identidades de usuario (una de las cuales podría estar asociada con la dirección de Proton Mail a la que estás importando la clave). En este escenario, Proton requiere que se eliminen las otras identidades, ya que Proton no puede confirmar que una clave haya sido creada por el propietario de una dirección si se trata de una dirección externa (una dirección que no es de Proton Mail).

Cómo resolver esto

  1. Abre GnuPG y comprueba qué identidades están asociadas a tu clave. Puedes seleccionar tu clave usando la huella digital, que encontrarás en el diálogo de importación. Puedes acceder a esto ejecutando el comando:
gpg --list-keys 

La salida que verás será algo parecido a esto:

$ gpg --list-keys 5980f1c63aeb7534f36c3c669b838c4a93779a09
pub rsa3072 2022-10-11 [SC]
5980F1C63AEB7534F36C3C669B838C4A93779A09
uid [ultimate] Some identity
sub rsa3072 2022-10-11 [E]

Aquí podemos ver que la clave tiene una identidad de usuario asociada a una dirección de correo electrónico que no está gestionada por Proton.

2. Edita la clave ejecutando el comando:

gpg --edit-key 

A continuación, crea una nueva identidad de usuario con el comando:

adduid

Especifica el nombre y la dirección de correo electrónico (la dirección de correo electrónico debe ser la dirección de Proton Mail a la que estás importando la clave).

Ahora es probable que tu clave tenga múltiples identidades. Para continuar, debes eliminar las que no estén asociadas con tu dirección de Proton Mail.

3. Selecciona las otras identidades de usuario que quieres eliminar con el comando:

uid 

Elimínalas con el comando:

deluid

4. Guarda los cambios con el comando:

save

Para la clave del ejemplo anterior, el registro completo se verá así:

$ gpg --edit-key 5980f1c63aeb7534f36c3c669b838c4a93779a09...
gpg> adduid
Real name: Import test
Email address: key.import.test@example.proton.me
Comment:...
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O

sec rsa3072/9B838C4A93779A09
created: 2022-10-11 expires: never usage: SC
trust: ultimate validity: ultimate
ssb rsa3072/07FE974BC493DC08
created: 2022-10-11 expires: never usage: E
[ultimate] (1) Some identity
[ unknown] (2). Import test
gpg> uid 1
...
gpg> deluid
Really remove this user ID? (y/N) y
...
gpg> save

5. Comprueba las identidades de usuario de tus claves con el comando:

gpg --list-keys 

El resultado que verás debería ser algo parecido a esto:

$gpg --list-keys 5980f1c63aeb7534f36c3c669b838c4a93779a09
...
pub rsa3072 2022-10-11 [SC]
5980F1C63AEB7534F36C3C669B838C4A93779A09
uid [ultimate] Import test
sub rsa3072 2022-10-11 [E]

Como puedes ver, la clave solo tiene una única identidad de usuario asociada, y esa identidad está vinculada a una única dirección de Proton Mail.

6. Exporta la clave de GnuPG con el comando:

gpg --armor --export-secret-keys  > exported-key.asc

7. Ahora puedes importar la clave recién exportada a Proton Mail

Tu clave no tiene ninguna subclave de cifrado

Qué significa esto

Para garantizar que los usuarios de Proton Mail puedan recibir correos electrónicos cifrados, los servicios de Proton esperan que la clave de cada dirección sea capaz de cifrar datos. Por eso requerimos que las claves importadas contengan al menos una subclave que pueda realizar el cifrado (algunas subclaves solo se pueden usar para firmas).

Cómo resolver esto

  1. Abre GnuPG y comprueba las subclaves de la clave que estás intentando importar ejecutando el comando:
gpg --list-keys 

El resultado que verás debería ser algo parecido a esto:

$ gpg --list-keys key.import.test@example.proton.me
pub rsa3072 2022-09-21 [SC]
C931E2A00A01EE4604049A4EA9C08446B1B88861
uid [ultimate] Import key guide

En este ejemplo, la clave solo tiene una subclave, que tiene funciones de firma y certificación (marcada como [SC]). No hay ninguna subclave que tenga funciones de cifrado (que estaría marcada como [E]).

2. Selecciona la clave que deseas editar con el comando:

gpg --edit-key 

Añade una nueva subclave con el comando:

addkey

Selecciona un algoritmo de cifrado. Proton solo admite RSA (solo cifrar) o ECC (solo cifrar).

Para las subclaves RSA, selecciona un tamaño. Proton requiere que sea de al menos 2048 bits.

Selecciona una fecha de expiración. Proton requiere que sea 0 (sin fecha de expiración).

3. Confirma la nueva subclave y luego guarda los cambios con el comando:

save

La transcripción completa debería verse más o menos así:

$ gpg --edit-key key.import.test@example.proton.me
gpg> addkey
Por favor, selecciona el tipo de clave que quieres:
(3) DSA (solo firmar)
(4) RSA (solo firmar)
(5) Elgamal (solo cifrar)
(6) RSA (solo cifrar)
(14) Clave existente de la tarjeta
¿Tu selección? 6
Las claves RSA pueden tener entre 1024 y 4096 bits de longitud.
¿Qué tamaño de clave quieres? (3072)
El tamaño de clave solicitado es de 3072 bits
Por favor, especifica el período de validez de la clave.
0 = la clave no expira
= la clave expira en n días
w = la clave expira en n semanas
m = la clave expira en n meses
y = la clave expira en n años
¿Validez de la clave? (0) 0
La clave no expira nunca
¿Es correcto? (s/N) s
¿Crear realmente? (s/N) s
gpg> save

4. Comprueba las identidades de usuario de tus claves con el comando:

gpg --list-keys 
gpg --list-keys key.import.test@example.proton.me
pub rsa3072 2022-09-21 [SC]
C931E2A00A01EE4604049A4EA9C08446B1B88861
uid [absoluta] Guía de importación de clave
sub rsa3072 2022-10-11 [E]

Como puedes ver, la clave ahora tiene una subclave con capacidad de cifrado.

5. Exporta la clave de GnuPG con el comando:

gpg --armor --export-secret-keys  > exported-key.asc

6. Ahora puedes importar la clave recién exportada a Proton Mail

Tu clave utiliza algoritmos no admitidos

Qué significa esto

Las claves OpenPGP pueden admitir muchos algoritmos criptográficos diferentes, algunos de los cuales Proton no considera lo suficientemente seguros para proteger tus correos electrónicos.

Proton rechazará las claves que utilicen algoritmos débiles o desactualizados para evitar pasar la seguridad de otros usuarios a un nivel inferior y garantizar que los usuarios de Proton Mail puedan descifrar los mensajes recibidos.

Los siguientes algoritmos asimétricos no son compatibles con Proton:

  • RSA con claves de menos de 2048 bits
  • ElGamal
  • Claves ECC con curvas que no sean x25519 ni P-256, P-384 o P-521 de NIST
  • DSA

También requerimos que las claves importadas indiquen que son compatibles con AES-256 como cifrado simétrico, SHA-256 como función hash y ZLIB como función de compresión.

Cómo resolverlo

  1. Comprueba qué algoritmos utiliza cada clave con
gpg --list-keys 

Mostrará un resultado similar a este:

$ gpg --list-keys key.import.test@example.proton.me
sec dsa2048 2022-09-21 [SC] [caduca: 2024-09-20]
C931E2A00A01EE4604049A4EA9C08446B1B88861
uid Guía de importación de clave
ssb elg2048 2022-09-21 [E] [caduca: 2024-09-20]

Aquí, la clave principal (marcada con la capacidad SC(ventana nueva)) es una clave DSA, y la subclave de cifrado es una clave ElGamal.

Si tu clave principal (la que tiene la capacidad de certificación) utiliza un algoritmo desactualizado o débil, no podrás importar la clave.

2a. Puedes generar una nueva clave directamente en los ajustes de cuenta de la aplicación web de Proton Mail o utilizando GnuPG con el comando:

gpg --generate-key

2b. Si tu clave principal utiliza un algoritmo admitido pero una de las subclaves utiliza un algoritmo desactualizado o débil, puedes eliminar esta subclave (y generar nuevas si es necesario) con el comando:

gpg --edit-key 

Selecciona la subclave que utiliza un algoritmo no admitido con el comando:

key 

donde n es el índice de la subclave (como se muestra en el indicador)

Luego elimínala con el comando:

delkey

Si ya no tienes una subclave de cifrado, puedes generar una nueva con el comando:

addkey

3. Confirma los cambios con el comando:

save

La transcripción completa debería verse más o menos así:

$ gpg --edit-key test@gpg.example.proton.me
...
sec rsa3072/BC93CFA50EFCDAF0
creada: 2022-11-04 caduca: nunca uso: SC
confianza: absoluta validez: absoluta
ssb elg2048/CEB2A2B7DB363D99
creada: 2022-11-04 caduca: nunca uso: E
[absoluta] (1). teststes
gpg> key 1
gpg> delkey
...
gpg> addkey
...
sec rsa3072/BC93CFA50EFCDAF0
creada: 2022-11-04 caduca: nunca uso: SC
confianza: absoluta validez: absoluta
ssb rsa2048/E910A70D5E1E5FC8
creada: 2022-11-04 caduca: nunca uso: E
[absoluta] (1). teststes
gpg> save



4. Exporta la clave de GnuPG con el comando:

gpg --armor --export-secret-keys  > exported-key.asc

5. Ahora puedes importar la clave recién exportada a Proton Mail