Question
Suppose that we have a block cipher and want to use it as a hash function. Let X be a specified constant and let M
Suppose that we have a block cipher and want to use it as a hash function. Let X be a specified constant and let M be a message consisting of a single block, where the block size is the size of the key in the block cipher. Define the hash of M as Y = E(X, M). Note that M is being used in place of the key in the block cipher.
a. Assuming that the underlying block cipher is secure, show that this hash function satisfies the collision resistance and one-way properties of a cryptographic hash function.
b. Extend the definition of this hash so that messages of any length can be hashed. Does your hash function satisfy all of the properties of a cryptographic hash?
c. Why must a block cipher used as a cryptographic hash be resistant to a chosen key attack? Hint: If not, given plaintext P, we can find two keys K0 and K1 such that E(P, K0) = E(P, K1). Show that such a block cipher is insecure when used as a hash function
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started