Security Mechanisms are used to...
... security attacks
Classical def: the art of writing or solving codes
Modern def: scientific study for the digital transmission, transaction, and distribution computations
Passive: Eavesdropping or monitoring transmissions (harder to detect)
Active: manipulating data
Kerchoff's principle asserted that the security of a given scheme should not rely on the secrecy of the algorithm employed
Mono alphabetic means that it uses the same substitution over the entire message
Uses an invertible square matrix as the key
Shift and substitution cipher
Techniques
d = gcd(a, b); then d divides a, b and r where a = qb + r
Sample Extended Euclidian AlgorithmDivisible: a | b means a divides be with zero remainder
Division Algorithm: a = qn + r
$a \equiv b\ (mod\ m)$ means:
$\rightarrow m\ |\ (a - b)$
$\rightarrow a = b + k\cdot m$
If we have 3 bits to work with and we try to add five and four we will not have enough bits to store the answer of 9. This is the problem of finite fields. We use modular arithmetic to deal with this.
Group (G, $\cdot$) - a set of elements with a binary operation denoted by $\cdot$ that associates to each ordered pair (a, b) of elements in G an element (a $\cdot$ b) in G, such that:
Useful property of these polynomials for $GF(2^n)$ which makes the 'overflow' arithmetic much easier:
Vulnerable to time-memory tradeoff attack
A padding strategy is required for block ciphers whose last block is not full. Two possible strategies are: