¿Está bien firmar una clave PGP sin una reunión de IRL?

23
  

[PGP] puede paralizarse por una analitud excesiva.   - Phil Zimmermann

Preámbulo

Estoy en el proceso de crear mi propia web de confianza . Es decir, quiero que la gente (usuarios de PGP ...) esté, bastante bien, segura de que, al usar mi clave pública de PGP, realmente se están comunicando con el verdadero yo (lo que se puede lograr al verificar quién firmó). Mi clave pública, y si parecen ser confiables, yo también podría serlo.

Cuando mi clave [pública] tendrá suficientes firmas de confianza, mis propias firmas en las claves de otras personas tendrán mucho más sentido. Ejemplo de mal ejemplo: firmo la clave de Mallory (un mal tipo), y un año más tarde, mi clave está firmada por, digamos, un mantenedor de Debian (un tipo muy confiable). Si se confía en ese chico y firmó mi clave, entonces significa que yo también soy de confianza; y si yo también soy de confianza, significa que Mallory también es de confianza, right?

Pregunta

Firmo las claves públicas de otras personas con el siguiente comando GPG (en Linux):

gpg --ask-cert-level \
    --cert-policy-url http://diti.me/pgp/ \
    --sign-key 0xFFFFFFFE

El comando anterior me permite firmar la clave 0xFFFFFFFE con una URL de la política (dando información sobre cómo verifico y firmo las claves) y me permite elegir:

How carefully have you verified the key you are about to sign actually belongs
to the person named above?  If you don't know what to answer, enter "0".

   (0) I will not answer. (default)
   (1) I have not checked at all.
   (2) I have done casual checking.
   (3) I have done very careful checking.

La pregunta es: ¿Puedo firmar, con el nivel 3, la clave de un amigo que conozco desde hace varios años? No hace falta decir que confío en él (y su seriedad en la asignación de claves), y aún realizaría una comprobación cuidadosa (preguntas extendidas, agregar un campo TXT en los registros de su nombre de dominio, etc.).

Phil Zimmermann quería que people usara PGP, no simplemente geeks . Quiero evitar lo que él llama "analedad excesiva", mientras que todavía se me considera una persona seria (para la red de asuntos de confianza). Como tal, me gustaría mezclar los dos juntos: para simplificar el proceso de verificación para los amigos cuyos usuarios pueden verificar con precisión la identidad y la clave, sin romper mi WoT.

Espero que mi pregunta y mis preocupaciones tengan sentido.

    
pregunta Diti 09.05.2013 - 23:26
fuente

3 respuestas

16

Al final, puede firmar a quien quiera . No hay nadie que te controle y nada que compruebe lo que estás haciendo (y cómo lo haces).

Consideraría que firmar la clave de una persona conocida (para mí) es válido, si puedo asegurarme de que no estoy recibiendo su clave en un canal seguro. Si está totalmente seguro de poder reconocer su voz o hacer otra verificación, es la persona correcta (por ejemplo, al hacer preguntas solo él puede contestar por teléfono), estaría bien si firmara una clave con esta persona. me envía a través de esta conexión de confianza establecida (por ejemplo, hablando en el teléfono). No estaría de acuerdo con firmar una clave encontrada en un servidor de claves (todos pueden cargar claves para UID arbitrarios, eche un vistazo a todos los keys of president ) o recibido en un correo electrónico sin firma (sin la firma de otra clave ya confiable).

Confianza en la identidad

Cuando le das un "sig3" a la clave de tu amigo usando el comando gpg sign , certificas que estás (bastante) seguro de que realmente es la persona que pretende usar sus UID. Cuando el mantenedor de Debian firma su clave, certifica que usted es la persona que pretende ser.

Eso es todo por ahora. Ni usted ni el mantenedor de Debian hicieron ninguna declaración sobre si confían en sus capacidades (o en las de sus amigos) para realizar cuidadosamente firmas clave.

La política de firma que mencionó puede ayudar a otros a decidir cómo depositan su confianza en las firmas que emitió.

Confíe en las capacidades y los motivos de la persona ("Garantía")

Si está seguro de que su amigo es capaz de firmar de manera confiable otras claves, puede poner otro tipo de confianza en su clave usando gpg trust . Usando esto, puede ordenar a GnuPG que considere las firmas emitidas por su amigo como si las emitiera usted mismo.

Esta información solo es válida para ti; no se incluye en los servidores de claves ni en las claves exportadas de otro modo:

  

El nivel de confianza de una clave es algo que solo usted asigna a la clave, y se considera información privada. No se empaqueta con la clave cuando se exporta; incluso se almacena por separado de sus llaveros en una base de datos separada. (del manual de GnuPG )

Tener (múltiples) rutas de confianza ("firmas de identidad", el tipo de confianza que expliqué primero en esta respuesta) a algún desconocido se puede leer como pista todo debería estar bien, pero recuerde que confiando en todo el mundo en la cadena de confianza en este momento. La mayoría de las personas son honestas y están bien capacitadas para realizar firmas válidas, pero ¿nunca te ha percibido alguien de quien no lo hubieras esperado? Si alguien realmente tiene una razón para engañarte, es posible que de alguna manera pueda obtener una cadena de confianza en algunos caminos extraños.

Hay un excelente artículo sobre la confianza en OpenPGP: There is Trust y Then There Trust and then There Trust"

    
respondido por el Jens Erat 10.05.2013 - 00:09
fuente
10

Si no te conozco de antemano, entonces, ¿qué sentido puede tener para mí estar bastante seguro de que me comunico con el verdadero yo ? Por lo que sé, no puedo estar seguro de que exista en absoluto, y su existencia seguirá siendo irrelevante para mí mientras no interactúe conmigo.

Esa es la falla principal, grande y flagrante de la Web of Trust de PGP: trata de asegurar un enlace sólido de las claves públicas a las identidades, sin molestarse en definir primero una noción consistente de "identidad".

Por ejemplo, ahora mismo, con este mensaje, empiezo a interactuar con lo que puedo asumir que es (plausiblemente) algún ser sensible (presumiblemente humano, entonces) que de alguna manera eligió, para esa pregunta, ir bajo el seudónimo de "Diti" y una cara que se parece vagamente a un pato. Si quiero intercambiar correos electrónicos confidenciales con esa entidad humana, desearé enviar los mensajes a "la Diti que escribió esa pregunta específica en security.SE". Esa es la noción de identidad que me gustaría usar. La firma de claves de PGP vincularía algunas claves públicas, que no sé de antemano, a direcciones de correo electrónico, que tampoco conozco! Para ser efectivo, las personas que "firman claves" tendrían que firmar declaraciones como: "Yo, [email protected], garantizo que la clave pública 0xA7C083FE realmente pertenece al tipo (o niña) que escribió el '¿Está bien firmar un ¿Clave PGP sin una reunión de IRL? pregunta sobre seguridad.SE en mi 9, 2013 ".

Puedes conocer a todos los Bobs en la Tierra y hacer que todos firmen tu clave, con los "niveles de verificación" más altos, no me dará ninguna información útil. Vincular su clave privada con su nombre o dirección de correo electrónico no tiene ningún significado para mí, a menos que ya lo conozca por alguna otra razón, en cuyo punto el WoT con su encadenamiento automático a través de extraños completos simplemente pierde relevancia.

La misma pregunta tiene otro lado: ¿por qué querrías garantizar, con una fuerza tan implacable, que una clave pública determinada es realmente tuya? Si funciona, solo hará que todos sus mensajes firmados sean trazables para usted, y se puedan usar como pruebas contra usted . Es como llevar tu propia pala a un cementerio.

En el caso de firmas digitales , nadie en su estado de ánimo correcto debería buscar activamente la posibilidad de producir firmas. Lo que queremos es que otras personas generen firmas.

Por lo tanto, mi respuesta es que puede firmar claves con cualquier "nivel de política" que desee; no romperá la Web of Trust de PGP porque no hay nada que romper realmente .

(Lo que es una especie de bendición. Un mundo en el que funciona la Web of Trust de PGP es un mundo en el que todo el mundo está identificado de manera única, señalado en el espacio y en el tiempo, y es responsable globalmente. Cuando se llega a eso, sería bastante < a href="http://en.wikipedia.org/wiki/Nineteen_Eighty-Four"> Orwellian , es decir, impresionante pero aterrador.)

    
respondido por el Thomas Pornin 10.05.2013 - 04:22
fuente
1

El hecho es que la web de confianza no es terriblemente segura. La gran mayoría de las personas que hacen la asignación de claves lo hacen basándose en una mirada bastante superficial a la identificación de la persona. Obtenga un pasaporte falso algo convincente y podría obtener fácilmente firmas con el nombre que desee.

Comparado con el hecho de haber conocido a alguien durante años, se ve positivamente seguro.

Lo que sí quiere hacer es estar seguro de que la persona que realiza la solicitud es quien cree que es. Si se trata de alguien que usted conozca personalmente y que haya leído en voz alta la huella dactilar del teléfono es probablemente razonable además de cualquier cheque en línea. Esto ayuda a verificar que realmente es la persona que conoces y no simplemente a alguien que ha robado sus credenciales de cuenta.

En mi opinión, lo principal que hace la web de confianza es protegerse contra "diablos de Internet".

    
respondido por el Peter Green 07.12.2016 - 20:54
fuente

Lea otras preguntas en las etiquetas