Post Quantum
Cryptography
With random split of
St-Gen Codes
Cryptography
● A very old science that has existed since the roman times.
● Nowadays it is deeply integrated into everyday life.
● Just a few out of many example uses:
○ Securing online sessions (SSL)
○ Present in almost every texting application.
○ The OpenPGP standard for encrypting.
● No longer only concerned with confidentiality of information.
● Digital signatures can provide authentication and integrity.
● Cryptographic onions can be used for anonymity.
Cryptography
● Symmetric Cryptography:
○ Makes use of a single key for encryption and decryption
○ Can operate on blocks or streams of bytes
○ Most popular examples are AES, DES, 3DES
● Asymmetric Cryptography:
○ Each party must generate two different key
○ Public key is given out to encrypt incoming messages
○ Private key is kept hidden to be used for decryption
○ Can be used for other primitives such as digital signature
○ Most famous example is the RSA algorithm
Cryptographic Problems
Security is achieved through hardness of mathematical problems.
The Factorization Problem:
Given n = pq where p and q are unique prime numbers. Find p and q in polynomial
time.
The Discrete Logarithm Problem:
Given β=αa
, find a in polynomial time.
No efficient classical algorithms exist for either of the two problems.
Quantum Computers
● Classical Computers use bits to
store information.
● Always in one of two states at any
point in time (0 or 1).
● In contrast, quantum computers
have Qubits.
● Can be in two states
simultaneously (0 and 1).
● A quantum computer with two
bits can be in and act upon 4
states at the same time.
Classical Cryptography Under Quantum
Attacks
● It started with Shor’s algorithm
developed by Peter Shor in 1994.
● Can factorize a composite number
N in polynomial time.
● Demonstrated that public key
cryptography algorithms can be
broken.
What now ? (Post Quantum Cryptography)
● We need to update our current cryptographic primitives to be able to deal with
the new threat.
● Fortunately we do not have to start from scratch.
● Cryptographic classes that do not rely on vulnerable mathematical problems
already exist.
○ Code based cryptography
○ Multivariate public key cryptography
○ Lattice based cryptography
○ Hash based cryptosystems
Code based cryptography
● Builds on the concepts introduced by
Claude Shannon in 1948.
● Coding theory was developed to be able
to retrieve the original message after
transmission through a noisy channel.
● A concept that is easily adaptable to
cryptography.
● Artificial noise can be applied to a
message to hide its contents.
● The original recipient can recover the
message by knowing additional
information about the encoding scheme.
Linear Codes and List Decoding
Linear Codes
● A commonly used subfamily of block
codes.
● The original message is represented by
K, a vector of length k.
● The output is N, a new vector of length
n where k < n.
● The encoding operation is represented
by c’=Gm where G is known as the
generator matrix.
● C = c’ + e.
List Decoding Algorithm
● There are several ways to retrieve
the original message from K.
● The List decoding algorithm allows
us to recover from larger number
of errors.
● It returns several possibilities for
the original message with one
having an overwhelming
probability.
The McEliece Cryptosystem
● Code based cryptosystem proposed by McEliece in 1978.
● Many following variations and attempted improvements including Niederreiter
in 1986.
● First successful digital signature scheme is as recent as 2001.
● While requiring some modifications over the years, it remains unbroken after
near 30 years of cryptanalysis.
● Despite faster encryption and decryption procedures, never received much
popularity.
● Key size is 32 KBytes compared to 4096 bits for RSA.
Staircase Generated Codes
● In 2014, a new family of linear codes was introduced as staircase generated
codes
● Based on it, a new variation of the McEliece cryptosystem was proposed
including an encryption and signature scheme.
● The new scheme imposes restrictions on the structure of the generator matrix
allowing for more efficient list decoding algorithm.
● It also gives the sender control over the noise generated by the “noisy channel”
by defining two parameters: density and granularity.
● Encryption scheme can be adapted directly into a signature scheme using the
decryption algorithm.
Random Split of St-Gen Codes
● A successful attack using Information Set Decoding was later demonstrated.
● ISD is a technique to recover the error vector used to encrypt the message.
● Which can in turn be used for practical key recovery.
● Exposing the staircase generator matrix allows for structural attacks.
● To thwart the ISD attack a new idea is introduced to split the public generator
matrix into s randomly generated matrices.
● With the random split, the probability of a successful attack becomes negligible.
Methodology
● This project is mainly concerned with the implementation of the newly
proposed techniques for thwarting ISD attacks against St-Gen Codes.
● Several implementations will be done using multiple platforms (python, C++)
● A set of evaluation metrics must be decided on for comparison with other
solutions.
● The validity of the ISD attacks must be retested against the new
implementations.
● Concrete security parameters will be tested against the expected security level.
Project Plan
● Phase 1 : Extensive Research
○ Study existing implementations
○ Study the proposed attack and the proposed solution
○ Further research on the inner workings of McEliece, St-Gen Codes and ISD attacks
● Phase 2 : Implementation
○ Start implementation of the encryption scheme using St-Gen codes with random splits.
○ Implement the Signature scheme based on the decryption algorithm.
● Phase 3 : Validation
○ Insure that the proposed solution holds against the proposed attacks.
○ Check for any newly created security holes.
● Phase 4 : Verification
○ Compare the final implementation against existing benchmarks.
○ Demonstrate the workings for the implementation using concrete parameters.
Why start now?
● Efficiency
○ Even with a secure working system, many improvements to speed and space requirements need
to be done.
● Confidence
○ Users require time to put their faith in a new cryptographic scheme.
○ Many mistakes should be expected.
● Usability
○ A new cryptographic scheme requires the development of a new infrastructure.
○ Padding schemes, handling of longer messages, software and hardware implementations.
Thank you.
Questions ?

Post quantum cryptography

  • 1.
  • 2.
    Cryptography ● A veryold science that has existed since the roman times. ● Nowadays it is deeply integrated into everyday life. ● Just a few out of many example uses: ○ Securing online sessions (SSL) ○ Present in almost every texting application. ○ The OpenPGP standard for encrypting. ● No longer only concerned with confidentiality of information. ● Digital signatures can provide authentication and integrity. ● Cryptographic onions can be used for anonymity.
  • 3.
    Cryptography ● Symmetric Cryptography: ○Makes use of a single key for encryption and decryption ○ Can operate on blocks or streams of bytes ○ Most popular examples are AES, DES, 3DES ● Asymmetric Cryptography: ○ Each party must generate two different key ○ Public key is given out to encrypt incoming messages ○ Private key is kept hidden to be used for decryption ○ Can be used for other primitives such as digital signature ○ Most famous example is the RSA algorithm
  • 4.
    Cryptographic Problems Security isachieved through hardness of mathematical problems. The Factorization Problem: Given n = pq where p and q are unique prime numbers. Find p and q in polynomial time. The Discrete Logarithm Problem: Given β=αa , find a in polynomial time. No efficient classical algorithms exist for either of the two problems.
  • 5.
    Quantum Computers ● ClassicalComputers use bits to store information. ● Always in one of two states at any point in time (0 or 1). ● In contrast, quantum computers have Qubits. ● Can be in two states simultaneously (0 and 1). ● A quantum computer with two bits can be in and act upon 4 states at the same time.
  • 6.
    Classical Cryptography UnderQuantum Attacks ● It started with Shor’s algorithm developed by Peter Shor in 1994. ● Can factorize a composite number N in polynomial time. ● Demonstrated that public key cryptography algorithms can be broken.
  • 7.
    What now ?(Post Quantum Cryptography) ● We need to update our current cryptographic primitives to be able to deal with the new threat. ● Fortunately we do not have to start from scratch. ● Cryptographic classes that do not rely on vulnerable mathematical problems already exist. ○ Code based cryptography ○ Multivariate public key cryptography ○ Lattice based cryptography ○ Hash based cryptosystems
  • 8.
    Code based cryptography ●Builds on the concepts introduced by Claude Shannon in 1948. ● Coding theory was developed to be able to retrieve the original message after transmission through a noisy channel. ● A concept that is easily adaptable to cryptography. ● Artificial noise can be applied to a message to hide its contents. ● The original recipient can recover the message by knowing additional information about the encoding scheme.
  • 9.
    Linear Codes andList Decoding Linear Codes ● A commonly used subfamily of block codes. ● The original message is represented by K, a vector of length k. ● The output is N, a new vector of length n where k < n. ● The encoding operation is represented by c’=Gm where G is known as the generator matrix. ● C = c’ + e. List Decoding Algorithm ● There are several ways to retrieve the original message from K. ● The List decoding algorithm allows us to recover from larger number of errors. ● It returns several possibilities for the original message with one having an overwhelming probability.
  • 10.
    The McEliece Cryptosystem ●Code based cryptosystem proposed by McEliece in 1978. ● Many following variations and attempted improvements including Niederreiter in 1986. ● First successful digital signature scheme is as recent as 2001. ● While requiring some modifications over the years, it remains unbroken after near 30 years of cryptanalysis. ● Despite faster encryption and decryption procedures, never received much popularity. ● Key size is 32 KBytes compared to 4096 bits for RSA.
  • 11.
    Staircase Generated Codes ●In 2014, a new family of linear codes was introduced as staircase generated codes ● Based on it, a new variation of the McEliece cryptosystem was proposed including an encryption and signature scheme. ● The new scheme imposes restrictions on the structure of the generator matrix allowing for more efficient list decoding algorithm. ● It also gives the sender control over the noise generated by the “noisy channel” by defining two parameters: density and granularity. ● Encryption scheme can be adapted directly into a signature scheme using the decryption algorithm.
  • 12.
    Random Split ofSt-Gen Codes ● A successful attack using Information Set Decoding was later demonstrated. ● ISD is a technique to recover the error vector used to encrypt the message. ● Which can in turn be used for practical key recovery. ● Exposing the staircase generator matrix allows for structural attacks. ● To thwart the ISD attack a new idea is introduced to split the public generator matrix into s randomly generated matrices. ● With the random split, the probability of a successful attack becomes negligible.
  • 13.
    Methodology ● This projectis mainly concerned with the implementation of the newly proposed techniques for thwarting ISD attacks against St-Gen Codes. ● Several implementations will be done using multiple platforms (python, C++) ● A set of evaluation metrics must be decided on for comparison with other solutions. ● The validity of the ISD attacks must be retested against the new implementations. ● Concrete security parameters will be tested against the expected security level.
  • 14.
    Project Plan ● Phase1 : Extensive Research ○ Study existing implementations ○ Study the proposed attack and the proposed solution ○ Further research on the inner workings of McEliece, St-Gen Codes and ISD attacks ● Phase 2 : Implementation ○ Start implementation of the encryption scheme using St-Gen codes with random splits. ○ Implement the Signature scheme based on the decryption algorithm. ● Phase 3 : Validation ○ Insure that the proposed solution holds against the proposed attacks. ○ Check for any newly created security holes. ● Phase 4 : Verification ○ Compare the final implementation against existing benchmarks. ○ Demonstrate the workings for the implementation using concrete parameters.
  • 15.
    Why start now? ●Efficiency ○ Even with a secure working system, many improvements to speed and space requirements need to be done. ● Confidence ○ Users require time to put their faith in a new cryptographic scheme. ○ Many mistakes should be expected. ● Usability ○ A new cryptographic scheme requires the development of a new infrastructure. ○ Padding schemes, handling of longer messages, software and hardware implementations.
  • 16.