2011-02-03 172 views
-3

如何更新oracle 11g中的存储过程加密密钥。oracle存储过程加密密钥

(val IN varchar) RETURN varchar AS 
    outstr varchar(10); 
    descr varchar(255); 
BEGIN 
    -- Encryption Key For Encryption 
    secret_code := '123456788765432112345678'; 
    --create instance of OLE object on an instance of SQL Server; 
success = 0 
EXEC rc = sp_OACreate 'CAPICOM.EncryptedData', object OUT 
if rc <> 0 
    begin 
     exec sp_oageterrorinfo object, src out, descr out end 
     method_call := 'SetSecret("' + Secret_code + '")' 
     RETURN (outstr); 
    END; 
+0

你能否提供更多的上下文?这是你写的调用DBMS_CRYPTO的存储过程吗? – 2011-02-03 06:46:05

+0

(val IN varchar) RETURN varchar AS outstr varchar(10); descr varchar(255);加密密钥 secret_code:='123456788765432112345678'; - 在SQL Server实例上创建OLE对象的实例;成功= 0 EXEC RC =由sp_OACreate 'CAPICOM.EncryptedData',对象OUT \t如果RC <> 0 \t \t开始 \t \t EXEC sp_OAGetErrorInfo会对象,SRC出来,DESCR出 \t \t \t 端\t method_call:= 'SetSecret(''+ Secret_code +'“)' RETURN(outstr); END; – sun 2011-02-03 14:04:32

+0

我需要更新此加密密钥对于加密secret_code与一些其他value.How我可以做到这一点。 – sun 2011-02-03 14:05:26

回答

0

存储过程可以包裹这是一种形式的加密。但是你不能更新密钥,因为它被硬编码到包装算法中。

这可能会让你觉得他们很容易被破解。他们是和解包装可用。