¿Es seguro almacenar datos importantes en un token de acceso cifrado?

1

¿Es seguro almacenar datos importantes en un token de acceso cifrado? Por ejemplo, en lugar de almacenar tokens de acceso en una base de datos, no almacenarlos en absoluto y colocar sus datos asociados en ellos antes del cifrado.

Al igual que en. Estoy configurando un servidor de autenticación Oauth. Creo un token de acceso ajustando la marca de tiempo del token, la dirección IP de la solicitud del token, el principal utilizado para la solicitud y tal vez algunos otros datos, como una cadena. Luego codifico el String en Base64 y lo ejecuto a través de un cifrado sólido.

Cuando se envía el token, uso mi clave para descifrarlo, descodificarlo desde Base64 y leer los datos que contiene. Si soy capaz de leerlo, no puede haber sido manipulado, ¿verdad?

¿Es la única razón para almacenar tokens de acceso y el usuario al que fueron emitidos en una tabla de base de datos una falta de fe en el cifrado seguro?

    
pregunta Matt Dodd 09.10.2014 - 00:30
fuente

1 respuesta

1

Depende de si el mecanismo de cifrado que está utilizando proporciona confidencialidad (como AES en modo CBC) o o confidencialidad y < em> integridad * como AES en modo CBC con un HMAC, o AES-GCM)

El hecho de que sus datos estén encriptados no significa que no puedan manipularse de una manera que usted no pueda detectar. Debe estar cifrado y autenticado, y la autenticación se realiza con un MAC o un código de autenticación de mensaje.

Si, de hecho, está utilizando un cifrado autenticado y, por lo tanto, puede verificar a través del MAC que el texto cifrado no ha sido manipulado antes de intentar descifrarlo, entonces sí, esta es una forma razonablemente segura de almacene y proteja los datos, siempre que, como se indicó, utilice un cifrado sólido y la implementación sea sólida.

    
respondido por el Xander 09.10.2014 - 02:06
fuente

Lea otras preguntas en las etiquetas