Cryptography
Digital (pseudo) signatures
Definition of pseudo signatures
Taken from [complete_pseudo_signatures]:
Three parties:
- Alice (sender), has input ,
- Bob (receiver 1), has output , and
- Charlie (receiver 2), has output
Two phases:
- signature phase where Bot outputs and if proceed to
- transfer phase where Charlie outputs
Properties:
- Correctness: if Alice and Bob are honest, with high probability
- Unforgeability: if Alice and Charlie are honest, then probability of is small
- Transferability: if Bob and Charlie are honest then the probability of having both and is small
- Secrecy (optional?): Charlie’s view in the signing phase is almost independent from
Quantum algorithms
-
[QDS]
Consider a set of sufficiently orthogonal (but not orthogonal) functions: ,
NB is much higher than , where is the number of qubits
- public key: generate and and set public key as
- signing:
- verifying: reverse test checking that all the functions computed right plus two thresholds: and
-
There’re coherent states and , s.t. it’s efficient to:
- check they’re the same (null-port must be zero)
- symmetrize two states (giving )
- identify what’s the symmetrized state is
The protocol (Alice is sending to Bob and Charlie):
-
private key are random sequences of signs for and
-
public key are the two sequences of quantum states
-
preparation:
- Bob and Charlie use QDS multiport to a) check if they get the same state b) symmetrize input
- Bob and Charlie measure output from multiport to identify what was the sign
-
signature: Alice releases
-
verification:
-
check that there’s equivocation is unlikely (occurrences of null-port being non-zero is low)
-
check that there’s an expected number of unambiguous measurement outcomes (when doing the second step)
-
number of mismatches with the private key should not be too large
NB thresholds for this step are different for Charlie and Bob, which is necessary if Alice tries to make one accept and another reject
-
Secret Sharing
See [QMPC]