Necesito ayuda con dos problemas de PGP / GPG:
- Asegurarme de que mi pensamiento sea correcto (es decir, realmente necesito otra subclave GPG para mi escenario)
- Asegurarme de crear la subclave correctamente sin comprometer mis claves actuales (bonificación a cualquier crítica / sugerencia constructiva adicional de los datos expuestos).
GPG SUBKEY SCENARIO
Utilizo mi clave GPG para:
- Encriptar y / o firmar algunas conversaciones de correo electrónico
- firmando mis confirmaciones de Git
Ha habido algo que me ha molestado por un tiempo ahora con respecto al uso de la misma clave para ambos.
Como se señaló en la película de Alan Turing, "The Imitation Game" (2014), los mensajes codificados de Enigma se rompieron solo después de que el espacio de nombres se redujo drásticamente. La máquina que construyó Turing no pudo probar suficientes combinaciones antes de cambiar las cifras. Sin embargo, al reducir drásticamente el espacio de nombres, pudieron descifrar los mensajes.
La forma en que se redujo el espacio de nombres fue mediante la búsqueda de una frase conocida en cada mensaje codificado. De nuevo, refiriéndome a la película de Turing, si recuerdo correctamente, esta frase era "Heil Hitler" firmada al final de cada mensaje alemán.
El cifrado de un mensaje de correo electrónico no me preocupa, ya que los encabezados de correo electrónico típicos no forman parte del mensaje que se está cifrando. Sin embargo, si se observa la estructura interna de un Git commit, siempre contiene "árbol", "autor" y "comentarista". Y, a excepción de un compromiso, también siempre incluye "padre".
Además, podemos asumir que el "autor" y el "comentarista" a menudo serán los mismos. En el siguiente ejemplo "Glen Jarvis". Este es un ejemplo de un mensaje de confirmación firmado que he hecho recientemente (los mensajes de confirmación sin firma tenían la misma estructura que los mensajes de confirmación firmados; solo faltan la clave "gpgsig" y su siguiente valor de varias líneas):
tree 29d37a46658eaeb764b587a105be5eabc2d6a641
parent 45646279562c74461e7237104e9f335ac3054635
author Glen Jarvis <[email protected]> 1500272497 -0700
committer Glen Jarvis <[email protected]> 1500272497 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJZbFd3AAoJEJF24vsEed5ckiEP/26n9kfkwx2i0z+hhlDTytYP
qlFvHRgv4djOQCZkbDiRU5PS3G5dS9LQpVJ/bHrXLKfUPhB/pux64XEv+mTRqrk3
ncgGt0sEWoIaZhHhY5Cyc+2MCoNgDCIxSexP7X5bvxRwO1cGeuJ4AfmcL/Fp+xRz
vFaPINSZJMvXqJBFnnNFltFFSe4HRA+wloTLyk9zpJ7LnOKMHNbkPCxmf2dqBjmL
ZEi9VFM9r0EYmXmZSF1KThCXy2dZDMPhRhe8VwPXQ8jXMSChhwSD+wFT79+xF/Fg
hq2vpD9vkqcYUfucobNzz7T17Fr7ICuZvhGXxOwYk079p9SyPpN9U3VuqayEyV6O
B49J8tcblu1XfrGh151Lhp6Fjr2TbKecnB2q/XgaH7MsaR99xt1UFaKVlMtbTn95
vqTSieyG3IPSjp+17oXev83IHXMvIKCetx5r3D9vUrKd4HVPAzzjfDjSO99Smz2J
2UKHep7da0SOpN/bn/x13CzYW9MCtN0FFAYogIuDu61HnlhOik+WqMm+uCvgmtzm
0BdSEPAn9udvpAkHRcEd3a2JYABvheEjgDhqWLy9iL1Z+wKP9Sz5Mh9xYVI6AA8V
Cs6vyYJqoS5GRGh0UNR26hafpCcIbXZLjXVkxWVzZGYqHpf+adBOiOmrtRF87Fz4
3hgDVlhzTagHBw3HEmWD
=juvL
-----END PGP SIGNATURE-----
Switch to Wheel format
Mi preocupación es que, al usar la misma clave GPG para firmar estos mensajes de confirmación y cifrar / firmar los mensajes de correo electrónico, estoy debilitando mi clave para que mis mensajes de correo electrónico puedan ser descifrados más fácilmente. Mis confirmaciones de Git están disponibles públicamente en GitHub. ¿Mi pensamiento es correcto?
CREANDO SUBKEY
Suponiendo que mi razonamiento anterior es correcto y esto es una preocupación, necesito ayuda para crear la subclave correcta. Puedo cifrar mis mensajes de correo electrónico con F27C
. Y puedo firmar mis mensajes de confirmación con una subclave si puedo crearlos correctamente. Ya entiendo cómo configurar Git para elegir qué subclave usar en la firma.
Aquí hay una lista de mis claves públicas (algunas han caducado claramente, han sido rotadas con el tiempo y están aquí solo como referencia):
$ gpg --list-keys [email protected]
pub rsa2048 2012-05-28 [SCEA]
F27CA351FD010F450D2B1431DBCBDF2F36703FB2
uid [ unknown] Glen Jarvis (glenjarvis.com) <[email protected]>
uid [ unknown] [jpeg image of size 7125]
sub rsa4096 2016-06-05 [S] [expires: 2021-06-04]
pub rsa2048 2012-05-07 [SCEA]
B560A0D698E1E0267AA81F7DACD3887417F3CCD7
pub dsa1024 2008-05-25 [SCA]
8D6D27687BA839C9C88F4FE50B00116142CE11B6
pub dsa1024 2010-04-03 [SC]
63A1BBC8DCC51CA5E7CA1A4889B35CEFA08FF5FD
uid [ unknown] Glen Jarvis <[email protected]>
sub elg1024 2010-04-03 [E]
También está disponible en Keybase
BONIFICACIÓN
Cualquier consejo no solicitado (de los datos expuestos en esta pregunta) también es bienvenido.