¿podemos usar XOR enc para almacenar datos en la propia cadena para optimizar las consultas de base de datos?
Sí, pero ya no se llamará un token, sino un ticket (si se usa un cifrado simétrico) o un certificado (si se usa un cifrado simétrico). Al igual que los tokens, los tickets y certificados son cadenas utilizadas para la autenticación, pero en realidad contienen datos encriptados y / o criptográficamente firmados, en lugar de solo un número aleatorio.
El servidor emite un ticket / certificado, que encripta los detalles de autenticación, como quién es el usuario, y sus permisos, el período de validez y la marca de tiempo, y posiblemente una sal. Para autenticarse, el servidor descifra el ticket / certificado y valida estos valores. Los tickets y certificados a menudo se usan en la autenticación distribuida sin un servidor central o donde el servidor central puede ser inaccesible desde la aplicación.
Los tickets y certificados son más difíciles de implementar de forma segura, en comparación con los tokens; pero debido a su naturaleza descentralizada, pueden escalar mejor y ser utilizables en situaciones donde la autenticación central no es posible.
Sin embargo, recomendaría algo más específico que el cifrado XOR. Mientras que XOR es parte de muchos cifrados de flujo, la parte difícil de hacer el cifrado XOR es generar el flujo pseudoaleatorio que usaste para XOR a los datos.