Merkle-Hellman
Merkle-Hellman (MH) was one ofearliest public key cryptosystems. Although its ideaselegant,far simpler than RSA,has been broken. MHbased onsubset sum problem (a special case ofknapsack problem): givenlistnumbers andthird number, which issum ofsubsetthese numbers, determinesubset. In general, this problemknownbe NP-hard; however, theresome 'easy' instances which can be solved efficiently. The Merkle-Hellmanbased on transforming an easy instance intodifficult instance,back again. It was broken by Shamir, not by attackingknapsack problem, but rather by breakingconversion from an easy knapsack tohard one. The algorithmas follows:KEY GENERATION - To encrypt n-bit messages, choosesuperincreasing sequence
- w = (w1, w2, ..., wn)
- β = (β1, β2, ..., βn)
ENCRYPTION - To encrypt an n-bit message
- α = (α1, α2, ..., αn) ,
- .
DECRYPTION - Calculate s = r-1 (mod q),c' = c*s (mod q). The knapsack problem (w, c') can be solvedlinear time.
