Holder binding explicado: por qué una credencial copiada no vale nada
Una credencial firmada es una copia excelente de sí misma. Quien consiga una tiene un documento con una firma válida del emisor, y al comprobar esa firma obtendrá sin problema la confirmación de que es auténtico. El holder binding cierra esa brecha: vincula la credencial a una clave que solo una persona puede usar, de modo que para presentarla no basta con tenerla.
Esta página es la versión en lenguaje sencillo. Explica qué es realmente el vínculo, cuándo se crea, cómo lo resuelve cada uno de los dos formatos europeos de credencial y la parte que la mayoría de explicaciones omite: lo que el holder binding sigue sin decirle al verificador.
El problema que resuelve
Los documentos digitales se copian a la perfección. La foto de un pasaporte es una mala falsificación, porque el papel tiene rasgos físicos que una fotocopia pierde. Una credencial firmada no tiene ninguna señal de ese tipo. Copie el archivo y la copia se verifica exactamente igual de bien que el original, porque la firma del emisor cubre el contenido y el contenido no ha cambiado.
Así que un verificador que solo comprueba la firma del emisor está respondiendo a la pregunta equivocada. Ha averiguado que los datos son auténticos. No ha averiguado nada sobre si la parte que tiene delante tiene derecho a ellos, que suele ser justo lo que necesitaba saber.
Los datos
Los hechos que afirma la credencial: un nombre, una fecha de nacimiento, una categoría de permiso de conducir, un número de empresa. Es la parte en la que todo el mundo piensa cuando imagina una credencial.
La firma del emisor
La prueba de que esos hechos proceden del emisor y no se han alterado desde entonces. No dice absolutamente nada sobre quién los lleva ahora.
La clave pública del titular
La pieza que crea el vínculo. El emisor escribe la clave pública del titular en la credencial firmada, de modo que la credencial nombra ahora la clave autorizada a presentarla.
Cuándo se crea el vínculo y cuándo se usa
El vínculo se crea una sola vez, en la emisión, y se pone en práctica cada vez que se muestra la credencial. El titular no ve nada de ello, salvo la solicitud de desbloqueo que ya espera.
1. La cartera crea una clave
Antes de pedir nada, la cartera crea un nuevo par de claves dentro del hardware seguro del propio teléfono. La mitad privada no se puede volver a leer, ni siquiera desde la aplicación de la cartera.
2. El emisor la incorpora
La cartera envía la mitad pública con su solicitud y demuestra que posee la privada. El emisor coloca esa clave pública dentro de la credencial antes de firmarla.
3. Un verificador pregunta
La solicitud lleva un valor aleatorio nuevo e indica quién pregunta, de modo que la respuesta solo puede usarse una vez y solo por la parte que la pidió.
4. La cartera firma
La cartera firma la respuesta con la clave privada, normalmente tras una huella dactilar o un PIN. El verificador comprueba esa firma con la clave que contiene la credencial.
Dónde está realmente la clave privada
El vínculo nunca es mejor que lo difícil que resulte usar la clave sin el titular. Por eso las carteras generan estas claves dentro de hardware dedicado, el elemento seguro o su equivalente, que también protege los medios de pago del teléfono, en lugar de guardarlas como un archivo que el sistema operativo puede entregar a cualquier aplicación que lo pida.
El verificador no puede ver nada de eso en la propia presentación. Una firma demuestra que se usó la clave, no que se custodiara bien. Que la clave esté de verdad en hardware certificado es una garantía aparte, que aportan las atestaciones que una cartera presenta a un emisor antes de recibir nada. Según las normas europeas, para eso existen la atestación de la cartera y la atestación de clave.
El holder binding responde
¿Ha generado esta respuesta, ahora mismo y para esta solicitud, la clave para la que se emitió esta credencial?
La atestación de clave responde
¿Está esa clave en un lugar del que un atacante no puede extraerla? Otra pregunta, otra prueba, decidida en la emisión.
Cómo lo hacen los dos formatos europeos
La idea es la misma en los dos formatos sobre los que se construye la cartera europea. La mecánica difiere, lo que importa a quien implementa un verificador y a casi nadie más.
SD-JWT VC
El emisor coloca la clave pública del titular en un claim de confirmación dentro de la credencial firmada. En la presentación, la cartera añade un pequeño token aparte, firmado con la clave privada, que cubre la identidad del verificador y el valor aleatorio de la solicitud. Un verificador que ignora ese token ha comprobado al emisor y nada más.
Leer la definiciónmdoc
La clave del dispositivo figura en el objeto firmado que protege los elementos de datos, y el teléfono firma la transcripción de la sesión en la que participa. Como esa transcripción abarca el intercambio entre los dos dispositivos, la grabación de una presentación no puede reproducirse en otra. Eso es lo que hace segura una comprobación sin conexión en la carretera o en una puerta.
Leer la definiciónUna cartera del ecosistema europeo suele llevar la misma atestación en ambos formatos y entrega la que entienda la otra parte, así que una organización que acepta credenciales debe poder comprobar el vínculo en los dos.
Lo que el holder binding no demuestra
El holder binding demuestra el control de una clave. No demuestra quién sostiene el teléfono. Alguien a quien se le han dado el dispositivo y el PIN genera exactamente la misma respuesta válida que el titular legítimo, y ninguna criptografía de la credencial puede ver la diferencia.
Tampoco dice nada sobre lo bien que el emisor comprobó la identidad antes de emitir. Una credencial vinculada a una clave sigue siendo tan fiable como el proceso que la creó, y eso es lo que describe un Level of Assurance. Vincular con mucha fuerza a una clave una credencial emitida con poco rigor no hace más ciertos los datos que contiene.
Visto en conjunto, el reparto de tareas está bastante claro. El holder binding impide la reutilización y la copia, el desbloqueo de la cartera une la clave a una persona presente, el Level of Assurance describe lo bien que se identificó a esa persona y una trusted list indica qué emisores acepta usted en primer lugar. Un verificador que quiera una respuesta real necesita los cuatro, no solo el que viene gratis con la credencial.
Qué significa esto para usted
Emisor
Sus credenciales dejan de servir a quien robe una copia, lo que elimina toda una categoría de fraude que, de otro modo, tendría que detectar a posteriori. El coste es que debe estar preparado para reemitir cada vez que un titular cambie de dispositivo.
Verificador
Compruebe el vínculo, no solo la firma del emisor. Envíe un valor aleatorio nuevo en cada solicitud y rechace cualquier respuesta que no lo firme, o una presentación grabada podrá reproducirse ante usted más adelante.
Titular de la cartera
Nada que gestionar y una cosa que saber: sus credenciales están vinculadas a este dispositivo, así que un teléfono nuevo significa volver a obtenerlas en lugar de restaurarlas desde una copia de seguridad.
Términos relacionados
Preguntas frecuentes
¿Es el holder binding lo mismo que el key binding o el device binding?
En la práctica, sí. Los distintos términos proceden de especificaciones distintas, no de una diferencia de significado. El holder binding es la propiedad: esta credencial pertenece a este titular. Key binding es el nombre que el mundo de SD-JWT VC da al mecanismo, y en el lado ISO se habla de device binding o device authentication porque la clave reside en un teléfono concreto. Si un documento usa alguno de estos términos, léalo como la misma idea vista desde otro ángulo.
¿Demuestra el holder binding que quien presenta la credencial es la persona a la que se refiere?
No, y este es con diferencia el malentendido más habitual. Demuestra que quien generó la respuesta controla la clave para la que se emitió la credencial. Que la persona que toca el teléfono sea la que describen los datos depende de cómo se desbloquea la cartera, del cuidado con que el emisor comprobó la identidad en su momento y de si el titular ha entregado el dispositivo y el PIN a otra persona. Para una comprobación de alto valor, combine el vínculo con una cartera que exija biometría y con una credencial emitida con un Level of Assurance acorde al riesgo.
¿Qué pasa con una credencial vinculada cuando el titular cambia de teléfono?
No se traslada. La razón de guardar la clave privada en hardware seguro es precisamente que no se pueda exportar, así que una credencial vinculada al teléfono antiguo no se puede restaurar en el nuevo y esperar que funcione. El nuevo dispositivo genera su propia clave y la credencial se emite de nuevo para ella. Planifique la reemisión como algo normal y frecuente, no como una excepción, porque para sus usuarios es simplemente el día en que cambiaron de teléfono.
¿Existen credenciales sin holder binding?
Sí, y tienen su lugar. Una credencial sin holder binding es una credencial al portador: quien la presenta obtiene el beneficio, como con una entrada en papel. Es un compromiso razonable para algo de poco valor y corta duración, en el que el coste de que se reutilice una copia es pequeño y prefiere no pedir al titular que desbloquee nada. Es la elección equivocada para la identidad, los derechos y cualquier cosa que un defraudador considere digna de reutilizar.
Fuentes
- IETF SD-JWT-based Verifiable Digital Credentials (SD-JWT VC), todavía un borrador
- OpenID for Verifiable Credential Issuance, sobre la prueba de posesión de la clave en la emisión
- OpenID for Verifiable Presentations, sobre cómo vincular una respuesta a una única solicitud
- ISO/IEC 18013-5, sobre la autenticación del dispositivo para documentos móviles
Esta página tiene fines informativos y no constituye asesoramiento legal. Para la redacción oficial, consulte directamente las especificaciones.