This library will implement BCrypt as a java procedure in Oracle RDBMS.
Story:
We faced a legacy DOS based application with plain text passwords.
Our new platform was a Java, Spring, Oracle Web application.The spring-security were used, so we decided to implement BCrypt alghoritem in databse level, as it is the default password hashing method in spring-security.
In data migrate process, due to large data amount and the nature of the algorithm (slow-hashing), our optimum solution was to implement hashing function inside RDBMS.
The library is using strength of 12 by default, so the number of iterations are (2^12).
The BCrypt algoritm is implemented by a Java stored procedure (bcrypt Algorithm.func), you will need to compile it inside Oracle database (tested on v9) then the procedure will be accessible through plsql (unitTest.sql)