An implementation of a public-key cryptosystem with digital signatures on a microcomputer - Narong Wesnarat (1982)
Modern electronic communication systems present many problems in data security. One way of solving these problems is to resort to cryptographic systems. Public key cryptography with digital signatures is a new approach in cryptography which offers many advantages over conventional cryptograhic systems. The concept was introduced in 1976 and some practical systems were proposed about a year later. The most elegant system which yields digital signatures directly was proposed in 1978 by R.L. Rivest, A. Shamir and L. Adleman. This system is known as the RSA Public Key Cryptosystem. To study the feasibility of implementing the RSA public-key cryptosystem in a microcomputer-based communication system, a microcomputer using Z80-A microprocessor was designed and built. An operating system for the RSA public-key cryptosystem was written and evaluated. The result of the study is a complete working microcomputer system capable of editing the message, generating public-key cryptographic keys, encrypting and decrypting using the RSA public-key scheme. It is also able to transmit, receive and record plaintext or cliphertext using standard serial I/O interface signals. As by-products of the software development, assembly language programs to compute some useful integer arithmetic functions at very high precision were developed. These functions are: greatest common divisor, Jacobi symbol, modular exponentiation, prime number generation, pseudo-random number generation, signed-multiplication, signed-division and signed-subtraction. All these functions have accuracy up to 154 decimal digits.