Jeg kan start med at fortælle LAD VÆRE MED AT BRUG MD5!!..
Den måde som jeg vil opbygge det på er f.eks sådan her:
Table: User
Brugernavn: Nvarchar(max)
passwordValue: nvarchar(max)
salt: nvarchar(max)
f.eks hvis du brugere 1234 i dit password. Så for at gøre det mere sikkert så ligger du noget salt på som er unikt for hver bruger som opretter sig i system/databasen.
Det vil sige 1234+hehdslgdsgdigtergsvhu436346346346346346sdgbv8i54uy834t
Nu skrev jeg bare nogle tegn for at det giver mening. Grunden til at jeg laver + er for at vise dig at jeg ligesom ligger de to ting sammen altså passwordvalue og salt sammen.
Der efter tager du det password og laver det om til sha256 eller sha512 eller andet som er højre.
NÅr du har lavet det om til en af de tre muligheder skal du også HUSK at tag din salt ind i brugens information for sig selv. altså hehdslgdsgdigtergsvhu436346346346346346sdgbv8i54uy834t skal ind i Salt.
Det er op til dig selvom du vil sha256 eller 512 salt også her.
Så når du spørger efter om bruger findes skal du gøre sådan her:
- Findes brugen med email eller brugernavn?
- Der efter hvis det er "True" så tager du den salt værdi som du får og smide det ind i en forespørgsmål hvor du ligger din salt værdi ovn i password value som du har skrevet.
Håber det giver mening for dig?
Evt kig her:
http://stackoverflow.com/a/2344107/6115825http://stackoverflow.com/questions/25397741/c-sharp-sha256-compute-password-hash-by-using-username-as-salthttps://crackstation.net/hashing-security.htm <---- Den er rigtigt godt find du kan find ud af den.