Salah satu metode tanpa menggunakan "Penyimpanan Kata Sandi Eksternal Aman" (apa pun itu) adalah menambahkan kolom RAW(16) ke tabel untuk menyimpan nama pengguna dan kata sandi yang di-hash:
alter table mytable add password raw(16);
Kemudian simpan username dan password hash di dalamnya seperti ini:
insert into mytable (username, password, ...)
values (:username, dbms_obfuscation_toolkit.md5
(input => utl_i18n.string_to_raw
(upper(:username)||:password))
);
Kemudian ketika pengguna mencoba masuk dengan nama pengguna dan kata sandi, Anda dapat memeriksanya seperti ini:
select 'OK'
from mytable
where username = :username
and password = dbms_obfuscation_toolkit.md5
(input => utl_i18n.string_to_raw
(upper(:username)||:password));
Dengan cara ini tidak ada yang bisa mengetahui apa kata sandi yang disimpan (selain dengan kekerasan).