# Encryption

To encrypt in Hill a key first needs to be chosen, this will be a square matrix which has an inverse in modular 26. For the matrix to have an inverse the determinant must be co-prime to 26.

Here are two example matrices…

(-9 mod 26) is 17 (-9+26×1), 17 is co-prime to 26

(-2131 mod 26) is 1 (-2131+26×82), 1 is co-prime to 26

Hence both these matrices are valid keys for the Hill cipher

*Co-prime means that the greatest common factor between the two numbers is 1.

If a 2 by 2 matrix is chosen for the key, the plaintext must be padded usually with an ‘X’ so that it is a multiple of 2. So for an N by N matrix the plaintext must be padded so that it that it is a multiple of N. E.G

For N=2, “CAREFUL” would become “CAREFULX”

For N=2, “SPORTS” would stay as “SPORTS”

For N=3, “CAREFUL” would become “CAREFULXX”

Once the text is a valid length, you take letters in blocks of N and convert them to a column vector. Letter ‘A’ has the value 0, ‘B’ is 1, ‘C’ is 2 … ‘Z’ is 25 etc.

Example:

, , ,

, ,

You do this for each block of N characters. Then multiply the key matrix by each column vector. You will get a new column vector which can be converted back to letters.

“CAREFUL” encodes to “EKUTSHNU” using the key matrix M_{2}

“CAREFULX” encodes to “DIOSDCCCR” using the key matrix M_{3}