A Public Key Block Cipher Based on Multivariate Quadratic Quasigroups
Danilo Gligoroski, Smile Markovski, Svein Johan Knapskog

TL;DR
This paper introduces a novel public key block cipher based on multivariate quadratic quasigroups, achieving speeds comparable to symmetric ciphers and significantly outperforming RSA on FPGA platforms.
Contribution
The paper presents a new public key algorithm utilizing multivariate quadratic quasigroups that is fast, parallelizable, and suitable for encryption and signatures without message expansion.
Findings
Decryption in less than 11,000 cycles on a standard CPU.
Encryption throughput of 44.27 Gbps on FPGA clusters.
Over 10,000 times faster than comparable RSA implementations.
Abstract
We have designed a new class of public key algorithms based on quasigroup string transformations using a specific class of quasigroups called multivariate quadratic quasigroups (MQQ). Our public key algorithm is a bijective mapping, it does not perform message expansions and can be used both for encryption and signatures. The public key consist of n quadratic polynomials with n variables where n=140, 160, ... . A particular characteristic of our public key algorithm is that it is very fast and highly parallelizable. More concretely, it has the speed of a typical modern symmetric block cipher - the reason for the phrase "A Public Key Block Cipher" in the title of this paper. Namely the reference C code for the 160-bit variant of the algorithm performs decryption in less than 11,000 cycles (on Intel Core 2 Duo -- using only one processor core), and around 6,000 cycles using two CPU cores…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
Topicsgraph theory and CDMA systems · Polynomial and algebraic computation · Mathematics and Applications
