@condorcet.vote/crypto-vote — test

Loading WASM…

A — generate_identity_wasm()

Generates a random secret key and its corresponding public key.

B — is_valid_prefixed_secret_key_wasm(prefixed)

C — derive_public_key_wasm(secretBytes)

D — sign_vote_str_wasm(secretBytes, vote, electionId, ring)

E — verify_vote_str_wasm(vote, electionId, signatureHex, keyImageHex, ring)

F — generate_nonce_wasm() + prove_ownership_wasm(secretBytes, electionId, nonce)

Proves the caller owns the key image for an election, bound to a fresh verifier nonce. The secret key never leaves the device; the proof reveals nothing about it. Sign a vote in step D first to get a matching key image for step G.

G — verify_ownership_wasm(publicKey, keyImage, electionId, nonce, proof)

Public-input only — anyone can run it. The key image comes from signing a vote (step D) for the same election; the nonce must be the one the prover used.

H — Benchmark

Mesure les performances de génération d'identités, signature en anneau et vérification.