FPGA-based Digital Quantum Coprocessor

Valerii Hlukhov, Lviv Polytechnic National University, Computer Engineering Department, Bohdan Havano
2018 Advances in Cyber-Physical Systems  
7 Quantum Safe Cryptography and Security 8 2 Overview What is cryptography and how is it used? Cryptography is literally the art of "secret writing". It is used to secure communication by protecting the confidentiality and integrity of messages and sensitive data. Without it, anyone could read a message or forge a private conversation. Messages are made secret by transforming them from "plaintext" into "ciphertext" using a cipher and performing the process of encryption. Decryption turns
more » ... ed and unreadable ciphertext back into plaintext. When cryptographers talk about a "key", they are referring to a shared secret that controls the ability to hide and un-hide information. There are two types of cryptography that are often referred to as "symmetric key" and "public key" cryptography: Public Key Infrastructure typically this takes the form of a Certificate Authority (CA) where an entity that everyone implicitly trusts will attest that a particular cryptographic key belongs to a particular person or IPSec: Internet Protocol Security is a layer 2 networking security protocol used to setup a Virtual Private Network (VPN). Key Agreement: A type of algorithm, based on public key cryptography, that allows two remote parties to each exchange some information publicly, that can be intercepted by anyone, and then privately compute the same secret key. The secret key can only be computed by the two participants, anyone else who intercepted the information sent publicly cannot derive the same secret value. Most prevalent key agreement algorithm is Diffie-Hellman. Key Pair: Used in the context of public key cryptography, refers to 2 values that are calculated and mathematically related to each other. One value remains secret and is called private key. One value is made public and is called the public key. Quantum Safe Cryptography and Security 59 Key Size: The number of bits of the key used in a cryptographic primitive. Key sizes (or "lengths") are related to the security of a given algorithm because the length directly affects how quickly an encrypted message can be attacked by brute force by simply testing all potential keys of that length. Message Authentication Code: A short code that is computed on some information using a key. The code can be used to check the integrity and authenticity of the information. Merkle Tree: A quantum safe public key cryptography system based on a tree of message digests where each child leaf is computed using a cryptographic hash function that is keyed with a key derived from it's parent. M2M : Abbreviation for Machine-to-Machine, describing a networked communication system in which an autonomous device communicates with another autonomous device without the participation of a human. Near Field Communication: A standards based method for two devices to communication when placed in very close proximity, often touching or tapping together. Network Infrastructure: The software and hardware that makes up a network, allowing multi-user communication, and distributed processes, applications and services. No-Cloning Theorem: An important idea in quantum mechanics that forbids the copying of an unknown quantum state. This means that if you do not know the exact value of a quantum state, you cannot make a copy that will be guaranteed to have the same value. The no-cloning theorem is the basis for information-theoretic security in QKD, as well as what necessitates quantum repeaters for quantum key distribution over distances exceeding 200 kilometers. NTRU: A type of lattice based cryptographic public key cipher. One-time pad: An unconditionally secure encryption method, where a plaintext is encrypted with a random secret key (or pad) of same length as the message. The secret key needs to be known by the sender and receiver and must be used only once. Public Key Infrastructure: A set of defacto standards and protocols used to distribute and manage cryptographic keys using certificates. Perfect Forward Secrecy: An attribute of a security protocol that means that temporary/ephemeral cryptographic keys are used in the protocol so that if an adversary breaks the keys and can listen to traffic in the session, they can only listen for the current session, and need to break the keys again in any future secure session. Polynomial Time: A term used by computer scientists to describe the amount of computing time that is required to solve a mathematical problem as the problem scales upwards in size. A polynomial time algorithm, in short, means that the algorithm solves a problem very fast. In contrast, a sub exponential time algorithm or an exponential time algorithm runs very slow as the size of the problem grows. Encryption that can be solved, without knowing the key, in polynomial time is considered broken and not suitable for providing security. Private Key: Used in the context of public key cryptography to describe one of 2 values in a key pair that remains secret and is used for either decipherment, key agreement, or creating a digital signature. Public Key Cryptography: A type of encryption, key agreement or digital signature algorithm, sometimes called asymmetric cryptography, is characterized by methods using 2 cryptographic keys, one key is Quantum Safe Cryptography and Security 60 public and one key is private. The public key is used to either encrypt or verify a message. The private key is used to either decrypt or sign a message. Public Key: Used in the context of public key cryptography to describe one of 2 values in a key pair that is publicly available to anyone and is used for either encipherment, key agreement, or verifying a digital signature. Quantum Algorithm: A step-by-step procedure that could be run on a working quantum computer. Quantum Computing: A computing device based on Qubits that can run quantum algorithms. Quantum Key Distribution: A communication device that sends and receives single photons in order to communicate cryptographic keys in a way that is impossible for a third party to intercept or eavesdrop without the receiver discovering. Quantum Repeater: The quantum analogue to the amplifiers seen in classical optical-fibre communication networks. Quantum repeaters are devices that extend the distance that a sender can communicate to a receiver before quantum de-coherence degrades the signal to have too much error to be usable. These repeaters use different technology than classical repeaters because of the no-cloning theorem of quantum mechanics. Secret Key: Used in the context of symmetric key cryptography, is a value that is used to either perform encryption, decryption or MAC on a message. Security Association (SA): An instance of an encipherment key that is used to temporarily protect network communications in an IPSec based VPN. An SA is setup using the IKE protocol. Shor's Algorithm: a method intended to run on a quantum computer that solves an instance of the Integer Factorization Problem and Discrete Log Problem in polynomial time. Symmetric Key Cryptography: A type of encryption or MAC algorithm characterized by a single shared key that all communicators must know in order to encrypt and decrypt messages. Trusted Third Party: Typically refers to a Certificate Authority, is an entity that two communicators trust, and who will endorse the authenticity of each communicating party to the other. Wegman-Carter authentication: An unconditionally secure message authentication scheme. It is based on (almost strongly) universal-2 families of hash functions and requires short shared secret keys. X.509: The defacto standard format for a digital certificate.
doi:10.23939/acps2018.02.067 fatcat:7txboogyr5f5vgc5c5zzbovv34