Een methode zonder gebruik te maken van "The Secure External Password Store" (wat dat ook mag zijn) is om een RAW(16)-kolom aan de tabel toe te voegen om een gehashte gebruikersnaam en wachtwoord op te slaan:
alter table mytable add password raw(16);
Sla vervolgens de gehashte gebruikersnaam en het wachtwoord als volgt op:
insert into mytable (username, password, ...)
values (:username, dbms_obfuscation_toolkit.md5
(input => utl_i18n.string_to_raw
(upper(:username)||:password))
);
Wanneer een gebruiker vervolgens probeert in te loggen met een gebruikersnaam en wachtwoord, kunt u deze als volgt controleren:
select 'OK'
from mytable
where username = :username
and password = dbms_obfuscation_toolkit.md5
(input => utl_i18n.string_to_raw
(upper(:username)||:password));
Op deze manier kan niemand erachter komen wat het opgeslagen wachtwoord is (behalve door brute kracht).