Hash Functions: Their Utility For Both Clients And Lawyers

Published date24 March 2022
Subject MatterIntellectual Property, Litigation, Mediation & Arbitration, Patent, Trials & Appeals & Compensation
Law FirmHolland & Knight
AuthorMr Jacob W Schneider

"You're storing the passwords in plaintext?" My college professor looked at me puzzled. I had to immediately fix this. It was a huge security problem in my senior project, a web-based e-commerce platform. If any hacker tapped into my database, they would have every username and password in their hands. Fast forward a few years, and I am at a software engineering job interview. I am asked to write pseudocode on a whiteboard to make a searching algorithm faster. Both problems had the same solution: use a hash function.

What Are Hash Functions?

Hash functions transform input text into unique strings of output text. For example, the popular md5 hash function would take the previous sentence as input and generate the following as output: 0e3f5c52b0251009db79d7332c50ed9d.

Hash functions have a whole host of useful attributes. First - and this is critical - hash functions are one-way streets. Mathematically, no one can take the string "0e3f5c52b0251009db79d7332c50ed9d" and derive my original sentence. This explains why they are well-suited for storing passwords. The best systems never store your passwords in plaintext, but instead as hash values. If a hacker steals your hash value, they cannot derive your original password and cannot access your account. This also explains why most websites cannot email you your password when you lose it, but instead ask you to create a new password: even they do not know your password.

Second, hash functions often shorten the length of the input strings. For example, "0e3f5c52b0251009db79d7332c50ed9d" is shorter than "Hash functions transform input text into unique strings of output text." This explains how you can usually speed up a search algorithm with hashes. Instead of searching a long string of text, you can instead search shorter hash values that are associated with the original text. Consider this table of long sentences (taken from the KSR Intern. Co. v. Teleflex Inc., 550 US 398 (2007), opinion) and their associated hash values:

No.

Original Text

MD5 Hash Value

0

After petitioner KSR developed an adjustable pedal system for cars with cable-actuated throttles and obtained its '986 patent for the design, General Motors Corporation (GMC) chose KSR to supply adjustable pedal systems for trucks using computer-controlled throttles.

538079a395e9ed867ce19d18bcc37317

1

The Federal Circuit addressed the obviousness question in a narrow, rigid manner that is inconsistent with ' 103 and this Court's precedents.

c...

To continue reading

Request your trial

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT