Quantum Fingerprinting: Difference between revisions

From Quantum Protocol Zoo
Jump to navigation Jump to search
No edit summary
No edit summary
Line 17: Line 17:
** The client now sends this fingerprint to the server through a quantum channel. Both the clients do this process simultaneously.
** The client now sends this fingerprint to the server through a quantum channel. Both the clients do this process simultaneously.


* '''Server's test''': The server receives the two fingerprints from both the clients and performs the [[Glossary#SWAP test|quantum SWAP Test]] on these states to check if the states are distinguishable. The server independently repeats this SWAP test on fingerprints several times to reduce the error probability in detecting if the two states are different.
* '''Server's test''': The server receives the two fingerprints from both the clients and performs the [[Glossary#Quantum SWAP test|quantum SWAP Test]] on these states to check if the states are distinguishable. The server independently repeats this SWAP test on fingerprints several times to reduce the error probability in detecting if the two states are different.


==Hardware Requirements==
==Hardware Requirements==
Line 33: Line 33:
* <math>c</math>: Parameter for error correcting code. <math>m=cn, c>1</math>
* <math>c</math>: Parameter for error correcting code. <math>m=cn, c>1</math>
* <math>\delta</math>: Parameter for error correcting code. <math>\delta<1</math>.
* <math>\delta</math>: Parameter for error correcting code. <math>\delta<1</math>.
* <math>\epsilon</math>: Error probability
* <math>k</math>: Number of times a fingerprint is repeated, <math>k \in O(log{}{\frac{1}{\epsilon}})</math>


==Properties==
==Properties==
Line 46: Line 48:
'''Output''':  <math>|h_x\rangle</math>, <math>|h_y\rangle</math> sent to server </br>
'''Output''':  <math>|h_x\rangle</math>, <math>|h_y\rangle</math> sent to server </br>
'''Stage 1''': Client's preparation
'''Stage 1''': Client's preparation
* First client prepares fingerprint <math>|h_x\rangle</math> from <math>x</math>, <math>|h_x\rangle = \frac{1}{\sqrt{m}}\sum_{i=1}^{m} |i\rangle|E_i(x)\rangle</math>.
* First client prepares <math>|h_x\rangle</math> from <math>x</math>, <math>|h_x\rangle = \frac{1}{\sqrt{m}}\sum_{i=1}^{m} |i\rangle|E_i(x)\rangle</math>
* Second client prepares fingerprint <math>|h_y\rangle</math> from <math>y</math>, <math>|h_y\rangle = \frac{1}{\sqrt{m}}\sum_{i=1}^{m} |i\rangle|E_i(y)\rangle</math>.
* Second client prepares <math>|h_y\rangle</math> from <math>y</math>, <math>|h_y\rangle = \frac{1}{\sqrt{m}}\sum_{i=1}^{m} |i\rangle|E_i(y)\rangle</math>
* Both clients send <math>|h_x\rangle</math>, <math>|h_y\rangle</math> to the server.
* Both clients send <math>|h_x\rangle</math>, <math>|h_y\rangle</math> to server
 


'''Stage 2''': Server's test
'''Stage 2''': Server's test
* Server prepares an ancilla qubit <math>|0\rangle</math> for final measurement purpose, and thus starts with the state <math>|0\rangle|h_x\rangle|h_y\rangle</math>.
* Server prepares an ancilla qubit <math>|0\rangle</math> for SWAP test and starts with state <math>|0\rangle|h_x\rangle|h_y\rangle</math>
* Server creates an entangled state by applying the gate <math>G = {(H\otimes I)(c-SWAP)(H\otimes I)}</math>.
* Server applies gate <math>G = {(H\otimes I)(c-SWAP)(H\otimes I)}</math>, resulting in final state <math>\frac{1}{2}|0\rangle(|h_x\rangle|h_y\rangle + |h_y\rangle|h_x\rangle) + \frac{1}{2}|1\rangle(|h_x\rangle|h_y\rangle - |h_y\rangle|h_x\rangle)</math>
* The server measures the first qubit and transmits the output to both the parties.
* The server measures the first qubit and transmits the result to both the clients.


==Further Information==
==Further Information==
* To reduce the error probability to any <math>\epsilon</math>, the fingerprint of <math>x</math> should be set to <math>|h_x\rangle^{\otimes k}</math>, for a suitable <math>k \in O(log{}{\frac{1}{\epsilon}})</math>
==Related Papers==
==Related Papers==


<div style='text-align: right;'>''*contributed by Rhea Parekh''</div>
<div style='text-align: right;'>''*contributed by Rhea Parekh''</div>

Revision as of 19:07, 10 July 2019

This example protocol allows two quantum clients to distinguish between their quantum inputs while maintaining the privacy of their own input just by comparing the fingerprints of their inputs. The protocol does not permit the two parties to interact directly with each other, hence they send the fingerprints of their respective inputs to a trusted third party (quantum server). This server performs a test to distinguish between two unknown quantum fingerprints with a high probability. The quantum fingerprints are exponentially shorter than the original inputs.

Tags: Fingerprinting

Assumptions

  • The two quantum clients have no shared key in this protocol.
  • The server is trusted.
  • The fingerprints can consist of quantum information.

Outline

Here, two quantum clients want to check if their quantum inputs are distinct while also keeping their inputs secret. They prepare quantum fingerprints of their individual inputs and send these states to the server. Next stage involves the server performing a SWAP test on the fingerprints to check their equality. The server repeats this test several times on the received fingerprints to reduce the error probability.

  • Client's preparation:
    • The client prepares the fingerprint of initial input which is sized -bits. This fingerprint has a length of bits.
    • This fingerprint is prepared using particular error correcting codes, which converts the -bit input to -bits, where is greater than , and the two outputs of any two distinct inputs can be equal at atmost positions, where 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 \delta < 0} . The fingerprint has the length 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 log{}m+1} bits.
    • Here for error correcting code, Justesen codes are used.
    • The client now sends this fingerprint to the server through a quantum channel. Both the clients do this process simultaneously.
  • Server's test: The server receives the two fingerprints from both the clients and performs the quantum SWAP Test on these states to check if the states are distinguishable. The server independently repeats this SWAP test on fingerprints several times to reduce the error probability in detecting if the two states are different.

Hardware Requirements

  • Authenticated Quantum channel capable of sending a pair of qubits.
  • Measurement devices for the server.
  • A one-time quantum channel from both clients to the server.

Notation

  • , : inputs of both the clients
  • : length of inputs
  • 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 m} : Length of output of error correcting codes, using x and y as input.
  • 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 E(x)} : Error correcting code associated with input , where .
  • : 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 (log{}m+1)} qubit state quantum fingerprint for .

  • : Parameter for error correcting code. 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 m=cn, c>1}
  • : Parameter for error correcting code. .
  • : Error probability
  • : Number of times a fingerprint is repeated,

Properties

  • The computational complexity of this protocol is .
  • Given an -bit input, the protocol requires a quantum fingerprint of minimum bits which contains quantum information.
  • The Hamming distance i.e. the number of positions between two strings of same length, at which the corresponding symbols are different, of and is at least .
  • For Justesen codes, 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 \delta < 9/10 + 1/(15c)} for any chosen 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 c>2}
  • Any two fingerprints, and have an inner product of at most .
  • The one sided error probability is at least if the server computation is repeated 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 k} times.

Pseudocode

Input: for first client and second client respectively.
Output: 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 |h_x\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 |h_y\rangle} sent to server
Stage 1: Client's preparation

  • First client prepares from , 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 |h_x\rangle = \frac{1}{\sqrt{m}}\sum_{i=1}^{m} |i\rangle|E_i(x)\rangle}
  • Second client prepares from ,
  • Both clients send 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 |h_x\rangle} , to server


Stage 2: Server's test

  • Server prepares an ancilla qubit for SWAP test and starts with state
  • Server applies gate , resulting in final state
  • The server measures the first qubit and transmits the result to both the clients.

Further Information

  • To reduce the error probability to any , the fingerprint of should be set to , for a suitable

Related Papers

*contributed by Rhea Parekh