follow us on twitter . like us on facebook . follow us on instagram . subscribe to our youtube channel . announcements on telegram channel . ask urgent question ONLY . Subscribe to our reddit

Author Topic: Contest - Zero-Knowledge Voting Protocol Implementation  (Read 1053 times)

Offline lesnik_utsa

  • Legendary
  • *
  • *
  • Activity: 1613
  • points:
    12932
  • Karma: 346
  • Proof-of-Stake Blockchain Network
  • Trade Count: (0)
  • Referrals: 6
  • Last Active: March 28, 2024, 05:29:24 AM
    • View Profile

  • Total Badges: 23
    Badges: (View All)
    10 Posts First Post Fifth year Anniversary
Contest - Zero-Knowledge Voting Protocol Implementation
« on: September 05, 2021, 11:23:40 PM »

Friends - a new competition for developers on the Free TON blockchain has been launched. A whole team of programmers should be involved in this competition, since the task is very complex and multifaceted. A zero knowledge voting protocol needs to be developed on top of the recently submitted TVM Groth16 verification instruction

Contest dates
August 9 - November 8, 2021, 23:59 UTC

Motivation
In January, 2021, a contest called Challenge MIT/Harvard paper on Blockchain Faults in Election Systems was held, which crowdsourced arguments to defend the position that secure blockchain based elections are possible. As a result, community arguments were summarized in a joint Free TON community paper, which was used by the GBA to foster a discussion with US election officials

=nil; Foundation, as an initial member of the Free TON community developed an upgraded version of the TON Virtual Machine, which includes cryptographic primitives required for usage of zero-knowledge proof verification within virtualized applications. =nil; Foundation also prepared C++ (https://github.com/nilfoundation/cpp-ton) and Rust (https://github.com/nilfoundation/rust-ton) ZK proof verification instruction-enhanced TON protocol implementations

Now Free TON has all of the required technologies to run a blockchain mass voting implementation contest

Voting protocols inherently imply voter anonymity, but they should also support voter registration by authorities, so they usually get designed as Zero-Knowledge protocols (e.g. https://eprint.iacr.org/2017/585.pdf or https://eprint.iacr.org/2019/1270.pdf)

Target
Create a voting protocol using the recently submitted VERGRTH16 instruction and make it usable with the FreeTON protocol

Requirements
General requirements
  • Must be a correctly functioning FreeTON virtualized application deployed either to https://main.ton.dev (https://ton.live) or to https://net.freeton.nil.foundation(https://nil.ton.live or to https://live.freeton.nil.foundation)
  • Must Involve VERGRTH16 TVM instruction usage
  • Must ensure the bulletin maintains its integrity
  • Must ensure the ballot box is a non-malleable one
  • Must ensure that the ballot guarantees privacy of the voting message while also guaranteeing that the voter cannot reproduce their vote
  • Must allow the voter to verify the inclusion of their vote, and also ensure that others cannot coerce the voter to create a false ballot
  • The ballot must only be generated for eligible voters
  • Must ensure that voting results uniquely correspond to the ballots in the public board
  • Must ensure that ballots do not reveal voter identity to any entities, even authorities
  • Must ensure that ballots are unique to only the individual voting and there is no possibility for proxy votes
  • Must contain the following actor roles: ○ Voter. ○ Verifier. ○ Ballot Issuer
  • Must contain definitions for the following items: ○ Ballot. Required not to disclose the Voter's decision until the Ballot Issuer decides to. ○ Voter Registry. Proves a particular Voter is eligible to vote
  • Must contain a Ballot Issuer Voter registration procedure: ○ Voter generates some public identifier. ○ Voter submits the public identifier to the Ballot Issuer. ○ Ballot Issuer introduces the Voter's identifier to the Voter Registry
Additional requirements
  • Fraudulent ballot generation complexity should be no less than EdDSA over Ed25519 brute force complexity (not an extremely formal requirement, but it is okay since the public voter identifier could be, for example, a EdDSA public key)
  • Voting results disclosure should be not possible until the voting is ended. Evaluation criteria and winning conditions
  • Apart from uploading a submission, a code should be submitted in accordance with https://github.com/freeton-org/readme and deployed either to https://main.ton.dev (https://ton.live) or to https://net.freeton.nil.foundation (https://nil.ton.live or https://live.freeton.nil.foundation)
  • Each contestant should present their solution at a convenient time agreed upon in advance with DevEx Sub-governance members. A solution should include tests with clear instructions
  • If a test does not cover some scenarios, then jurors can develop their own tests; however, if the burden falls on the jurors, the contest submissions scores should lose some points
  • The solution should have an open source license
  • The solution should contain at least a draft of the architecture description which is implied to contain following parts: ○ In-TVM part. Proof verification part. This part is supposed to be done with `VERGRTH16` instruction usage and executed within the TVM. ○ Native part. Circuit definition. Proof generator
Reward
  • st prize - 600,000 TONs
  • nd prize - 300,000 TONs
  • rd prize - 100,000 TONs
  • th prize - 20,000 TONs
  • th prize - 18,000 TONs
  • th prize - 16,000 TONs
  • th prize - 14,000 TONs
  • th prize - 12,000 TONs
  • th prize - 10,000 TONs
  • th prize - 8,000 TONs

Landing pagehttps://zero.freeton.today/
Official newshttps://devex.gov.freeton.org/proposal?proposalAddress=0%3A22564170cd6e54121e89ff1338dd5ceca174530be2bd318c4521fefeebf8bb52
Chatshttps://t.me/freeton_dev_exp / https://t.me/FT_cryptography_SG
FREE TON wikihttps://ru.freeton.wiki/Free_TON_Wiki
Introduction to FREE TON (short course)https://freeton.academy/courses/introduction-to-free-ton-ru/
Coingecko - https://www.coingecko.com/ru/Криптовалюты/ton-crystal

Altcoins Talks - Cryptocurrency Forum

Contest - Zero-Knowledge Voting Protocol Implementation
« on: September 05, 2021, 11:23:40 PM »

For Monthly biddings Check Here


 

ETH & ERC20 Tokens Donations: 0x2143F7146F0AadC0F9d85ea98F23273Da0e002Ab
BNB & BEP20 Tokens Donations: 0xcbDAB774B5659cB905d4db5487F9e2057b96147F
BTC Donations: bc1qjf99wr3dz9jn9fr43q28x0r50zeyxewcq8swng
BTC Tips for Moderators: 1Pz1S3d4Aiq7QE4m3MmuoUPEvKaAYbZRoG
Powered by SMFPacks Social Login Mod