ora_hash(expr) returns an unpredictable value if expr is a lob or long type, as is demonstrated in the following example:
create table drop_me (a clob);
insert into drop_me values ('x');
insert into drop_me values (rpad('4000 ', 4000, 'x'));
insert into drop_me values (rpad('4001 ', 4001, 'x'));
select a, ora_hash(a) from drop_me;
drop table drop_me;
Unknown parameters
The semantics of the fourth and fifth parameter is unknown to me: