What are unkeyed cryptographic hash functions?
Unkeyed cryptographic hash functions are a sub-type of the cryptographic hash functions. They take input of variable length and convert it into a fixed-length output, and the length depends on the type of the function used. The function's output is also known as MDC (modification detection code). MDC represents the digest of the data sent as the input. We can further use it to detect any changes in that data.
An unkeyed cryptographic hash function
- The sender generates a Data.txt file.
- Data.txt is sent to the unkeyed cryptographic hash function to get the MDC/Hash.
- The sender sends the unencrypted Data.txt and the hash to the receiver.
- The receiver passes the data through the same unkeyed cryptographic hash function to get the MDC/hash.
- The receiver compares MDC/hash received from the sender and calculated by them. If they are the same, this ensures that the integrity of the data is maintained.
Types of unkeyed cryptographic hash functions
The three types of unkeyed cryptographic hash functions are:
- One-way hash functions (OWHF)
- Collision-resistant hash functions (CRHF)
- Universal one-way hash functions (UOWHF)
OWHF
OWHF are one-way hash functions, meaning the input can't be calculated from the output. They satisfy
CRHF
CRHF ensures that no two inputs can produce the same output, thus avoiding collisions. They also are second preimage-resistant.
UOWHF
UOWHF serves as a replacement for the CRHF. UOWHF are universal hash functions, meaning that the actual hash function is randomly selected from a list of collision-resistant hash functions at the execution time. This makes UOWHF functions less expensive and weaker compared to CRHF.
Pros
- Data Integrity: Data integrity is maintained as the receiver can detect any changes to the data by comparing the MDC received from the sender with the MDC generated by them.
- Security: Most unkeyed hash functions are secure as they are one-way, deterministic, pre-image resistant, and second pre-image resistant. These features make them very secure and reliable.
Cons
- Authentication: It is impossible to figure out the sender of the message.
- Speed: It is computationally intensive to calculate the input hash using unkeyed cryptographic hash functions.
Free Resources