-
P is a finite set of possible plaintexts;
-
E is a finite set of possible ciphertexts;
-
K is a finite set of possible keys;
-
For each k ∈ K, there is an encryption rule ek ∈ ε corresponding decryption rule dk ∈ D. each ek: P→ E and dk: E → P are functions such that:
d_k(e_k(x)) = x
for every element plain text x ∈ P.
-
-
P = E = K = [0:26]
-
for k in K define:
e_k(x) = (x + k) % 26
andd_k(y) = (y - k) % 26
-
example:
wewillmeetatmidnight
andk = 11
encrypt tohphtwwxppelextoytrse
-
-
-
P = E = [0:26]
-
K consists of all possible permutation of the 26 symobols [0:26]
-
for each permutation π ∈ K, define:
e_π(x) = π(x)
andd_π(y) = arcπ(y)
-
example:
wewillmeetatmidnight
andk = 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 1 2 3 4 5 6 7 8 9 10
encrypt tohphtwwxppelextoytrse
-
-
-
P = E = [0:26]
-
K = {(a, b) ∈ [0:25] * [0:26] : gcd(a, 26) = 1}
-
for K = (a, b) ∈ K, define:
e_k(x) = (ax + b) % 26
andd_k(y) = arca(y - b)
-
example:
wewillmeetatmidnight
andk = 1 11
encrypt tohphtwwxppelextoytrse
-
-
-
P = E = K = [0:26] ^ m
-
k = (k1, k2, k3, ..., km) ∈ K
-
for k ∈ K, define:
e_k(x1, x2, ..., xm) = (x1, x2, ..., xm) + (k1, k2, k3, ..., km) % 26
andd_k(y1, y2, ..., ym) = (y1, y2, ..., ym) - (k1, k2, k3, ..., km) % 26
-
example:
thiscryptosystemisnotsecure
andk = cipher
encrypt tovpxzgiaxivwpubttmjpwizitwzt
-