Best way to encrypt on your system is to make a password based on user choice with 3 encryption.
Ex: User chooses password (12345)
Criptografia 1: MD5(12345) = Resultado: 827ccb0eea8a706c4c34a16891f84e7b
Criptografia 2: SHA-256(Cript 1) = Resultado: 30fdf15fd513fd69085f9344ff2d5d716254aa367bcac88e78ee60ad0298d606
Criptografia 3: SHA-256(Cript 2) = Resultado: 4ac3e4f57090ed6de97f2a839fe505cb05ace7d2cbc8f75865ca95cabeb173e0
This way you get an unbreakable encryption so far and impossible a hacker to match the password.
There are also server protections to prevent sql_inject as
strip_tags($senha);
With these and other uses anti sql_inject Voce will have a perfect encryption, another thing is to Voce add a Checksun to the user (like Steam_id) that takes this checksum + password and encrypts again.
With this Voce will have almost 100% protection against attacks, it is worth remembering that for a hacker to change the password or have access depends not only on encryption, also on protection against SQL_INJECT!
What is Steam exactly?
– Guilherme Nascimento
Read also: How to hash passwords securely
– Bacco
Are you using the
OpenID
from Steam to authenticate?– Inkeliz
Always remember that if it’s not what you’re looking for, you can [Dit] the question and make your specific case clearer. If it is really another problem, the question can be reopened.
– Bacco
Bacco, my question is not a normal case but relative to Steam, because in Steam, there is no "generate password".
– Gonçalo
Inkeliz am yes using openid.
– Gonçalo
Can you explain the Openid system better? And why it implies a lack of security?
– MarceloBoni