Tal vez más o menos.
El paquete pk-encrypted-sk en PGP (consulte rfc4880 5.1 ) normalmente contiene el 64- bit 'long' keyid de la clave del destinatario; esto tiene la intención de ayudar al destinatario a usar la clave de descifrado correcta si tiene más de una, y ayudar al destinatario a identificar qué paquete de etiqueta-1 (si corresponde) es para ellos en un mensaje cifrado para múltiples destinatarios. Puede suprimirse sustituyendo el cero si se desea.
Esto puede ser mostrado por cualquier número de herramientas de análisis / depuración de PGP, incluyendo gpg --list-packets
.
Si se acusa a Bob de cometer un error, no de haber engañado o haber mentido sobre el envío del mensaje, y no usó --hidden-recipient
o similar de GnuPG, probablemente sea suficiente. Si se acusa a Bob de cometer un delito (incluso contributivo), podría ser útil que, cuando se enviara el mensaje (o al menos antes de cualquier disputa) lo firmara, lo hubiera marcado la TSA, o ambas cosas, pero tendría que ser más Específico sobre el caso o rango de posibles casos a ser manejados. (ObSecStack: ¿cuál es tu modelo de amenaza?)
Suponiendo que el blob de la tecla aún esté disponible o se pueda obtener, por ejemplo. desde un servidor de claves, esto casi "prueba" qué clave utilizó Bob. Actualmente es difícil, pero no imposible, generar una clave falsa (segunda preimagen) para un keyid largo. (Es fácil para los keyids 'cortos' de 32 bits que se usan a menudo para la selección o 'verificación' de manual , consulte enlace . ) Es práctico generar colisiones para 64 bits, pero eso requeriría que Alice se confunda a sabiendas en una afirmación falsa; ver más arriba sobre el modelo de amenaza.
Sin embargo, eso no constituye una prueba de que la clave utilizada fue (o aún lo es) de Alice; es muy posible que Bob haya cometido un error. ¿Qué razón o evidencia usó para elegir esa clave para cifrar?
-
Tener una llave con el nombre de Alice NO es una prueba de que sea su clave, son triviales de falsificar.
-
Tener una clave con el nombre de Alice que fue firmada por otras partes confiables es una mejor evidencia, pero no absoluta: con suficiente esfuerzo, alguien podría haberse hecho pasar por Alicia para que se firmara una clave falsa.
-
Incluso si Alice realmente le dio a Bob esta clave, ¿puede probar (1) que lo hizo y (2) después de eso, en todo momento lo mantuvo en el dispositivo o en el almacenamiento que nadie más podría haber manipulado? ?
Nota: similar a ¿Es posible probar qué clave pública se utilizó para cifrar un mensaje? que cubre un rango más amplio que solo PGP.