¿Los servidores pueden usar el estándar U2F para imponer una categoría específica de hardware?

2

No me gusta que los navegadores, los clientes de correo electrónico, etc. se incluyan en las CA y que no haya un énfasis en un mecanismo de autenticación más descentralizado. Afortunadamente, no está tan mal, porque al menos, sea cual sea nuestra plataforma favorita, podemos crear nuestros propios clientes, digamos un cliente IMAP, usando cualquier lenguaje de programación que nos guste, digamos Python, con cualquier CA combinada que nos guste.

Será muy malo que perdamos esa flexibilidad y comencemos a depender de nuevas plataformas, nuevos dispositivos USB, etc. Claro, es un estándar abierto, pero si es parte de este estándar abierto, los servidores pueden aceptar solo un hardware específico, como dispositivos USB especiales, en la práctica, un programador no podrá programar un cliente en la plataforma que elija. Claro, cualquier empresa grande podría construir un dispositivo que respete el estándar, pero aún así se perdería mucha flexibilidad. No estoy diciendo que esta sea la situación con el nuevo estándar FIDO U2F, pero tengo curiosidad por eso.

Para mí, un buen estándar debe restringir lo menos posible ambos lados. Tan pronto como un "estándar" permite que un lado imponga restricciones a la implementación del otro lado, incluso en nombre de la seguridad, parece que una noción fundamental de libertad, implícita en la idea original de código abierto, está bajo ataque. Esta idea original era permitir a cualquier programador crear un código práctico con la menor cantidad de restricciones posible. Es posible que la situación sea igual que antes con las CA para certificados de sitio web o correo electrónico, y es solo que el énfasis actual en el hardware específico en el lado del cliente no sería tan malo.

Mis preguntas:

  • ¿Cómo podemos construir nuestros propios clientes, utilizando la plataforma y el idioma de nuestra elección para conectar con cualquier servidor compatible con U2F?
  • ¿Es posible crear, digamos, un cliente IMAP, en la plataforma de nuestra elección, para autenticar con cualquier, digamos servidor IMAP, que respete el estándar U2F?
pregunta Dominic108 22.02.2017 - 08:03
fuente

2 respuestas

1

U2F en sí mismo no proporciona un protocolo para la comunicación cliente-servidor. Proporciona un conjunto de requisitos que deben cumplirse para que el esquema se considere autenticado. Estos requisitos definen un conjunto de mensajes, pero no definen cómo pasan del cliente al servidor y viceversa. Como tal, la respuesta a si puede crear un cliente para cualquier servidor genérico es: no, porque simplemente no existe un protocolo genérico. Dicho esto, ciertamente puede crear un servicio genérico que pueda procesar los mensajes enviados, pero tendría que definir el mecanismo por el cual se envían los mensajes.

Dada la primera respuesta, la segunda respuesta es necesariamente no también. Esto no significa que no pueda colocar U2F en la parte superior de IMAP y que tenga una extensión, pero eso naturalmente significa que requiere un código personalizado en ambos lados.

    
respondido por el Steve 22.02.2017 - 15:47
fuente
0

su pregunta del lado del cliente:

Seguro que puede crear su propio cliente FIDO U2F que puede ser compatible con la implementación de muchos servidores FIDO U2F existentes. La mayor parte del tiempo por ahora, el cliente FIDO U2F es:  - un navegador web de escritorio (Chrome o Firefox)  - un navegador móvil (la aplicación Chrome para Android / Authenticator también es necesaria ahora, pero este requisito desaparecerá)  - una aplicación de Android (como enlace )

El protocolo / transporte predeterminado es SSL, tiene sentido ya que esta iniciativa FIDO U2F se realizó para proporcionar una autenticación sólida y fácil para los servicios de nube / web ... así que encontrará toneladas de implementación de servidores de código abierto, pero lamentablemente por ahora casi nada para, fuera de una implementación de navegador-cliente, pero no debería ser demasiado difícil implementarla. Con respecto a la compatibilidad de los servidores FIDO U2F, por supuesto, el lado del servidor no debe configurarse para discriminar a los clientes (es por eso que algunos servicios FIDO U2F existentes no funcionan con Firefox, incluso si el soporte de Firefox U2F es posible a través de un complemento de terceros enlace ).

la integración del lado del servidor con otros servicios:

Puede agregar la autenticación basada en FIDO U2F a los servicios existentes como IMAP, pero sería necesario agregar esta función a los lados del cliente y del servidor. No eres el primero en solicitar un caso de uso de cliente de correo de este tipo ... esperemos que alguien trabaje en ello en un futuro próximo.

su última nota citando especificaciones sobre la identificación de "atestación" y "clase de dispositivo":

en el lado del servidor, puede recuperar información sobre el fabricante del dispositivo U2F a través del certificado de certificación que viene con la clave pública de identidad durante la inscripción. Puede ser útil discriminar algunas implementaciones de clientes que se conocen como débiles ... o simplemente implementaciones desconocidas. Por ahora, en el campo, casi todos los servidores FIDO U2F aceptan cualquier cosa, cualquier implementación, casi nadie está usando esta función y, que yo sepa, incluso el servicio de metadatos reciente no brinda suficiente información sobre la "clase de dispositivo" (que mal me lo pidas). Recuerde que el par es sobre el dispositivo / autenticador FIDO U2F, debe poder crear un cliente FIDO U2F compatible con cualquier dispositivo / autenticador FIDO U2F, la discriminación opcional se hará en el lado del servidor.

    
respondido por el FredericMARTIN 23.02.2017 - 14:54
fuente

Lea otras preguntas en las etiquetas