020509: Misprint in homework 3: in problem 5 it should say z_{i} = g^{Q(i)} mod p (not mod q).
020506: It is now possible to reserve a time to present homework set 2. If you have collaborated in a group on a most of the problems then it is OK for the group to book a time together, but please indicate everybodys name in that case. It is of course perfectly OK to come individually as well.
020503: Homework set 3 is available now. The pseudo random sequences mentioned are found in thye Homework section below.020429: Misprint in Stinson, 2nd edition. Page 105, example 3.5, the first polynomial should be x^{6}+x^{4}+x+1. (Earlier suggested change is not correct. The bitstring should be 01010011 as printed).
See comments on homework 2 below regarding square roots of large
numbers and a misprint in Wiener's algorithm.
Also a test case for Sha-1 with
10 bits per word is available among the files for homework 2.
020422:
DES/AES-winners:
The fastest DES-implementation was written by Tomas Oppelstrup and the
encryption speed for large inputs on tcs33 is about
4.6*10^{6} bytes/second. The files
des.c
and data2.h constitute the
implementation. The program
makedata2.c was used to
construct data2.h.
The fastest AES-implementation was written by Jonas Sjöstrand and the
encryption speed for large inputs on tcs33 is about
17*10^{6} bytes/second.
The files
aes.c,
common.c,
common.h,
cryptbuffer.c, and
cryptbuffer.h
constitute the
implementation.
About homework 2
A course committee with Leo Korinth and Jon Larsson has been formed (see 020325 below).
Example 6.6 in Stinson (2nd edition) is the example mentioned in problem 7 on homework set 1.
Homework sets 2 and 3 will have deadlines 2 May and 16 May respectively.
020325:
I should have brought this up before Easter break: We need to form a
course committee (kursnämnd). Either we will do this at the first
lecture after Easter or (which I would strongly prefer) we could try
to do it now electronically. Volunteers are welcome! Email
migo@nada.kth.se. You can also nominate somebody, but then it's a good
idea to ask them first.
There are at least two good reasons to have a committee:
About homework 1
Also, be aware that in order for your algorithm to be in the "DES/AES-competition" it has to be turned in on time. I will think about exactly how this should be done.
Homework set 1 was handed out 20 Mar 2002.
Files related to the Geheim-Schreiber: the plaintext/ciphertext pair, the second ciphertext, and a C-implementation as well as a short description of the Geheim-Schreiber.
The file unknown contains a ciphertext enciphered in some way.
For DES/AES you may want to use gcc -O4 or some other optimizing compiler. The maximum time mentioned in the homework set is hereby extented to 10 seconds.
Files related to DES: s1 s2 s3 s4 s5 s6 s7 s8 ip p esel pc1 pc2 desexempel
Files related to AES: subbytes aesexempel. Also, FIPS-197 (see links at the bottom of the page) contains per round traces of AES-encryptions which is helpful for debugging purposes.
Homework set 2 was handed out 18 Apr 2002, and is also available in postscript.
Files related to homework2:
N,
e
This is a test case
for Sha-1 with 10 bits per word. Please let me know if you think the
test case might be in error.
Homework set 3 was posted here 3 May 2002.
Files related to homework3: ser1, ser2, ser3, ser4, ser5
As an alternative, there is "Menezes et al.: Handbook of applied cryptography". This book is available electronicly. Visit its homepage. Study the copyright notice. Note that, regardless of the copyright notice, you may not use a printer at KTH to print out a copy of this book.
Week | Topics |
---|---|
11 | Some classical cryptosystems and cryptanalysis. The notion of security. Provably secure cryptosystems. Basic information theory and entropy. Block ciphers. |
12 | The DES and AES block ciphers. Attacks. Linear and differential cryptanalysis. |
16 | Hash functions, MACs, birthday attacks. Public key cryptography. RSA: definition, key generation, efficiency. Other systems. |
17 | More public key cryptography. Signature schemes. |
18 | Identification schemes. Zero knowledge proofs. |
19 | Guest lecure. Pseudo random number generators. |
v11 | Mån 11/3 | Tis 12/3 | Ons 13/3 | Tor 14/3 | Fre 15/3 |
---|---|---|---|---|---|
10:00 | F Krypto E2 | ||||
11:00 | |||||
12:00 | |||||
13:00 | F Krypto E2 | F Krypto E2 | |||
14:00 |
v12 | Mån 18/3 | Tis 19/3 | Ons 20/3 | Tor 21/3 | Fre 22/3 |
---|---|---|---|---|---|
10:00 | F Krypto E2 | ||||
11:00 | |||||
12:00 | |||||
13:00 | F Krypto E2 | F Krypto E2 | |||
14:00 |
v16 | Mån 15/4 | Tis 16/4 | Ons 17/4 | Tor 18/4 | Fre 19/4 |
---|---|---|---|---|---|
10:00 | F Krypto E2 | ||||
11:00 | |||||
12:00 | |||||
13:00 | F Krypto E2 | F Krypto E2 | |||
14:00 |
v17 | Mån 22/4 | Tis 23/4 | Ons 24/4 | Tor 25/4 | Fre 26/4 |
---|---|---|---|---|---|
13:00 | F Krypto E2 | F Krypto E2 | |||
14:00 |
v18 | Mån 29/4 | Tis 30/4 | Ons 1/5 | Tor 2/5 | Fre 3/5 |
---|---|---|---|---|---|
13:00 | F Krypto E2 | F Krypto E2 | |||
14:00 |
v19 | Mån 6/5 | Tis 7/5 | Ons 8/5 | Tor 9/5 | Fre 10/5 |
---|---|---|---|---|---|
13:00 | F Krypto E2 | F Krypto E2 | |||
14:00 |
v20 | Mån 13/5 | Tis 14/5 | Ons 15/5 | Tor 16/5 | Fre 17/5 |
---|