Cryptosystems Journal animated header graphic

The Mathematics of Modern Computerized Cryptography


Cryptography has been used for thousands of years to provide security for messages. It is only during the twentieth century that encryption came to be viewed as essentially a mathematical process.
 
Much of this change can be traced back to Professor Lester S. Hill's work which was published in the American Math Math Monthly. In 1929 he published the article "Cryptography in an Algebraic Alphabet".
 
In 1931 Hill published an expanded article entitled "Concerning Certain Linear Transformation Apparatus of Cryptography". Hill's work used integers to represent the letters. Hill's cryptosystem stores these integers in vectors. Hill's cryptosystem defines matrix by vector multiplication as the encryption and decryption operations.
 
What Hill did not realize is that additional cryptographic strength could be obtained by having a prime number of symbols in the alphabet. This allowed processing to occur in a Galois Field. Professor Rodney Cooper published this idea in Cryptologia under the title "Linear Transformations in Galois Fields and their Application to Cryptography".
 
I recommend the LinkedIn Group "Cryptographers and Cryptanalysts"
(which, full disclosure: I founded in May 2011, and continue to manage).
My group can be found at https://www.linkedin.com/groups/3901854/
and is the largest cryptography group on LinkedIn
(now with 17,000+ members worldwide as of 2026),
and is the BEST because it is LASER-FOCUSED
on ONLY CRYPTOGRAPHIC topics!
 
If you are looking for more recent MATH-based cryptographic information:
"An interesting example at the intersection of Matrix Mathematics and Cryptography
(and how Artificial Intelligence can write programs)"
by Tony Patti, 20 July 2025 (Version 2.5, 186 page PDF)

My paper explores and implements Galois Field Affine Transformations.
Both Microsoft Copilot and Google Gemini are utilized to create
working cryptosystems in six different languages: PHP, Rust, "C", Python, Java, Go (Golang).