Firmando mensajes del foro web

2

Mantengo el software del foro web, al que se puede acceder mediante NNTP y correo electrónico (como listas de correo). Dado que el diseño NNTP permite a cualquier persona falsificar su dirección de correo electrónico, se puede utilizar la firma de mensajes para verificar las identidades de los carteles.

Por lo tanto, me gustaría integrar la firma y verificación opcional de mensajes PGP en la interfaz de usuario web, de una manera que sea razonablemente segura pero que no se interponga en su camino. La verificación probablemente no sería demasiado difícil: la clave se podría buscar en los servidores de claves, y quizás la interfaz de usuario web pueda mostrar las identidades de keybase.io vinculadas una vez que se abra.

El problema más difícil es firmar el mensaje. Esencialmente, el flujo de trabajo tendría que ser de alguna manera en este sentido:

  1. El usuario compone el mensaje en la interfaz de usuario web.
  2. Una vez que el usuario está listo para publicar el mensaje, se compila en un mensaje RFC-850 y luego se firma.
  3. El mensaje firmado se almacena y, por ejemplo, enviado a los suscriptores de la lista de correo.

Puedo pensar en algunas formas de firmar el mensaje:

  • Haga que el usuario cargue su clave privada.
    • Esto está fuera, por supuesto.
  • Use una implementación de PGP de JavaScript y almacene la clave privada del usuario en localStorage .
    • Una vulnerabilidad XSS en el software del foro significaría comprometer la clave privada.
  • Haga que el software del foro mantenga su propio par de claves para cada usuario (cifrado con su contraseña de inicio de sesión), que luego el usuario vincula de alguna manera con su identidad.
    • No estoy seguro de los detalles de esta idea. El usuario probablemente debería poder revocar la clave de alguna manera también.
  • Presente al usuario el texto que necesitaría copiar desde su navegador web, inicie sesión en su máquina y luego pegue el mensaje firmado en el navegador web.
    • Tener que hacer esto para cada publicación del foro se convertirá rápidamente en una tarea aburrida.
  • Escriba las extensiones del navegador para firmar el mensaje.
    • No espero mantener múltiples extensiones de navegador para este propósito.
  • Escriba un servicio de firma, que se ejecuta como un servidor web en localhost. Por lo tanto, el software del foro web, por ejemplo, POST a enlace , donde el servicio de firma mostraría el mensaje y permitiría al usuario confirmar que este es el mensaje que desea firmar, que luego POST el mensaje firmado a una URL de devolución de llamada.
    • ¿Quizás ya existe algo como esto?

¿Hay una mejor manera?

    
pregunta Vladimir Panteleev 24.03.2016 - 04:42
fuente

1 respuesta

3

Descubrí que enlace , parece interesante.

Es una extensión del navegador que mantiene las claves en el cliente. Aunque está diseñado principalmente para cifrar mensajes en el correo web, también admite la firma. También parece exponer una API, aunque no he encontrado nada en la API relacionada con la firma de mensajes en particular.

    
respondido por el Vladimir Panteleev 24.03.2016 - 06:16
fuente

Lea otras preguntas en las etiquetas