Related Experiment Video
Updated: Jan 24, 2026

Harvesting Venom Toxins from Assassin Bugs and Other Heteropteran Insects
Published on: April 21, 2018
Finding Bugs in Cryptographic Hash Function Implementations
Nicky Mouha1, Mohammad S Raunak2, D Richard Kuhn3
1National Institute of Standards and Technology. nicky.mouha@nist.gov.
Abstract:
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 NIST 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.
Related Concept Videos
Finding the Center of Gravity
Nursing Implementation
The five steps to implementing effective nursing care include reassessing the patient, reviewing and revising the existing nursing care plan, organizing the resources and care delivery, anticipating and preventing complications, and implementing nursing interventions.
Respiratory System Abnormal Finding I: Inspection and Percussion
Inspection Findings
During an inspection, several findings may suggest the presence of respiratory distress or disease. Pursed-lip breathing, where exhalation is slowed by...
Cardiovascular System Abnormal Findings I: Inspection and Palpation
Abnormal findings observed during an inspection
Finding Electric Potential From Electric Field
Cardiovascular System Abnormal Findings II: Auscultation
Abnormal Heart Sounds
Gallops:

