An alternative solution to issue #2 -- using dynamic types on
Pbkdf2.generate and performing the required actions by type checking
during execution