Prepare and Measure Quantum Digital Signature

From Quantum Protocol Zoo
Jump to navigation Jump to search

This example protocol achieves the task of Quantum Digital Signature which allows for the exchange of single or multiple bit classical messages from sender to multiple recipients such that parties are required to prepare and measure quantum states instantly without having to store them. For simplicity, most protocols take into account the case of one sender and two recipients (Seller, buyer and verifier) exchanging single-bit classical messages.
It ensures that the sender (seller) cannot deny at a later stage having signed the message, a recipient (buyer) cannot fake or alter the QDS and another sender (verifier) can use the above two properties to verify if the sent message is signed by the genuine sender, thus, satisfying properties of transferability,non-repudiation and unforgeability. It allows the user to sign electronic documents.

Tags: Multi Party (three), Quantum Enhanced Classical Functionality, Specific Task, Quantum Digital Signature, Quantum Digital Signature with Quantum Memory, Measurement Device Independent Quantum Digital Signature (MDI-QDS), Unconditional Security

Assumptions

  • Honest majority assumption: assumes that more than number of participating parties are honest. In the present case at least two parties are honest.
  • It requires authenticated quantum and classical channel. This assumption has been overcome by a variant (AWKA (2015)) of the protocol.

Outline

Quantum Digital Signature (QDS) protocols can be separated into two stages: the distribution stage, where quantum signals (public keys) are sent to all recipients, and the messaging stage, where classical messages are signed, 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. 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.
: Classical channel
~>: Quantum channel

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.

Notations used

    • L: Length of keys used
    • : Threshold value for signing
    • : Threshold value for verification
    • : Quantum Public key for message k
    • : Classical Private key for classical one-bit message k
    • : Classical description of qubit in
    • : Buyer's Eliminated Signature for message m
    • : Verifier's Eliminated Signature for message m
    • : Buyer’s random bit to determine the measurement basis of qubit in
    • : Verifier’s random bit to determine the measurement basis of qubit in
    • : measurement outcome of

Hardware Requirements

    • Network Stage: Prepare and Measure Network Stage
    • Network Stage parameters of relevance:
    • Requires BB84 QKD setup (preparation and measurement of quantum states in two bases), authenticated classical channel
    • Requires authenticated quantum channel (assumption removed in a variant of the protocol)
    • Benchmark values per qubit: QBER: 1-3, Transmission distance(d): 200 km, Key Length: 2Mbits, Estimated time: 3.5s, attenuation:45.8dB at 200kms

Properties

  • The protocol-
    • involves three parties (Seller, Buyer, Verifier) exchanging one-bit classical messages.
    • provides information-theoretic security
    • 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 .
    • 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, , where is 3/8 (calculated using uncertainty principle).

Pseudo Code

Stage 1 Distribution

  • Input L
  • Output Seller: ; Buyer: ; Verifier:
    • Key Distribution:
  1. For k = 0,1
    1. Seller prepares quantum public key , where
    2. She sends Buyer (k,)
    3. She sends Verifier (k,)
    • State Elimination:
  1. For k = 0,1
    1. For l = 1,2,...,L
      1. Buyer chooses
      2. If , Buyer measures his qubit in X basis
      3. If , Buyer measures his qubit in Z basis
      4. return
    • 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. Buyer replaces
      6. Verifier replaces

Stage 2 Messaging

  • Input Seller: Message m, Private Key for m:
  • 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

Pseudo Code 2

function key_distribution(n,L) 
 For k = 0 to 
  function key_generation (L)
   For l=1 to L
    choose //random classical bits
   end for l
    //quantum public key
    //secret key
   return ()
  end function key_generation
  
  
  SellerBuyer
  SellerVerifier
 end for k
end function key_distribution
function state_elimination(,L) For l = 1 to L Choose //randomly chosen measurement basis if Z then M= Measure if M=1 then esign if M=-1 then esign end if if b_k^l=X then M= Measure if M=1 then esign if M=-1 then esign end if end if end for l return esign end function state_elimination
for k=0 to esign= Buyer.state_elimination(,L) end for for k=0 to esign= Verifier.state_elimination(,L) end for
function symmetrization(k,Sender,esign_{Sk},Receiver,esign_{Rk}) Sender.choose I , SenderReceiver For h=1, Sender.receive(j,esign) Sender.replace(esign,esign) end for h end function SYM for k=0 to Call SYM(k,Buyer,esign,Verifier,esign)||SYM(0,Verifier,esign,Buyer,esign) end function symmetrisation // '||' implies that the functions are processed in parallel
function signing(m,) SellerBuyer for i=1 to L if s_m(i)=esign_{Bm} then x=x+1 end if end for if x> then z=0 //Buyer aborts else z=1 //Buyer accepts end if return z end function signing
function transfer(m,) if z=1 then BuyerVerifier for i=1 to L if s_m(i)=esign_{Vm} then x=x+1 end if if x> then z=0 //Verifier aborts else z=1 // Verifier accepts end if end for end if return z end function transfer
Protocol is successful if z=1

Discussion

The protocol under discussion (1) was the first version of Quantum Digital Signatures with only prepare and measure QKD components. The assumption authenticated quantum channel would render it useless as authenticated quantum channel is a more complex protocol. Thus in (6), a variant of this protocol overcomes this assumption by using a Key generation protocol (not QKD) for authentication where, instead of Seller, Buyer and Verifier sends quantum public keys to the Seller to measure in randomly chosen basis and generate her private keys. Following description for various papers on QDS protocols and their variants have been written keeping in mind the hardware requirements, assumptions, security and method used. One of the papers discusses generalisation of protocols to more than 3 parties and another one discusses security for iterating in case of sending multiple bits.

  • Theoretical Papers
  1. WDKA (2015) above example
  2. DWA (2013) first QDS scheme without quantum memory based on Coherent State Comparison.
    1. Requires Coherent States, authenticated quantum and classical channels, multiports, Unambiguous State Discrimination (USD) (State Elimination), no symmetrisation required.
    2. Security: Information-theoretic
  3. AL (2014) establishes coherent state mapping of (2). Replaces SWAP Test with beam splitters. Uses Unambiguous State Discrimination (USD) (State Elimination).
    1. Requires Phase encoded Coherent states, Balanced Beam Splitters.
    2. No explicit security proof provided.
  4. AWA (2015) security proof for generalisation of WDKA (2015) and DWA (2013) to more than two recipients case.
  5. YFC (2016) first QDS scheme without authenticated (trusted) quantum channels. Demonstrates one protocol with two implementation, two copies of single photon method and decoy state method. First uses single qubit photons in three bases; Private key: classical description of states, Public key: pair of non-orthogonal states in any two of the three bases.
    1. Requires authenticated classical channels, polarisation measurement in three bases, Unambiguous State Discrimination (USD) (State Elimination), uses quantum correlations to check authentication. Decoy State method uses phase-randomised weak coherent states, 50:50 Beam Splitter (BS).
    2. Security: Information-theoretic.
  6. AWKA (2015) QDS scheme without authenticated quantum channels using parameter estimation phase. Uses a Key Generation Protocol (KGP) where noise threshold for Seller-Buyer and Seller-Verifier is better than when distilling secret key from QKD. Seller sends different key to Buyer and Verifier using KGP. This anamoly is justifiable due to symmetrisation.
    1. Requires authenticated classical channels, Decoy State QKD setup.
    2. Security: Information-theoretic.
  7. WCRZ (2015) demonstrates sending multi-bit classical messages using AWKA (2015) or other similar protocols.
  8. MH (2016) security proof for generalisation of AWKA (2015) to more than two recipients case.
  • Experimental Papers
  1. CDDWCEJB (2014) first experimental demostartion of a QDS scheme without quantum memory, implements a variant of DWA (2013). Uses unambiguous state elimination (USE) instead of unambiguous state determination (USD)
    1. Per half-bit message: rate=1.4 bits per second, security bound=0.01%, Length of the key (L)=
  2. DCKAWDJAB(2015) Implements WDKA (2015).
    1. Uses phase encoded coherent states
    2. Per half a bit message: Transmission Distance(d)=500 m, Length of the key(L)= for security 0.01%, estimated time to sign ()=20 seconds, channel loss= 2.2 dBkm at
  3. CAFHSTTABS (2016) Implements modified AWKA (2015)
    1. Uses differential phase shift QKD for QDS
    2. message signing rate= 1 or 2 bits per second for security parameter=0.0001, Length of keys(L)=2Mbits, Transmission distance=90 km, QBER=1.08%, attenuation=0.32 dBkm
  4. CAFHSTTSAB (2017) Implements modified AWKA (2015) using DPS QKD
    1. Per half a bit message: Channel loss=43 dB, transmission distance= 132 km, security parameter=
  5. YFLTWYZCWZCCP (2018) Implements decoy state QDS scheme in YFC (2016)
    1. Uses nanowire single photon detectors (SNSPD), BB84 state encoding, decoy state modulation.
    2. Signed a 32 bit message "USTC" over transmission distance 102 km, authentication threshold =2%, verification threshold=0.6%, security bound parameter=, estimated time=360 seconds for one bit message
  6. ZZDZGW (2018) Implements a passive decoy state protocol which uses Passive BB84 Key Generation protocol (KGP) to share public keys from Bob and Charlie to Alice.
    1. Uses parametric down-conversion (PDC) source, secure to coherent attacks
    2. Per half a bit message:Transmission Distance(d)=100 km, QBER(%)= for security parameter=, attenuation=45.8 dB at 200 km estimated time to sign ()=7 seconds