QC-MDPC Key Encapsulation for Quantum-Resistant Encryption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Public key cryptosystems are vulnerable to attacks from adversaries equipped with quantum computational resources, particularly those using RSA-based or ECC-based systems, which can compromise security by efficiently solving problems like factoring large integers or finding discrete logarithms.
Innovation Solution
Implementing a key encapsulation mechanism (KEM) using the McEliece cryptosystem with a Quasi-Cyclic Medium Density Parity Check (QC-MDPC) code, which generates a public key securely and is resistant to key recovery attacks and Adaptive Chosen Ciphertext Attacks (CCA2) without requiring CCA2 conversion techniques, ensuring security against both classical and quantum adversaries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If RSA-based or ECC-based public key cryptosystems are used, then key encapsulation and decryption can be performed, but security is compromised against quantum computational attacks
Solution Approach 1:
The patent changes the mathematical foundation of the cryptosystem from RSA/ECC to McEliece with QC-MDPC codes, fundamentally altering the problem space from factoring/discrete logarithms to coding theory problems that are quantum-resistant. This parameter change in the underlying mathematical structure provides security against quantum attacks while maintaining public key functionality.
2Reliability
If McEliece cryptosystem with QC-MDPC code is implemented, then security against quantum adversaries is achieved, but public key size is reduced compared to other implementations
Solution Approach 1:
The patent segments the public key into structured components based on the QC-MDPC code properties, organizing the parity check matrix H with specific quasi-cyclic structure. This segmentation allows for more efficient representation and transmission of the public key while maintaining the security properties of the full McEliece system.
Solution Approach 2:
The patent changes the code parameters to use quasi-cyclic medium density parity check structures, which optimize the balance between key size and security. By carefully selecting the code length n, dimension k, and density properties of H, the system achieves smaller key sizes compared to traditional McEliece implementations while maintaining quantum resistance.
3Reliability
If CCA2 conversion techniques are used to achieve security, then security against adaptive chosen ciphertext attacks is provided, but computational resources and complexity increase
Solution Approach 1:
The patent extracts and removes the need for CCA2 conversion techniques by directly implementing the McEliece cryptosystem with QC-MDPC codes in a way that provides inherent CCA2 security. This eliminates the additional computational overhead and complexity of conversion schemes like Fujisaki-Okamoto while maintaining the required security level.
Solution Approach 2:
The system achieves CCA2 security through the inherent properties of the QC-MDPC code structure and the specific key generation and encryption processes, without requiring external conversion techniques. The cryptosystem serves its own security needs through its mathematical structure, eliminating the need for additional protective layers.
Data Source
AI summary
In a general aspect, a key encapsulation mechanism is used in a communication network. In some aspects, an error vector derivation function is applied to a random value to produce an error vector, and a plaintext value is obtained based on the random value. The error vector and the plaintext value are used in an encryption function to produce a ciphertext, and a key derivation function (KDF) is applied to the random value to produce a key derivation function output that includes a symmetric key and a confirmation value. The symmetric key is used to generate an encrypted message based on an unencrypted message. The ciphertext, the confirmation value, and the encrypted message are provided for transmission in a communication network.


