Please help me solve following problem in Crytography 1 Use
Please help me solve following problem in Crytography
1. Use SDES to decrypt the ciphertext y = 1111 1111 using the key k = 11 1111 1111.
2. A hash algorithm which works by finding the exclusive OR of all the input blocks can be broken easily. Assuming a block size of 4 bits:
(a) Find two different inputs (consisting of any number of blocks) which hash to the same value.
(b) Find an input consisting of at least three blocks which hashes to 1011.
(c) Find an input consisting of at least two blocks which hashes to the same value as 1011 0001 1101
Solution
SDES ALGORITHM: S-DES depends on the use of a 10-bit key shared between sender and receiver. From this key, two 8-bit subkeys are produced for use in particular stages of the encryption and decryption algorithm. Figure C.2 depicts the stages followed to produce the subkeys. First, permute the key in the following fashion. Let the 10-bit key be designated as (k1, k2, k3, k4, k5, k6, k7, k8, k9, k10). Then the permutation P10 is defined as: P10(k1, k2, k3, k4, k5, k6, k7, k8, k9, k10) = (k3, k5, k2, k7, k4, k10, k1, k9, k8, k6) P10 can be concisely defined by the display: P10 3 5 2 7 4 10 1 9 8 6 This table is read from left to right; each position in the table gives the identity of the input bit that produces the output bit in that position. So the first output bit is bit 3 of the input; the second output bit is bit 5 of the input, and so on. For example, the key (1010000010) is permuted to (1000001100). Next, perform a circular left shift (LS-1), or rotation, separately on the first five bits and the second five bits. In our example, the result is (00001 11000). Next we apply P8, which picks out and permutes 8 of the 10 bits according to the following rule: P8 6 3 7 4 8 5 10 9 The result is subkey 1 (K1). In our example, this yields (10100100) We then go back to the pair of 5-bit strings produced by the two LS-1 functions and perform a circular left shift of 2 bit positions on each string. In our example, the value (00001 11000) becomes (00100 00011). Finally, P8 is applied again to produce K2. In our example, the result is (01000011).
