March 05, 2018

Caesar, Affine, Hill cipher

❑ Caesar cipher
❍ C = (P+K) mod 26
❍ P = (C-K) mod 26
❍ e.g. (Encryption) K=3
abc → def

❑ Affine cipher
❍ C = (P*K1 + K2) mod 26
❍ P = ((C-k2)*1/k1) mod 26
❍ e.g. (Encryption) K=(7, 2)
abc → cjq (0*7+2=c, 1*7+2=j, 2*7+2=q)

❑ Hill cipher
❍ C = (K*P) mod 26
❍ P = (C*K^-1) mod 26
❍ e,g, (Encryption) m(matrix)=3
k = | 1 2 3 |
      | 2 1 3 |
      | 3 2 1 | 

P = | 0 3 | = | a d | = abcdef
       | 1 4 |    | b e |
       | 2 5 |    | c  f |

k11*p11 + k12*p21 + k13*p31 = 2+5 = 7
k21*p11 + k22*p21 + k23*p31 = 1+6 = 7
k31*p11 + k32*p21 + k33*p31 = 2+2 = 4
k11*p12 + k12*p22 + k13*p32 = 3+8+15 = 26 = 0
k21*p12 + k22*p22 + k23*p32 = 6+4+15 = 25
k31*p12 + k32*p22 + k33*p32 = 9+8+5 = 22

C = | 7   0 | = | h a  |
       | 7 25 |    | h z  |
       | 4 22 |    | e w |

FYI.
K^-1 = | d -b |  * 1/(ad-bc)
            | -c a |