I am new here and new to encrypting and securing passwords, so please forgive me if this question is not posted to the right location or if my question is bad.
I have been working on a web app in Java that requires a username and a password. Through my research, I discovered that I need to salt and hash my password in order to make sure it is secure when I place it in a database.
So far, I am leaning towards using PBKDF2 with SHA512, but bcrypt is still on the table.
I came across this post about using PBKDF2 for encrypting passwords: http://howtodoinjava.com/security/how-to-generate-secure-password-hash-md5-sha-pbkdf2-bcrypt-examples/
The example seemed to show what I needed to do as far as hashing and salting my passwords, but I was concerned with using a colon to create a split between the iterations, salt, and password.
Wouldn't that just give clues to someone who would try to hack my database as to how I was hashing my passwords?
I know the author of the article was demonstrating how to verify the password using the split method, but I'm thinking this isn't the best method of encryption and verification
What I am hoping for is if someone could take a look at this and let me know if there is a better way (or example) to use PBKDF2 for password hashing and verification. If there are links or other questions that could be suggested, that would be awesome.
Also, I am open to hearing others thoughts on which algorithm I should be using because there is a lot of information out there and it seems like there is nothing conclusive as to which one is the best.
I really appreciate any help that is provided, and I hope this is the right place to post this question.
Thanks!!