我的要求是做列级加密。
尝试以下选项TDE -数据不加密给有权访问数据库的人。如果我说错了,请纠正我。DBMS_CRYPTO包,这工作,但客户端希望存储加密密钥外的Oracle数据库。我无法找到在数据库外存储密钥的解决方案。
任何帮助都是非常感谢的。
这可能是两回事。
要在列级别执行TDE,已经使用了外部密钥存储,即钱包。位置由sqlnet中的ENCRYPTION_WALLET_LOCATION指定。Ora文件,当数据库启动时打开钱包,例如
ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "thePasswordIchose";
相反,如果你想做一些"在家长大"的事情;使用DBMS_CRYPTO加密数据,然后密钥管理也成为您自己的责任。您可以将密钥存储在您喜欢的任何地方,但是您的工作是管理它并将其安全地传递到DBMS_CRYPTO例程