Prepare and Measure Quantum Digital Signature

From Quantum Protocol Zoo
Jump to navigation Jump to search

Functionality Description

Digital Signatures (QDS) allow the exchange of classical messages from sender to multiple recipients, with a guarantee that the signature has come from a genuine sender. Additionally, it comes with the properties of (i) transferability i.e. messages with DS can be forwarded from one recipient to another such that DS is verifiable to have come from the original sender, (ii) non-repudiation i.e at any stage after sending the message to one recipient, sender cannot deny having sent the message and corresponding DS, and (iii) unforgeability i.e. a dishonest recipient cannot alter or fake the sender's DS and forward it to other recipients successfully.

Tags: Multi Party (three), Quantum Enhanced Classical Functionality, Specific Task, Quantum Digital Signature, Quantum Digital Signatures from quantum one-way function, Measurement Device Independent Quantum Digital Signature (MDI-QDS)

Requirements

  • Network Stage: Prepare and Measure
  • Method: Single quantum state preparation and measurement in two different bases
  • Relevant Network Parameters:
  • Benchmark values: Length of the keys(L): , Verification threshold per qubit ():, Signing threshold per qubit():, time, scalability, no. of rounds, time, distance, scalability, no. of rounds, threshold values numbers, length of the key

Use Case

Online Transactions, Signing Marksheets

Example:

Experimental Tags: BB84 QKD, BB84 State Preparation, BB84 State Measurement

Outline


Quantum Digital Signature (QDS) protocols can be separated into two stages: the distribution stage, where quantum public keys are sent to all recipients, and the messaging stage, where classical messages are sent and verified. Here, we take the case of three parties, one sender (referred to as seller) and two receivers (buyer and verifier) sharing a one bit message. Following protocol requires Client to prepare and send quantum public keys to the buyer and verifier, hence the name, Prepare and Send QDS. Distribution phase can be divided into the following steps:

  • Key Distribution: Seller generates her (public key,private key) pair and shares the public key with both receivers in this step. For each possible message (0 or 1), she generates two identical sequences/copies (one for each receiver per possible message) of randomly chosen BB84 ∈ {0,1,+,−} states. The sequence of states is called quantum public key and its classical description, private key. She then sends copies of each quantum public key to the receivers while keeping both the private keys secret to herself. At the end of this step, seller has two private keys, one for each possible message. Similarly, each receiver has two quantum public keys, one for each possible message.
  • State Elimination: Receivers store their classical records of the quantum public keys in this step. For each quantum public key received, a receiver randomly chooses X or Z basis for each qubit and measures. Whatever outcome he gets, the receiver is certain that seller could not have generated a state orthogonal to his outcome. So, he records the state orthogonal to his outcome as the eliminated signature element. Such measurement is called ’Quantum State Elimination’. The sequence thus generated by measurement of all the qubits in a public key is called receiver’s eliminated signature for the respective quantum public key. Thus, each receiver finally has two eliminated signatures, one for each possible message.
  • Symmetrisation: The two receivers exchange half of their randomly chosen eliminated signature elements. This prevents a dishonest seller succeed in cheating by sending dissimilar public keys to the receivers. Thus ends the distribution phase.

Similarly, Messaging Phase is divided into the following steps:

  • Signing: Seller sends desired classical one bit message and the corresponding private key to the desired receiver (called buyer). Buyer compares the private key with his eliminated signature for the corresponding message and counts the number of mismatches (eliminated signature element in seller’s private key).
  • Transfer: Buyer forwards the same message and private key to the other receiver (called verifier) who compares it with his eliminated signature for this message.
Figure

Properties


  • The protocol-
  1. involves three parties (Seller, Buyer, Verifier) exchanging one-bit classical messages.
  2. assumes that all classical and quantum channels are authenticated (secure).
  3. requires no quantum memory.
  4. assumes maximum number of participating parties are honest. In the present case at least two parties are honest.
  5. provides security against repudiation, i.e. the probability that seller succeeds in making buyer and seller disagree on the validity of her sent quantum signature decays exponentially with L, as stated by the formula .
  6. provides security against forgery, i.e. any recipient (verifier) with high probability rejects any message which was not originally sent by the seller herself. Forging probability is given by the formula, Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle P(\text{forge})\le e^{-(c_{\min}-2s_v)^2L}} , where is 3/8 (calculated using uncertainty principle).

Pseudo Code


  • Notations Used:
    • L: Length of keys used
    • Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle s_a} : Threshold value for signing
    • Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle s_v} : Threshold value for verification
    • Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle |\psi^k\rangle} : Quantum Public key for message k
    • : Classical Private key for classical one-bit message k
    • : Classical description of qubit in Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle |\psi^k\rangle}
    • Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle B^m} : Buyer's Eliminated Signature for message m
    • Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle V^m} : Verifier's Eliminated Signature for message m
    • : Buyer’s random bit to determine the measurement basis of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle l^{th}} qubit in Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle |\psi^k\rangle}
    • : Verifier’s random bit to determine the measurement basis of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle l^{th}} qubit in
    • : measurement outcome of

Stage 1 Distribution

  • Input L
  • Output Seller: Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \{\beta^0_1,...,\beta^0_L\},\{\beta^1_1,...,\beta^1_L\}} ; Buyer: ; Verifier:
    • Key Distribution:
  1. For k = 0,1
    1. Seller prepares quantum public key , where
    2. She sends Buyer (k,Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle |\psi^k\rangle} )
    3. She sends Verifier (k,)
    • State Elimination:
  1. For k = 0,1
    1. For l = 1,2,...,L
      1. Buyer chooses
      2. If Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle b^k_l=0} , Buyer measures his qubit in X basis
      3. If , Buyer measures his qubit in Z basis
      4. return
      5. Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle B^k_l=1-m_{b^k_l}}
    • Verifier repeats steps 2(a)-2(b) with randomly chosen basis to get his eliminated signature elements
    • Symmetrisation
    1. For k = 0,1
      1. Buyer chooses I
      2. , Buyer sends Verifier
      3. Verifier chooses J
      4. , Verifier sends Buyer
      5. Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \forall j\epsilon J} Buyer replaces
      6. Verifier replaces

Stage 2 Messaging

  • Input Seller: Message m, Private Key for m: Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \{\beta^m_1,...,\beta^m_L\}}
  • Output Buyer: accept or abort, Verifier: accept or abort
    • Signing: ’mismatch’ is when Buyer finds an eliminated signature element in Seller’s private key
  1. Seller sends Buyer (m,)
  2. For l = 1,2,..,L
    1. Buyer counts the number of mismatches () and returns
  3. If , Buyer accepts m else he aborts
    • Transfer
  1. Buyer sends Verifier (m,)
  2. For l = 1,2,....,L
    1. Verifier counts the number of mismatches () and returns
  3. If , Verifier accepts m else he aborts

Discussion

  • Theoretical Papers
  1. WDKA (2015) above example
  2. GC-QDS (2001) uses quantum one way function f(); Private keys: classical input x, Public keys: quantum output f(x). Requires quantum memory, quantum one way function, authenticated quantum channels, SWAP Test (universal quantum computer). Third Network Stage (Quantum Memory)
  3. ACJ (2006) discusses coherent states comparison with a QDS scheme outlined in the last section. Protocol uses the same protocol as (2) but replaces qubits with coherent states, thus replacing SWAP-Test with Coherent State Comparison. Third Network Stage (Quantum Memory)
  4. [AWA (2015)]
  5. SWZY (2017) Discusses an attack on existing QDS scheme and suggests corrections. Protocol uses rotation, one-way hash function; Private keys: angle of rotation, Public keys: string of rotated quantum states. Requires random number generator, one-way hash function, quantum memory, key distribution. Third Network Stage (Quantum Memory)
  • Experimental Papers