What do most attacks on hash functions involve?

A. Finding Collisions
B. Pre-generating millions of hashes and comparing them to the plain text that generates it.
C. Really good random guessing.
A and B

A and C

B and C

A. Finding Collisions

The correct answer is A. Finding Collisions.

Most attacks on hash functions involve finding collisions, which means finding two different inputs that produce the same hash value. In other words, attackers try to find two plaintext messages that result in the same hash output. This can be exploited by attackers to create fake messages or modify existing ones without changing the corresponding hash value. Finding collisions is considered a security weakness in hash functions, and various cryptographic attacks have been developed to exploit this weakness.

Option B, pre-generating millions of hashes and comparing them to the plain text that generates it, is not a common attack on hash functions. It would be impractical to pre-generate and store millions of hashes for comparison purposes. Additionally, hash functions are designed to be computationally efficient and have a fixed output size, making it infeasible to compare all possible hash values.

Option C, really good random guessing, is not a viable attack on hash functions. Hash functions generate a seemingly random output for any given input, making it extremely difficult to guess the original plaintext message based solely on the hash value. The security of hash functions relies on the difficulty of reversing the hash function to determine the input value.

Therefore, the correct answer is A. Finding Collisions.

The correct answer is A. Finding Collisions.