Here is my proposed encryption algorithm:
- Remove all low-frequency letters: Q, X, J, Z, V, K, P, B, G, F, and Y. (This is a form of lossy compression.)
- Convert each remaining letter and space into its bit code, using the table to the right. (Remember it is easy to convert between hexadecimal and binary, so use whichever is convenient.)
- Pick a 24-bit key. (For example, a random color.)
- Repeat the bits of the key across the letters.
- Use XOR to create the encrypted bits.
- Convert the bits back to letters using the table.
Example below. The key I will use is #434D8D.
1: Remove letters:anderhde
2: Convert to hexadecimal, and then bits:0934B534
0000 1001 0011 0100 1011 0101 0011 0100
3: Choose a key: The key I will use is #434D8D, which in binary is 0100 0011 0100 1101 1000 1101.
4: Write the bits of the key across the bits of the letters, repeating as necessary:
0100 0011 0100 1101 1000 1101 0100 0011
5: Use XOR to create the encrypted bits:
0000 1001 0011 0100 1011 0101 0011 0100 (Plaintext)
0100 0011 0100 1101 1000 1101 0100 0011 (Key)
0100 1010 0111 1001 0011 1000 0111 0111 (Ciphertext)
6: Convert the ciphertext bits back to hexadecimal and then letters:
- Now you try to encrypt the message ROLLER using the same key.
- Did the two R’s get encrypted to the same letter?
- Explain how this technique defeats cracking through frequency analysis. (Hint: see previous question.)
- Explain how this technique discourages cracking through trying all possible keys.
- Decrypt the following message (use the same key): RNTUSIDCTU
"Place your order now for a similar assignment and have exceptional work written by our team of experts, guaranteeing you A results."