Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Salt (cryptography)
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Random data used as an additional input to a hash function}} {{other uses|Salt (disambiguation)}} In [[cryptography]], a '''salt''' is [[Random Number Generator|random]] data fed as an additional input to a [[one-way function]] that [[Cryptographic hash function|hashes]] [[Data (computing)|data]], a [[password]] or [[passphrase]].<ref>{{Cite web |last1=Fenton |first1=James L. |last2=Grassi |first2=Paul A. |last3=Garcia |first3=Michael E. |date=June 2017 |title=NIST Special Publication 800-63-3 |url=https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-63-3.pdf |website=NIST Technical Series Publications}}</ref> Salting helps defend against attacks that use precomputed tables (e.g. [[rainbow tables]]), by vastly growing the size of table needed for a successful attack.<ref>{{Cite book |last=Anderson |first=Ross |title=Security engineering: a guide to building dependable distributed systems |date=2020 |isbn=978-1-119-64281-7 |edition=Third |location=Indianapolis, Indiana |oclc=1224516855}}</ref><ref>{{Cite web |last=Godwin |first=Anthony |date=10 September 2021 |title=Passwords Matter |url=http://bugcharmer.blogspot.com/2012/06/passwords-matter.html |access-date=2016-12-09 |website=The Bug Charmer |type=Blog}}</ref><ref>{{Cite book |last1=Boneh |first1=Dan |url=https://crypto.stanford.edu/~dabo/cryptobook/BonehShoup_0_5.pdf |title=A Graduate Course in Applied Cryptography |last2=Shoup |first2=Victor |date=January 4, 2020 |pages=693β695}}</ref> It also helps protect passwords that occur multiple times in a database, as a new salt is used for each password instance.<ref name=":0" /> Additionally, salting does not place any burden on users. Typically, a unique salt is randomly generated for each password. The salt and the password (or its version after [[key stretching]]) are [[concatenation|concatenated]] and fed to a [[cryptographic hash function]], and the output [[Hash function|hash value]] is then stored with the salt in a database. The salt does not need to be encrypted, because knowing the salt would not help the attacker.<ref name=":0">{{Cite book |last=Rosulek |first=Mike |title=The Joy of Cryptography |date=January 3, 2021 |pages=204β205 |chapter=Chapter 11: Hash Functions |chapter-url=https://joyofcryptography.com/pdf/chap11.pdf}}</ref> Salting is broadly used in cybersecurity, from [[Unix]] system credentials to [[Internet security]]. Salts are related to [[cryptographic nonce|cryptographic nonces]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)