Homomorphic Encryption Scheme for Bilinear Forms
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing homomorphic encryption schemes face challenges in supporting both addition and multiplication operations on encrypted data without significantly increasing ciphertext size, and maintaining security based on well-established hardness assumptions.
Innovation Solution
A public-key encryption scheme based on the learning with errors (LWE) problem, which supports polynomially many additions and one multiplication, using a trapdoor function to encrypt matrices and allowing for efficient decryption while maintaining security based on the hardness of LWE.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If homomorphic encryption schemes support both addition and multiplication operations on encrypted data, then the functionality and versatility of the encryption system is improved, but the ciphertext size grows significantly
Solution Approach 1:
The encryption scheme segments the plaintext space into structured matrix forms and processes operations at the matrix level rather than element level. This segmentation allows batch processing of multiple plaintext elements within a single ciphertext structure, improving operational versatility without linearly increasing ciphertext size.
Solution Approach 2:
The scheme transitions from scalar or vector operations to matrix operations, adding a dimensional layer to the encryption space. By operating on matrices directly, the system achieves bilinear form computations and supports both addition and multiplication without the ciphertext size growing proportionally to the number of operations.
2Adaptability or versatility
If the encryption scheme supports arbitrary number of additions and one multiplication (BGN cryptosystem), then the operational flexibility is improved, but the security basis becomes dependent on subgroup-membership problem in composite-order groups
Solution Approach 1:
The scheme changes the fundamental security parameter basis from composite-order group structures to lattice-based hardness assumptions. By working with matrices over rings and using lattice cryptography parameters, the system maintains operational flexibility while relying on more widely accepted and potentially more secure hardness assumptions.
3Adaptability or versatility
If ciphertexts are operated on together (added, multiplied) in additively homomorphic encryption schemes from lattices or linear codes, then the homomorphic functionality is improved, but the error grows and may cause incorrect decryption
Solution Approach 1:
The encryption scheme incorporates error correction mechanisms and modulus switching techniques beforehand to cushion against error accumulation. By pre-configuring the ciphertext structure with sufficient noise tolerance and using structured error distributions, the system maintains decryption correctness even after multiple homomorphic operations.
Solution Approach 2:
The scheme enables continuous homomorphic operations without requiring intermediate decryption or error correction steps. The ciphertext structure is designed to maintain validity and correctness throughout a sequence of additions and multiplications, allowing uninterrupted computation on encrypted data.
Data Source
AI summary
In one exemplary embodiment, a computer readable storage medium tangibly embodying a program of instructions executable by a machine for performing operations including: receiving information B to be encrypted as a ciphertext C in accordance with an encryption scheme having an encrypt function; and encrypting B in accordance with the encrypt function to obtain C, the scheme utilizes at least one public key A, where B, C, and A are matrices, the encrypt function receives as inputs A and B and outputs C as C←AS+pX+B(mod q), S is a random matrix, X is an error matrix, p is in integer, q is an odd prime number. In other exemplary embodiments, the encryption scheme includes a decrypt function that receives as inputs at least one private key T (a matrix) and C and outputs B as B=T−1·(TCTt mod q)·(Tt)−1 mod p.


