Assignment - Simplified Data Encryption Standard (S-DES)

For this assignment, this single byte is the plaintext input:

01011101

You will operate S-DES by hand to produce the ciphertext (encrypted) output of this plaintext input.

Print out the S-DES encryption template (some browsers don't support the needed table border coloring on this page, here is an alternative link to a pdf printout that shows the colors). Enter the above input at the top in pencil and follow the instructions down through the steps till you have derived and written the encrypted result at the end of the template. The template seeks to reduce the algorithm to a step-by-step recipe, to guide though not to explain.

Now print out the S-DES decryption template (alternative link to pdf with color) Enter as its ciphertext input the encrypted result from above. Follow the instructions down through the steps till you have derived and written the decrypted result at the end of the template. Because the decryption process is the inverse of the encryption process, this output must be identical to the input of the above encryption exercise. If it is not, check and correct your work.

The procedures in these templates can be related to the diagram of S-DES operation:

The encryption template embodies the downward-flowing steps depicted in the left column, while the decryption template embodies the upward-flowing steps of the right column. The template employs color coding, bordering the boxes dealing with the steps above in:

IP or IP-1 blue
fk red
SW green
fk red
IP-1or IP blue

I have pre-calculated keys K1 and K2, which appear as givens in the templates.

A completed sample using a different plaintext input than assigned here is provided. It consists of an encryption sample (alternative link to pdf with color) and a separate but matching decryption sample (alternative link to pdf with color) using the assigned templates. Another sample against which you could check your work is provided in the form of an S-DES example and corresponding S-DES instructions by John Holte of Gustavus Adolphus College. As background be sure to read the Elements of S-DES page provided on this website.

This is an on-paper assignment. Perform your work in pencil on the two template printouts. You will know unmistakably whether or not you got the assignment right. Do not turn it in unless/until it is right. If the output at the bottom of your decryption template does not match the input at the top of your encryption template, you didn't get it right. In that case go back over it very carefully till you spot the problem(s). You will probably have such problems. Work very carefully and attentively to avoid them. An ounce of prevention is worth a pound of cure.

I will grade these by first looking at the final output and verifying it matches the input. I will then spot-check your work at various intermediate points along the way (if there are any intermediate errors but your final output is correct, it means your final output is bogus). I don't want to see imperfect assignments because I cannot devote the time to the detailed examination it would take to indulge in partial credit on this assignment.

When (and only when) the templates are finished and correct, turn them in.