arrow
Return

Finding Bugs in Cryptographic Hash Function Implementations

delete2018-09-01
delete35
delete
OA
AI
N
Nicky Mouha *
M
M S Raunak
D
D. Richard Kuhn
R
Raghu N. Kacker
DOI:10.1109/TR.2018.2847247delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Cryptographic hash functions are security-critical algorithms with many practical applications, notably in digital signatures. Developing an approach to test them can be particularly difficult, and bugs can remain unnoticed for many years. We revisit the National Institute of Standards and Technology hash function competition, which was used to develop the SHA-3 standard, and apply a new testing strategy to all available reference implementations. Motivated by the cryptographic properties that a hash function should satisfy, we develop four tests. The Bit-Contribution Test checks if changes in the message affect the hash value, and the Bit-Exclusion Test checks that changes beyond the last message bit leave the hash value unchanged. We develop the Update Test to verify that messages are processed correctly in chunks, and then use combinatorial testing methods to reduce the test set size by several orders of magnitude while retaining the same fault-detection capability. Our tests detect bugs in 41 of the 86 reference implementations submitted to the SHA-3 competition, including the rediscovery of a bug in all submitted implementations of the SHA-3 finalist BLAKE. This bug remained undiscovered for seven years, and is particularly serious because it provides a simple strategy to modify the message without changing the hash value returned by the implementation. We detect these bugs using a fully automated testing approach.
Keywords:
Combinatorial testing
cryptographic algorithm
cryptographic hash function
metamorphic testing
SHA-3 competition
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

IEEE Transactions on Reliability cover
IEEE Transactions on Reliability
IF:
5.7
Papers:
2.7K
Citations:
8.5K

Organization

Loyola University Maryland cover
Loyola University Maryland
Scholars:
409
Papers: 448
Citations: 473
N
national institute of standards & technology (nist) - usa
Scholars:
9.7K
Papers: 9.0K
Citations: 4