El diseño de la criptografía cotidiana: por qué unas interfaces son usables y otras no

Fuentes: The Design of Everyday Cryptography

Los criptógrafos definen protocolos cada vez más complejos que resuelven muchos problemas, pero esa riqueza los convierte en herramientas casi imposibles de usar con seguridad por desarrolladores no especializados: lo que el autor llama las "puertas de Norman" de la criptografía. El artículo contrasta dos casos opuestos para ilustrar qué hace que una interfaz criptográfica sea utilizable. El primero son los KEM (mecanismos de encapsulación de claves), como ML-KEM del FIPS 203: con solo tres funciones (generación de claves, encapsulación y desencapsulación) y dos decisiones de entrada (semilla y conjunto de parámetros), el usuario no elige qué se cifra y recibe un secreto compartido listo para alimentar una primitiva de cifrado autenticado. El segundo caso son las firmas digitales modernas, donde aparece la llamada variante de prehashing: algoritmos distintos (HashML-DSA frente a ML-DSA, HashSLH-DSA frente a SLH-DSA) que rompen la interoperabilidad con hardware limitado. Esto obliga a introducir APIs start/update/finish similares a las del hashing para mensajes de longitud arbitraria, así como el truco "External Mu" del FIPS 204, y suma decisiones extra: firma pura o prehash, algoritmo de hash y cadena de contexto. El texto defiende que toda esa variedad se introdujo deliberadamente por beneficios de seguridad reales, pero el resultado son 13 APIs en lugar de 3, una superficie de ataque y de error mucho mayor y una invitación constante a elegir mal. La conclusión implícita es la necesidad de interfaces criptográficas tan simples y con tan pocas opciones como las de los KEM.