2011-02-03 148 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

存儲過程可以包裹這是一種形式的加密。但是你不能更新密鑰,因爲它被硬編碼到包裝算法中。

這可能會讓你覺得他們很容易被破解。他們是和解包裝可用。