# 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