Database Reference
In-Depth Information
Then this query gains the key used to encrypt that ciphertext:
SQL> select * from sysman.MGMT_REPOS_TIME_COEFFICIENT;
TIME_COFF
--------------------------------------------------------------------------------
1234567890123456789012345678901234567890123456789012345678901234
Then run decrypt code on a local test copy of a different database, using the previous key and ciphertext, to gain
the plaintext passwords, as shown.
create or replace FUNCTION decrypt3(CIPHER_TEXT IN VARCHAR2)
RETURN VARCHAR2 AS
RAW_TEXT RAW(32767);
BEGIN
IF CIPHER_TEXT IS NULL THEN
RETURN NULL;
END IF;
RAW_TEXT := SYS.DBMS_CRYPTO.DECRYPT(
SRC=>HEXTORAW(CIPHER_TEXT),
TYP=>SYS.DBMS_CRYPTO.ENCRYPT_3DES+SYS.DBMS_CRYPTO.CHAIN_CBC+SYS.DBMS_CRYPTO.PAD_PKCS5,
KEY=>'1234567890123456789012345678901234567890123456789012345678901234');
RETURN SYS.UTL_I18N.RAW_TO_CHAR(RAW_TEXT, 'AL32UTF8');
END;
/
SQL> create or replace FUNCTION decrypt3(CIPHER_TEXT IN VARCHAR2)
2 RETURN VARCHAR2 AS
3 RAW_TEXT RAW(32767);
4 BEGIN
5 IF CIPHER_TEXT IS NULL THEN
RETURN NULL;
6 7 END IF;
8
9 RAW_TEXT := SYS.DBMS_CRYPTO.DECRYPT(
SRC=>HEXTORAW(CIPHER_TEXT),
TYP=>SYS.DBMS_CRYPTO.ENCRYPT_3DES+SYS.DBMS_CRYPTO.CHAIN_CBC+SYS.DBMS_CRYPTO.PAD_PKCS5,
10 11 12 KEY=>'1234567890123456789012345678901234567890123456789012345678901234');
RETURN SYS.UTL_I18N.RAW_TO_CHAR(RAW_TEXT, 'AL32UTF8');
END;
/ 13 14 15
Function created.
SQL> select decrypt3('157781F0E20C9A687EE4E2B7A649346279D11B98FA3DC31F') from dual;
DECRYPT3('157781F0E20C9A687EE4E2B7A649346279D11B98FA3DC31F')
--------------------------------------------------------------------------------
insecure_password
 
Search WWH ::




Custom Search