Aaron Harun tiene la respuesta correcta para usted. Básicamente, no es necesario encriptar dichos datos siempre que los almacene en una sesión, porque esos datos nunca llegan al cliente/navegador/usuario, ya que todo es del lado del servidor. Cuando crea una sesión en PHP, maneja las cookies para usted, por lo que no tiene que preocuparse por eso. En la mayoría de los casos, no es necesario tratar con las cookies. En seguridad, lidiar con las cookies es perjudicial.
He visto algunos sitios descuidados que en realidad almacenan el nombre de usuario en un campo oculto en un formulario, que permite a cualquiera simplemente editar su copia local de ese formulario y tomar medidas como el usuario que quiera. Esto parece un problema obvio, pero las cookies no son mejores.
Si realmente cree que es una buena idea diseñar un sistema de autenticación casera, primero debe diseñar la base de datos. No almacene contraseñas de texto plano, almacene un hash en su lugar (como md5, sha-1, etc.) y en ese punto no hay daño en generar una sal para cada contraseña (una cadena aleatoria que agregue a la contraseña del usuario antes de hash, y almacene esa sal con el hash de contraseña porque lo necesitará más adelante; esto previene ataques de hash de diccionario, es decir, tablas de arcoiris).
¿Contra qué desea protegerlo? –
Personas que podrían tratar de leer fácilmente la cookie para información del usuario ... – mattsven
Por lo tanto, desea proteger la confidencialidad de sus datos (no puede ser leído por terceros) y no la integridad de sus datos (los cambios de los datos serán ser detectado), ¿verdad? – Gumbo