Estoy implementando la verificación de la cuenta (el usuario se registra, recibe un correo electrónico, sigue el enlace para verificar la dirección de correo electrónico).
Muchos tutoriales que veo implican tener una columna en la tabla de usuarios para una cadena aleatoria, que se genera antes del envío del correo electrónico de verificación, y se incluye en la cadena de consulta del enlace de verificación.
Estoy pensando en usar una clave pública para cifrar la dirección de correo electrónico y adjuntar el resultado a la cadena de consulta. Luego, al recibir una solicitud de verificación, descifre el parámetro de cadena de consulta con una clave privada y compárelo con la dirección de correo electrónico. De esta manera, no hay necesidad de una columna adicional
Sin embargo, soy muy inestable en mi conocimiento de seguridad de la información. ¿Es esta una buena idea? ¿Funcionaría esto? ¿Debo marcar la dirección antes de cifrarla con la clave pública?