• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!


Activity Tracking 18

Page history last edited by Edward M. Cheung 11 years, 6 months ago

Student's name

1. Cheung Chun Kit Edward Michael (CUID: 1155030725)
2. Lo King (CUID: 1155031002)
3. Liu Nga Ting Emily (CUID: 1155030244)



19. Cryptography


Poster: http://erg2013.pbworks.com/w/file/61857570/engggroup18.pdf


Welcome to your learning page. This page is for you to keep a register of your learning history.


Tutor Objective Activities Date Comment

Mr.Junlin Yu

Review on the beginning of the project Discussion on how to deal with the project.
We will first research on some cryptography methods and understand how they work. Second, we will try to use Matlab to practise those methods.
  Get some ideas about the topic Research on some cryptography methods. 15/11

We found a video called "Crypto I: making cryptography and linear algebra fun!" while searching on Youtube and jogged down three simple ciphers: Caesar, Affine and Hill for further research. As the algorithm they involve are really simple, we are deciding to use Caesar and Affine Ciphers in our introduction, in order to let our audience have an idea about what cryptography is. We may have more explanations for Hill Cipher since it involves matrix which is more related to our course.

Moreover, we searched for some information about McEliece Cryptosystem. However, we can only get a brief idea about what it is on Wikipedia and little understanding on how we can make it (but still confusing).


Prepare information about the 3 simple ciphers.

Familiarize with Matlab. 

Prepare algorithms and examples.

Try to use Matlab. 


- Decided to briefly introduce Caesar and Affine Ciphers.

- More explanations for Hill Cipher, i.e. demonstrate both encryption and decryption.

- Briefly introduce the concept of McEliece Cryptosystem - public key and private key.

  Start preparing the poster Review the information prepared and discuss the design of poster.  30/11 We decided to have a simple design for the poster - less graphics but clear information. Poster design will be prepared on next Thursday. The Powerpoint for presentation (if needed) will be prepared in the weekend before presentation.


Caesar Cipher

(       x              +              β      )       mod 26            =              y

plaintext letter                integer constant                      ciphertext letter

Example may be used:


ENGINE [5, 14, 7, 9, 14, 5]

Cipher Key:     β = 1


[18,1,20,22,1,18] RATVAR



To decrypt the message,

x = ( y - β ) mod 26


Reference: http://mathworld.wolfram.com/CaesarsMethod.html


Affine Cipher

(αx + β)   mod 26    =      y

Example may be used:


ENGINE [5, 14, 7, 9, 14, 5]

Cipher Key:     α = 11 and β = 13

* α has to be relatively prime to 26 and β has to be in between 0 and 25


[16,11,12,8,11,16] PKLHKP


To decrypt the message,

there exists an interger m such that

αA = 26m + 1     [     which is also A = α-1 (mod 26)     ]

i.e. 11A = 26m + 1

In this case, we have A = 19 for the smallest integer m


x = ( A(y - β) ) mod 26


Reference: http://www.math.cornell.edu/~kozdron/Teaching/Cornell/135Summer06/Handouts/affine.pdf


Hill Cipher

Example may be used:


INFORMATION [9, 14, 6, 15, 18, 13, 1, 20, 9, 15, 14]

Cipher Key:

CUHK [3, 21, 8, 11]



                                                                  [     3     21     ]

Matrix of the cipher key, A     =     [                      ]

                                                                  [     8     11     ]


                                                                    [     9     14     6     15     18     13    ]

Matrix of the message, X     =     [                                           ]

                                                   [     1     20     9     15     14     0     ]



                                                  [     22     20     25     22     10     13     ]

Y     =     AX mod 26     =     [                                                               ]

                                                  [     5       20     17     25     12     0        ]

That is,



To decrypt it,

Gauss-Jordan Elimination is applied to find the decrypt matrix B such that BA = I (mod 26)

               [     3     25     ]

B     =     [                      ]

               [   12     15    ]

Therefore, BY = X



Reference: http://massey.limfinity.com/207/hillcipher.pdf



Public-key cryptography

- consist of two keys: one may be widely available; another is only known by the recipient(usually)


1. Public-key encryption - sender encrypts the message with public key and sends; recipient decrypts the encrypted message with private key

2. Digital signatures - sender signs its message with private key; the public verify its identity by decrypting the message with public key


Example: McEliece Cryptosystem (discuss the encryption only)


- select a binary (n, k)-linear code which can correct t errors

- generate a k x n matrix G

- select a random binary non-singular k x k matrix S

- select a random n x n permutation matrix P which has a single 1 in each row and column and 0's everywhere else

--> Private key: (S, G, P)

- G' = SGP

--> Public key: (G', t)



- convert its message to a binary string m of length k

- select a random binary vector e of length n with t 1s

- encrypted message y = mG' + e


*Only public key, n, k and t are known by public.







Comments (1)

sidjaggi said

at 4:16 pm on Nov 18, 2012

ok. if you're still having trouble with the mceliece cryptosystem, please come talk to me during/after class.

You don't have permission to comment on this page.