Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Criptografar/descriptografar senha na função Oracle


Se você deseja escrever suas próprias funções para criptografar e descriptografar dados, basta chamar o DBMS_CRYPTO encrypt e decrypt métodos com parâmetros apropriados (ou seja, escolha seu algoritmo de criptografia, sua chave, etc.).

Claro, se você escrever suas próprias rotinas, supondo que você armazene a chave no banco de dados ou em algum lugar ao qual o banco de dados tenha acesso, você não estará fazendo muito pela segurança. É ruim enviar senhas não criptografadas pela rede mas geralmente é muito pior armazenar senhas não criptografadas no banco de dados (ou senhas criptografadas se houver um decrypt método no banco de dados que tem acesso à chave para descriptografar os dados). Geralmente, é muito mais fácil roubar dados de um banco de dados do que farejar dados enviados pela rede para encontrar uma senha.

A resposta certa, é claro, seria rearquitetar o sistema para que você não armazene as senhas. Você deve armazenar hashes de senha (que você também pode gerar usando o DBMS_CRYPTO pacote) que não são reversíveis.