Gottesman and Chuang Quantum Digital Signature: Difference between revisions

Line 50: Line 50:
<u>'''Stage 1'''</u> Distribution
<u>'''Stage 1'''</u> Distribution
*'''Input''' L
*'''Input''' L
*'''Output''' Seller: <math>\{k_0^i, k_1^i\}</math>, <math>1\le i\le M</math>, <math>\{f_{k_0^i}, f_{k_1^i}\}</math>
*'''Output''' Seller: <math>\{k_0^i, k_1^i\}</math>, <math>1\le i\le M</math>, <math>|\{f(k_0^i)\rangle, |f(k_1^i)\rangle\}</math>
**'''Key Generation'''
**'''Key Generation'''
#For m = 0,1
#For m = 0,1
##For i=0,M
##For i=0,M
###Seller generates <math>k_m^i</math>
###Seller generates classical bits <math>k_m^i</math>
###Seller performs <math>k_m^i\rightarrow f_{k_m^i}</math>
###Seller performs quantum one way map: <math>k_m^i\rightarrow |f(k_m^i)\rangle</math>


**'''Key Distribution:''' (No Trusted Third Party Assumption)
**'''Key Distribution:''' (No Trusted Third Party Assumption)
Line 62: Line 62:
###For j=1,2
###For j=1,2
####Seller sends <math>f_{k_m^i}^j</math> to buyer and verifier
####Seller sends <math>f_{k_m^i}^j</math> to buyer and verifier
####Buyer performs '''SWAP TEST'''<math>(f_{k_m^i}^1, f_{k_m^i}^2)</math>
####Buyer performs '''QSWAP TEST'''<math>(f_{k_m^i}^1, f_{k_m^i}^2)</math>
####If SWAP TEST= '''False''', Buyer '''aborts'''
####If QSWAP TEST= '''False''', Buyer '''aborts'''
####If SWAP TEST= '''True''', Buyer sends <math>f_{k_m^i}^{b}=f_{k_m^i}^2=f_{k_m^i}^1</math> to verifier
####If QSWAP TEST= '''True''', Buyer sends <math>f_{k_m^i}^{b}=f_{k_m^i}^2=f_{k_m^i}^1</math> to verifier
####Verifier performs similar steps and sends <math>f_{k_m^i}^{v}=f_{k_m^i}^2=f_{k_m^i}^1</math> to buyer
####Verifier performs similar steps and sends <math>f_{k_m^i}^{v}=f_{k_m^i}^2=f_{k_m^i}^1</math> to buyer
####Both perform '''SWAP TEST'''<math>(f_{k_m^i}^{b},f_{k_m^i}^{v})</math>  
####Both perform '''SWAP TEST'''<math>(f_{k_m^i}^{b},f_{k_m^i}^{v})</math>  
####If SWAP TEST= '''False''', protocol aborted
####If QSWAP TEST= '''False''', protocol aborted
####If SWAP TEST= '''True''', distribution successful
####If QSWAP TEST= '''True''', distribution successful


<u>'''Stage 2'''</u> Messaging
<u>'''Stage 2'''</u> Messaging
Line 79: Line 79:
# For l = 1,2,..,L
# For l = 1,2,..,L
## Buyer performs <math>k_b^i\rightarrow f_{new}</math>
## Buyer performs <math>k_b^i\rightarrow f_{new}</math>
## Buyer performs '''SWAP TEST'''<math>(f_{new},f_{k_b^i})</math>
## Buyer performs '''QSWAP TEST'''<math>(f_{new},f_{k_b^i})</math>
## If SWAP TEST= False, <math>s_B=s_B+1</math>
## If QSWAP TEST= False, <math>s_B=s_B+1</math>
#If <math>s_B<c_1M</math>, result '''1-ACC'''
#If <math>s_B<c_1M</math>, result '''1-ACC'''
#If <math>c_1M<s_B<c_2M</math>, result '''0-ACC'''
#If <math>c_1M<s_B<c_2M</math>, result '''0-ACC'''
Write, autoreview, editor, reviewer
3,129

edits