📘 Voting and Polls: Main Concepts

Key concepts for understanding the technological foundation of the platform


🔗 1. Blockchain

Definition: A distributed digital ledger that records transactions on multiple computers in a way that prevents subsequent alteration. Each block of transactions is cryptographically linked to the previous one, forming an immutable chain.

Blockchain chain

In simple terms: A shared tamper-proof journal that no one owns individually, but everyone can read and verify.

Key properties:


⚙️ 2. Block Producers / Validators

Definition: Specialized servers (nodes) in a blockchain network that are responsible for collecting pending transactions, verifying their correctness, packaging them into new blocks, and adding these blocks to the blockchain. They are the "workhorses" of the network.

Block producers

In simple terms: These are machines that "stamp" blocks with transactions and add them to the common chain. Without them, the blockchain does not work.

How it works:

Note:

Block generation time and confirmation of inclusion in the blockchain may take several seconds.


🎮 3. Block Producer Governance

Definition: A set of mechanisms (protocol rules, voting, sanctions) that determine who has the right to be a block producer, how they are selected, how they are controlled, and how they are removed for violations.

Blockchain governance rules

In simple terms: These are the "rules of the game" for servers that produce blocks. Who appoints them? How to remove a bad one? Who checks honesty?

Examples of blockchain producer systems:


🏭 4. Blockchain Provider / RPC Node

Definition: A service (network node) that provides API access to the blockchain. Through a provider, applications (e.g., your Flutter app) connect to the blockchain to send transactions, read data, and interact with smart contracts.

RPC

In simple terms: This is the "door" or "gateway" between our application and the blockchain. The application does not connect directly to the blockchain — it connects to the provider, and the provider communicates with the network.

Types of providers:

In our system:

In the voting context: The provider is a critically important component. If the provider is unavailable, the application cannot submit a vote or obtain current results. Therefore, we use multiple backup providers.


🔍 5. Blockchain Explorer

Definition: A web service (similar to a search engine) that allows viewing, searching, and analyzing blockchain data in a human-readable format. The explorer shows blocks, transactions, wallet addresses, smart contracts, and fees.

Explorer

In simple terms: This is the "magnifying glass" and "archive" of the blockchain. Anyone can open an explorer and see what is happening on the network.

What you can find out through an explorer:

Why this is important for voting:

Examples of well-known explorers:

In our system:

Example explorer link for a specific poll:
https://explorer.cryptounit.io/contract/0x7d3f9a2b...e8c1?tab=votes


🔄 Diagram: How the app, provider, explorer, and blockchain are connected

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│  Flutter App    │────▶│  Blockchain     │────▶│  Blockchain     │
│  (your voting   │     │  Provider       │     │  Network        │
│   app)          │     │  (RPC Node)     │     │  (Cryptounit)   │
└─────────────────┘     └─────────────────┘     └────────┬────────┘
        │                        │                       │
        │                        │                       │
        │                        ▼                       ▼
        │               ┌─────────────────┐     ┌─────────────────┐
        └──────────────▶│  Blockchain     │     │  Blockchain     │
                        │  Explorer       │◀────│  Explorer       │
                        │  (human reads)  │     │  (automatic     │
                        └─────────────────┘     │   audit)        │
                                                └─────────────────┘

User votes → app sends transaction through provider to the network →
after confirmation, anyone can open the explorer and verify this vote.

📊 Comparison: Provider vs Explorer

Characteristic Blockchain Provider Blockchain Explorer
For whom For applications (machines) For people (users, observers, auditors)
Data format API (JSON-RPC, WebSocket) — data for code processing HTML / web interface — tables, charts, search
Write capability ✅ Yes (sending transactions, votes) ❌ No (read and view only)
Authorization required Usually no (public RPCs are open) No (completely open access)
Usage example Flutter app sends a vote Journalist verifies election integrity
In our system Cryptounit RPC nodes + backup providers Our own Cryptounit Explorer

🔧 Choosing a provider for voting


📜 6. Smart Contract

Definition: A self-executing program stored on the blockchain that automatically enforces the rules of an agreement when predefined conditions are met. No intermediary is required to execute or verify the outcome.

Smart Contract

In simple terms: A vending machine for rules. You insert a vote (input), and the machine dispenses the result (output) without a human operator.

For voting: The smart contract contains the poll logic:

In our system: Smart contracts are written in C++ (EOSIO) and deployed on the Cryptounit blockchain. Each poll has its own smart contract, and each Community has a factory contract that manages members and delegations.


⚙️ 7. Transaction Fee (Gas Fee)

Definition: A fee charged by the blockchain network for processing a transaction (e.g., sending a vote or delegation). The fee compensates validators for the computational resources used.

Gas Fee

Problem in public blockchains: On Ethereum, gas fees can spike to $10-50 during peak hours, making mass voting economically impossible.

Our solution:


🔑 8. Public / Private Key Pair

Definition: A cryptographic key pair consisting of a public key (which can be shared openly, like an account number) and a private key (which must be kept secret, like a PIN code).

Key Pair

In our system: Private keys are generated on the user's device and stored in encrypted form (built-in cold wallet). The organizer never has access to them. For users without a wallet, the system creates one automatically at the organizer's expense.


🖊️ 9. Digital Signature

Definition: A mathematical scheme that proves the authenticity of a digital message or transaction. A valid signature confirms that the message was created by the known sender (owner of the private key) and was not altered during transmission.

Digital Signature

For voting: When a voter casts a vote, their device creates a digital signature using their private key. The blockchain verifies this signature before recording the vote. This ensures non-repudiation — the voter cannot later deny having voted (but their choice remains anonymous if the wallet is pseudonymous).


🔏 10. Zero-Knowledge Proof (ZKP)

Definition: A cryptographic method that allows one party (the prover) to prove to another party (the verifier) that a statement is true, without revealing any additional information beyond the truth of the statement itself.

ZKP

For voting: A voter can prove that they voted (e.g., to receive a participation reward) without revealing who they voted for.

In our roadmap: ZKP support is planned for Q4 2026 — Q1 2027 for high-sensitivity votes where anonymity must be mathematically guaranteed even against a quantum computer.


📋 Quick Reference: Key Terms

Term One-sentence definition
Blockchain A tamper-proof distributed ledger across multiple computers.
Smart Contract Self-executing code on the blockchain that automatically enforces rules.
Gas Fee A small fee for processing a transaction on the blockchain.
Public Key The wallet address — can be shared openly.
Private Key The secret key that proves ownership — never shared.
Digital Signature A cryptographic proof that a specific person authorized a transaction.
Delegation Transferring one's voting power to another trusted member.
Zero-Knowledge Proof (ZKP) Proving a statement is true without revealing the underlying information.