Tentative Marking Scheme for Programming Exercise 1

Tentative Marking Scheme for Programming Exercise 1

Note: I have added one penalty for restricted OFB modes, i.e., only messages of fixed or limited size were accepted! This is actually an incorrect implementation of OFB as modes of operations should work for arbitrary length message, but I have decided to only penalise those programs and not to consider them as incorrect!

The following is a guideline to how I intend to mark programming exercise 1. However, I reserve the right to changes in particular if some unforeseen problems occur.
The marking scheme is based on subtracting penalties from the possible maximum number of 80 marks.

Submission penalties:
-20 No paper submission
-20 No sources (or late submitted sources)
-10 Sources where submitted late but in time on paper

Output penalties:
-20 No intermediate output
-10 No explicit output of round keys or no output after major steps (i.e., matrix multiplication, end of round of the Feistel Cipher, etc.)
0 Full points for intermediate output after every major step + all round keys or more details (see also section on Aesthetics below)

Input penalties:
-10 If there is no interface (command line, text, or GUI), i.e., I have to input M + K + IV in the source and recompile!
-5 If I have to do some other form of tinkering with the code.
0 Full points if there is a text interface or GUI to input M + K + IV, or (my preferred option) M + K + IV can be given as command line parameters.

Correctness:
In addition to the 10 problems requested in the exercise specification, I will test each implementation with up to 8 special message-key-IV triples plus 5 message-key-IV triples randomly chosen from a set of 50 randomly created ones. The plaintext messages are not all of the same length!
-10 If OFB mode is not capable of enciphering messages between 64 and 192 bit
If there are incorrect ciphertexts I will award marks according to the table below. Moreover, I will apply penalties only up to 10 points for incorrect implementations.
max 40 Some ciphertexts are incorrect.
max 30 The majority of ciphertexts are incorrect.
max 25 All but first ciphertext are incorrect.

Unfinished Implementations:
I will award a maximum of 15 points for unfinished implementations, depending on the submitted code.

Aesthetics:
I reserve 5 points (in-between 75 and 80 only) for aesthetics. That is, every submission that does incur no penalties will automatically be awarded 75 marks; additional marks up to 80 are awarded depending on the legibility of the intermediate output. This can be seen as a tiny reward for putting additional effort into producing nicely formatted output.

Last modified: Tue Nov 25 18:20:43 GMT 2008