Today's hashes have many uses. File integrity, verification of a secret without revealing the secret (i.e. passwords), hash maps, bloom filters, and probably a few more cases not immediately coming to mind. The Caeser Cipher and Vigenere Cipher were both originally done with pencil and paper long before computers as we know them today existed.

I'm curious, what was the first hash we know about and what problem it was trying to solve?

  • $\begingroup$ Comments are not for extended discussion; this conversation has been moved to chat. $\endgroup$ – e-sushi Mar 16 '18 at 7:35

Knuth, TAOCP, Vol. 3, 6.4 states (on non cryptographic hashing):

"The idea of hashing appears to have been originated by H. P. Luhn, who wrote an internal IBM memorandum in January 1953 that suggested the use of chaining; in fact, his suggestion was one of the rst applications of linked linear lists."

Konheim has a recent book, "Hashing in Computer Science" which focuses on the mathematics and history of non cryptographic hash functions but considers post 1973 cryptographic hash functions only.

Gustavus Simmons worked on authentication codes at Sandia Labs for many years, I looked up for some history in his book but there isn't anything pre 1970 for cryptographic checksums.

CRC type of linear checksums [not strong cryptographically] conceptually date back to error correcting codes. A CRC was specifically proposed by Peterson in 1961.

Edit: (my thanks to @SamuelNeves) In the Georgia Tech School of Computer Science OSP Research Report from 1978 entitled "Foundations of Secure Computation", which can be found here, Rabin explicitly discusses, from p. 157 onwards, cryptographic hash functions and their use in digital signatures. One year later, Merkle invented Merkle trees for hashing.

IFFs are a kind of authentication mechanism, used in military signaling since the 40s, but more resemble challenge response protocols.

Claude Shannon in his "Theory of Secrecy Systems" from the war years, published in 1949 after declassification, focuses exclusively on secrecy as a goal.

Sol Golomb points out that Jevons (1874) had anticipated the difficulty of factoring and discussed how a type of authentication might work, by means of ruling out messages that don't conform to a set of numbers which were output. See here and the screenshot below.

The second fragment refers to the successive striking out of non-compliant statements, and is almost an algorithmic description of authentication.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.