Solo realizo operaciones bancarias con mi tarjeta de débito "PostFinance". El protocolo de inicio de sesión funciona así:
- Introduzca el nombre de usuario y la contraseña en el formulario web.
- Obtenga un número de desafío de 9 dígitos en el sitio web.
- Escriba el número de desafío en un lector de tarjetas independiente sin conexión con la tarjeta de débito insertada.
- Introduzca el PIN en el lector de tarjetas.
- Obtenga un número de 9 dígitos de la respuesta del lector de tarjetas.
- Escriba el número de respuesta en el formulario web.
Supuse que era una especie de criptografía asimétrica, con la tarjeta que contenía una clave privada desbloqueada con el pin, "firmando" el número del desafío y el banco verificando la firma con una clave "pública" (que no es realmente pública).
Pero luego me estaba preguntando qué sería lo primero que un atacante / investigador de seguridad intentaría e ingresó al desafío "1" varias veces. La respuesta fue diferente cada vez:
Los primeros 3 dígitos se unen para aumentar monótonamente en pequeños pasos (~ 10 muestras). Los otros 6 dígitos no seguían un patrón que recogí, es decir, parecían aleatorios.
¿Alguien sabe cómo funciona esto?