Arbitrated Quantum Digital Signature: Difference between revisions

no edit summary
(Add first part of Pseudo code)
No edit summary
Line 57: Line 57:
<math> B_P = Basis(|P\rangle) \in \{+,\times \}</math>
<math> B_P = Basis(|P\rangle) \in \{+,\times \}</math>
* <math>|F\rangle</math>: Quantum digital digest received by PKG.
* <math>|F\rangle</math>: Quantum digital digest received by PKG.
* <math>|F'\rangle</math>: Quantum digital digest generated by Verifier.
* <math>|F\rangle'</math>: Quantum digital digest generated by Verifier.
* <math>u</math>: The most number of verifiers in this scheme.
* <math>u</math>: The most number of verifiers in this scheme.
* <math>w</math>: Safety parameter threshold for acceptance.
* <math>w</math>: Safety parameter threshold for acceptance.
Line 82: Line 82:
* In the protocol the public and the private key belong to the classical bits, only the signature cipher has quantum nature.
* In the protocol the public and the private key belong to the classical bits, only the signature cipher has quantum nature.
* No Certificate Authority is required to manage digital public-key certificate of Signers.
* No Certificate Authority is required to manage digital public-key certificate of Signers.
* If  <math>|F\rangle = |F'\rangle</math>, the measuring result <math>|0\rangle</math> occurs with probability 1, otherwise it occurs with probability <math>\frac{1+\delta^2}{2}</math>. Hence, when repeated for <math>w</math> times, the probability of equality is at least 1-<math>(\frac{1+\delta^2}{2})^w</math>.
* If  <math>|F\rangle = |F\rangle'</math>, the measuring result <math>|0\rangle</math> occurs with probability 1, otherwise it occurs with probability <math>\frac{1+\delta^2}{2}</math>. Hence, when repeated for <math>w</math> times, the probability of equality is at least 1-<math>(\frac{1+\delta^2}{2})^w</math>.


==Pseudo-Code==
==Pseudo-Code==
Line 109: Line 109:
<div style="text-align: center;"><math> |S\rangle_{{k_{pri}}_l,m_l} = H^{k_{pub_l}\oplus k_{pri_l}}|\phi\rangle_{s_l,t_l\oplus m_l, m_l}</math></div>
<div style="text-align: center;"><math> |S\rangle_{{k_{pri}}_l,m_l} = H^{k_{pub_l}\oplus k_{pri_l}}|\phi\rangle_{s_l,t_l\oplus m_l, m_l}</math></div>
* For <math>l = 1, 2, ...n</math>:
* For <math>l = 1, 2, ...n</math>:
** Signer generates the private key  quantum state <math>|P\rangle_1</math>, which is
** Signer generates the private key  quantum state <math>|P\rangle_l</math>, which is
<div style="text-align: center;"><math>|P\rangle_1 = H^{k_{pri_l}} |\phi\rangle_{s_l, t_l\oplus m_l}</math></div>
<div style="text-align: center;"><math>|P\rangle_l = H^{k_{pri_l}} |\phi\rangle_{s_l, t_l\oplus m_l}</math></div>
**  The classical <math>P_l</math> is calculated based on <math>|P\rangle_1</math>.
**  The classical <math>P_l</math> is calculated based on <math>|P\rangle_l</math>.
** The basis set is formed by Signer is:
** The basis set is formed by Signer is:
<div style="text-align: center;"><math>  B_{P_l} = Basis(|P\rangle_1) \in \{+,\times \} </math></div>
<div style="text-align: center;"><math>  B_{P_l} = Basis(|P\rangle_l) \in \{+,\times \} </math></div>


* For <math>k = 1, 2, ...u w</math>: Different copies of the quantum digital digest state is prepared.
* For <math>k = 1, 2, ...u w</math>: Different copies of the quantum digital digest state is prepared.
Line 119: Line 119:
# The quantum digital digest state <math>|F\rangle_l</math> is prepared by Signer, where:
# The quantum digital digest state <math>|F\rangle_l</math> is prepared by Signer, where:
<div style="text-align: center;"><math> |F\rangle_l =  |F(t_l||m_l||P_l|| t_l s_l)\rangle_l</math></div>
<div style="text-align: center;"><math> |F\rangle_l =  |F(t_l||m_l||P_l|| t_l s_l)\rangle_l</math></div>
* Signer encrypts <math>|F\rangle</math> using quantum Vernam cipher and sends <math>E_{k_{at}}(ts, \otimes^{uw}_{l=1}|F\rangle)</math> to PKG.
* PKG decrypts  <math>E_{k_{at}}(ts, \otimes^{uw}_{l=1}|F\rangle)</math> using <math>k_{at}</math> and gets <math>(ts, \otimes^{uw}_{l=1}|F\rangle)</math>.
* PKG announces publicly that the quantum digest is ready.
* Signer transmits <math>(ts, m, B_P, |S\rangle_{k_{pri}, m})</math> to Verifier, which is the signature.
'''Stage 3''': Verification</br>
'''Output''': <math>m</math> is considered valid or is rejected by the Verifier.
* Verifier receives <math>|k\rangle_{pub}</math> from open channels.
* Verifier generates the state <math>|V\rangle_{m, k_{pub},S}</math>.
* For <math>l = 1, 2, ... w</math>:
** Verifier measure the state <math>|V\rangle_{{(m, k_{pub},S)}_{l}}</math> according to the basis (diagonal or horizontal) in <math>B_{P_l}</math>.
** The result of the measurement is recorded as <math>|Q\rangle_l</math>, which is converted to <math>Q_l</math>.
* <math>t</math> is inferred by the Verifier using <math>Q</math>
* Verifier gains <math>(ts, \otimes^{w}_{l=1} |F\rangle)</math> from PKG.
* For <math>k = 1, 2, ... w'</math>:
** Verifier generates <math>|F\rangle'</math> using <math>F</math> by the calculation
<div style="text-align: center;"><math> |F\rangle' = |F(t||m||Q||t s)\rangle</math></div>
** Verifier gains <math>(ts, |F\rangle)</math> from PKG.
** Verifier performs SWAP test between <math>|F\rangle</math> and <math>|F\rangle'</math>.
* If <math>w'>w_0</math> and measurement result everytime =  <math>|0\rangle'</math>:
**  Verifier counts the message <math>m</math> as valid.
* else:
** <math>m</math> is rejected by the Verifier.
Write, autoreview, editor, reviewer
3,129

edits