Actualmente estoy asumiendo el control de un servicio y mientras miro a través de la base de datos, noté que ciframos algunos de nuestros datos mediante una función en la base de datos donde la clave de cifrado está codificada en la función DB.
Por lo que sé, esto no es una buena práctica y hace que el cifrado sea bastante redundante porque el objetivo principal de cifrar los datos de la base de datos es proteger los datos en caso de que la base de datos se filtre a terceros no autorizados. Pero en este caso, si la base de datos se ve comprometida, también lo es la clave de cifrado y el cifrado carece de significado.
¿Estoy en lo correcto aquí o me estoy perdiendo algo?
Además, si es una práctica incorrecta, ¿debo cambiar el proceso de cifrado / descifrado para que se realice en el nivel de la aplicación del servidor?