AN EW S YMMETRIC H OMOMORPHIC F UNCTIONAL E NCRYPTION OVER A H IDDEN R ING FOR P OLYNOMIAL P UBLIC K EY E NCAPSULATIONS Randy Kuang, Maria Perepechaenko, Ryan Toth Quantropi Inc. Ottawa, Canada {randy.kuang, maria.perepechaenko, ryan.toth}@quantropi.com ABSTRACT This paper proposes a new homomorphic functional encryption using modular multiplications over a hidden ring. Unlike traditional homomorphic encryption where users can only passively perform ciphertext addition or multiplication, the homomorphic functional encryption retains homomorphic addition and scalar multiplication properties, but also allows for the user’s inputs through polynomial variables. The homomorphic encryption key consists of a pair of values, one used to create the hidden ring and the other taken from this ring to form an encryption operator for modular multiplication en- cryption. The proposed homomorphic encryption can be applied to any polynomials over a finite field, with their coefficients considered as their privacy. We denote the polynomials before homomorphic encryption as plain polynomials and after homomorphic encryption as cipher polynomials. A cipher polynomial can be evaluated with variables from the finite field, GF(p), by calculating the monomials of variables modulo a prime p. These properties allow functional homomorphic encryption to be used for public key encryption of certain asymmetric cryptosystems, such as Multivariate Public Key Cryptography schemes or MPKC to hide the structure of its central map construction. We propose a new variant of MPKC with homomorphic encryption of its public key. This variant simplifies MPKC central map to two multivariate polynomials constructed from polynomial multiplications, applying homomorphic encryption to the map, and changing its decryption from employing inverse maps to a polynomial division. We propose to use a single plaintext vector and a noise vector of multiple variables to be associated with the central map, in place of the secret plaintext vector to be encrypted in MPKC. We call this variant of encrypted MPKC, a Homomorphic Polynomial Public Key algorithm or HPPK algorithm. The HPPK algorithm holds the property of indistinguishability under the chosen-plaintext attacks or IND-CPA. The overall classical complexity to crack the HPPK algorithm is exponential in the size of the prime field GF(p). We briefly report on benchmarking performance results using the SUPERCOP toolkit. Benchmarking results demonstrate that HPPK offers rather fast performance, which is comparable and in some cases outperforms the NIST PQC finalists for key generation, encryption, and decryption. Keywords Homomorphic Functional Encryption · Post-Quantum Cryptography · Public-Key Cryptography · PQC · Key Encapsulation Mechanism · KEM · Multivariate Public Key Cryptosystem · MPKC · PQC Performance. 1 Introduction Homomorphic encryption was first proposed by Rivest et al. in 1978 [1], one year after filing the patent for the RSA public key cryptography [2]. Homomorphic encryption commonly refers to privacy encryption for computation in an encrypted mode, without knowing the homomorphic key and the decryption procedure. This is noticeably different from the cryptographic algorithms used to encrypt data for secure communications or storage with public key mechanisms such as RSA [2] and Diffie-Hellman [3], and Elliptic Curve Cryptography [4, 5] to establish the shared key for symmetric encryption using algorithms as Advanced Encryption Standard or AES. arXiv:2301.11995v1 [cs.CR] 27 Jan 2023