GeMSS (Great Multivariate Short Signature) [1] is a multivariate based signature scheme [3]. It has one of the smallest signature and private key sizes, but has a relatively large public key. It uses the Hidden Field Equations (HFE) with minus and vinegar modifiers (HFEv-) [4]. Overall GeMSS has an optimal private key size (16 bytes for 128 bit security and 32 bytes for 256 bit security) and one of the most signature sizes of just 33 bytes. Unfortunately, like other multivariant methods, it produces a relatively large public key: 352,188 bytes (for 128 bit security) and 1,237,964 bytes (for 192-bit security). At present, it is a finalist for the alterative digital signature for the NIST PQC (Post Quantum Cryptography) competition. Overall the HFEv- method can only be used for digital signatures as there are more variables than equations. In this case we will implement GeMSS 128 can which has parameters of \((q, n, v, D, a)\) and which map to (2, 174, 12, 513, 12).
Related: [Kyber KEM][Kyber KEX][Dilithium Dig Sig Speed][Factoring signature (ECC)][Factoring signature (Logs)][Falcon Digital Signature][Rainbow Digital Signature][Dilithium Digital Signature][SPHINCS+][GeMSS]