Posted on

NUS Computing Review: CS4236 Cryptography Theory and Practice

CS4236 focuses on the various forms of ciphers and also on cryptanalysis. I took this module as a technical elective (depth). Basically you will learn deep into how messages can be encrypted and how we can break encrypted messages.

I was surprised there are no tutorials, but it seems that some level 4000 modules have no tutorials. Rather, the lecturer goes through some past year questions when he gets the time. There is certainly some math required for this module. The notes are comprehensive enough but remember to read them carefully and understand well.

The module is graded based on 3 take-home assignments, a mid-term test, a group project and a final exam. The weightage is as follows:

– Assignment 1: 6%

– Assignment 2: 7%

– Assignment 3: 7%

– Term-test (Quiz): 20%

– Project: 20%

I really liked the assignments as they were hands-on (beware: the first 2 took some considerable time as well). The mid-term test was easy. The group project was incredibly time-consuming in which we built a mock-up of a smart contract system modelled after Ethereum.

The final exam was easy as well. Practicing past year papers is key to be able to do well as the final paper is generally more about application of the techniques/concepts. Both the mid-terms and final exams were open book which was of great help!

Head over to our Shop for more module content!