Łukasz Krzywiecki

Department of Fundamentals of Computer Science, Wrocław University of Science and Technology
Contact Teaching Research Activity
Mod-Schnorr Demo Implementation
Browser
The proof of concept implementation of Schnorr-like Identification Scheme Resistant to Malicious Subliminal Setting of Ephemeral Secret, as of (doi:10.1007/978-3-319-47238-6_10). The implementation uses WASM builds of the excellent MCL (https://github.com/herumi/mcl) pairing library.
Mod-Schnorr Protocol Steps
Pairing parameter: Lib init...
Generator P of G1
Generator Q of G2

P:
Q:
Prover keys
sk = a,
pk = aQ

sk :
pk :
Ephemerals
secret: x,
public: X = xQ

x :
X :
Challenge
c

c :
Response
s = x + ac
U = H(X,c)
S = sU

s :
U :
S :
Pairings:
e1 = e(U, X + cA)
e2 = e(sU, Q)

e1 :
e2 :
Result:

Regular Schnorr Protocol Steps
Generator Q
Q:
Prover keys
sk = a,
pk = aQ

sk :
pk :
Ephemerals
secret: x,
public: X = xQ

x :
X :
Challenge
c

c :
Response
s = x + ac

s :
Verification:
L = sQ
R = X + cA

L :
R :
Result:

Benchmark


opmsec
Fr::setByCSPRNG0
pairing0
millerLoop0
finalExp0
precomputedMillerLoop0
G1::add0
G1::dbl0
G1::mul0
G2::add0
G2::dbl0
G2::mul0
hashAndMapToG10
hashAndMapToG20
Fr::add0
Fr::mul0
Fr::sqr0
Fr::inv0
GT::add0
GT::mul0
GT::sqr0
GT::inv0