pure-ruby openldap hash generator
NOTE: requires shell-based cracklib TODO: should we find a better way of returning specific error messages than an exception?
[Validate]