1 of 9

Ring Signatures based anonymous voting

(Barreto-Naehrig 256 bit Elliplic Curve)

2 of 9

The goal

Create a cryptographically proofed anonymous method of decision making, especially relevant in sensitive spheres like life support, executions, mercy-killing etc.

3 of 9

Solution

On-chain anonymous voting based on Ring Signatures

4 of 9

How it works?

5 of 9

Overview

6 of 9

1. Creation of voting

Judge:�— Creates a voting on some topic, f.e. "Death sentence hearing on case #01232".

— Publishes N public keys of juries and sets quorum number M: M <= N — amount of needed votes "for".

— Sets voting deadline.

7 of 9

2. Voting process

Each jury:�— Generates message, voting "for" judge's decision. Voting "against" is passive (just do nothing).

— Generates ring-signature for this message, using public keys of other juries (under the hood).

— Sends transaction with ring-signature to contract.

8 of 9

3. Decision

If M of N votes "for"�is reached,�action is performed.

9 of 9

The Library

We’ve implemented the library for protecting any function of any contract with anonymous ring multisignature.