SSL ya proporciona una conexión segura que protege los datos en tránsito entre el cliente y el servidor. Garantiza la confidencialidad y la integridad, y, de hecho, utiliza HMAC para este último. Si su modelo de seguridad se trata de atacantes que podrían intentar alterar los mensajes mientras viajan del cliente al servidor y luego regresan, agregar su propio HMAC es redundante e inútil.
SSL, sin embargo, es pura tunelización. Deja de actuar cuando los datos han llegado a su destino. Si su modelo de seguridad se trata de un atacante que puede modificar los datos almacenados en su servidor , entonces el hecho de que se usó SSL para transferir dichos datos no contribuye en nada a la protección contra el atacante que . En esa configuración, la existencia real de un cliente y una red es irrelevante; Este es un problema de almacenamiento, no un problema de red. HMAC puede ayudar, pero solo si el atacante no puede aprender la clave HMAC, que es un escenario restrictivo.
La pregunta realmente importante que debe hacerse primero es: ¿qué puede hacer realmente el atacante imaginado?