Category Archives: cry
Revision Notes
Public-key cryptography Keys can come in pairs; an encryption key and a decryption key. Can’t generate one key from the other. Knapsack Algorithms Knapsack algorithms came first. Based off the knapsack problem, an NP-complete problem: Given a pile of items … Continue reading
Public Key Encryption
You probably know a bit about public key encryption. Authenticity of Data Some schemes allow both public and private keys to be used for encryption and decryption. Thus to send a message and guarantee authenticity (Ka is public key, Ka^-1 … Continue reading
Zero knowledge protocols
Zero-knowledge protocols are ways of proving ‘I have this secret’ without giving it away. Example is the cave with a magic door to get through the passage and come out the other side, or something. You can use this to … Continue reading
Power Attacks
Note: Clearly the lectures were performed out of order, as he talked about the previous lecture discussing ‘timing properties’ which is not the order on the website. I was absent from the ‘timing properties’ lecture, so don’t have any notes … Continue reading
Non-standard search approaches to design
Local optimisation – Hill Climbing We did a very small amount of this in ADS; it was a guest lecture where the guy talked about genetic algorithms. The problem with searching using hill climbing is that sometimes you can get … Continue reading
Attacking the Implementation (and timing attacks)
So far, we have always assumed that a cryptographic system is a purely “mathematical” black box and input/output is all that can be viewed/analysed. However that isn’t how it works in the real world; they’re executed on physical devices. These … Continue reading
Brute Force and Sophistication
Sources of power for brute force Supercomputing Dedicated crypto-hardware Re-programmable hardware The web Special Purpose Hardware Breaking enigma code Expensive Lots of stuff in this lecture that is just random background; stuff about cracking RC5 and DES using the web … Continue reading
Divide and Conquer Attacks
Divide and Conquer attacks exploit approximate linear relationships between function inputs and its outputs. Linearity is bad. Geffe Generator 3 feedback registers 1 feedback register selects between the other 2 Z = (a & b) + (not(a) & c) Flaw … Continue reading
Stream Ciphers part A
What are Stream Ciphers Using a key ‘stream’ to encode plaintext. For example the Vernam Cipher works by generating a random bit stream and then XORing that stream on a bit by bit basis. The same bit stream can be … Continue reading