-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathindex.html
171 lines (160 loc) · 10.1 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="keywords" content="ziesha network,ziesha,project,cryptocurrency,zero knowledge proofs,zksnarks">
<meta name="description" content="Ziesha is a cryptocurrency with Zero-Knowledge proofs powering its smart-contracts, focusing on a more scalable blockchain by compressing transactions!"/>
<title>Ziesha Network | Towards a lighter blockchain!</title>
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="theme-color" content="#ffffff">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/brands.min.css">
<script src='https://kit.fontawesome.com/a076d05399.js' crossorigin='anonymous'></script>
<style>
* {
font-family: 'JetBrains Mono', monospace;
}
body {
background-color: black;
color: white;
}
p, h1, h2 {
padding: 0 10px;
}
body {
font-size: 0.9em;
}
h2 {
margin: 1em 0 0 0;
}
p {
margin: 0.9em 0;
}
#menu span {
font-size:1.2em;
padding:0 20px;
}
a {
font:inherit;
color:inherit;
text-decoration: underline;
}
#menu a {
text-decoration: none;
}
a:hover, #menu a:hover {
font:inherit;
color:inherit;
text-decoration: underline;
}
hr {
margin: 3em;
border: 0;
height: 1px;
background: #333;
background-image: linear-gradient(to right, #ccc, #333, #ccc);
}
</style>
<script async defer src="https://buttons.github.io/buttons.js"></script>
</head>
<body>
<h1 style="text-align: center;"><img style="height:2em;vertical-align:middle; border-radius: 50%;padding-bottom:0.2em" src="logo.jpg" alt="Ziesha's logo, similar to letter Z"/> Ziesha Network</h1>
<div style="text-align:center" id="menu">
<a target="_blank" rel="noopener noreferrer" href="https://t.me/ZieshaNetworkOfficial"><span class='fab fa-telegram'></span></a>|<a target="_blank" rel="noopener noreferrer" href="https://twitter.com/ZieshaNetwork"><span class='fab fa-twitter'></span></a>|<a target="_blank" rel="noopener noreferrer" href="https://discord.gg/4gbf9gZh8H"><span class='fab fa-discord'></span></a>|<a target="_blank" rel="noopener noreferrer" href="https://medium.com/@zieshanetwork"><span class='fab fa-medium'></span></a>|<a target="_blank" rel="noopener noreferrer" href="https://github.com/ziesha-network/bazuka"><span class='fab fa-github'></span></a>|<span><a href="index.html">en</a></span>|<span><a href="index_zh.html">中文</a></span>|<span><a href="index_ru.html">ру</a></span>
</div>
<div style="max-width: 40em; margin: 0 auto;">
<hr>
<p><b>HEY!</b> Have questions? Read our recently written <a href="/faq.html">FAQ</a>!</p>
<hr>
<h2>What is Ziesha?</h2>
<p>
Ziesha (ℤ) is a new layer-1 cryptocurrency which uses <b>Zero Knowledge proofs</b> as the back-end of its smart-contracts, focusing on a more scalable (Yet maintainable) blockchain by compressing transactions through zkRollup-like circuits. In order to keep the protocol simple, the smart-contracts are expressed as mathematical constraints instead of bytecodes of a virtual machine.
</p>
<div style="text-align:center; font-size:5em;">ℤ</div>
<p>
For detailed technical information, read the <a href="https://hackmd.io/@geusebetel/ziesha">Ziesha Whitepaper</a>! Also, we are actively developing the Ziesha project. Follow us on GitHub!</p>
<div style="text-align:center; padding: 0.5em;">
<a style="display:block; margin:0" class="github-button" href="https://github.com/ziesha-network" data-size="large" aria-label="Follow @ziesha-network on GitHub">Follow @ziesha-network</a>
</div>
<h2>Huh? Zero-Knowledge proofs? 🤔</h2>
<p>
A Zero-Knowledge protocol is a cryptographic method by which someone can prove that they know the <i><b>answer</b></i> to a <i><b>problem</b></i> without actually revealing it. A very good example of an interactive Zero-Knowledge proof is provided below:
</p>
<p>
<i> - Suppose Alice is blindfolded and has two balls in her hands. Bob, who is able to see the balls, claims that the balls are different in colors. Alice doesn't trust Bob. How can Bob convince Alice that the balls have different colors (The <i><b>problem</b></i>), without uncovering Alice's eyes (Revealing the <i><b>answer</b></i>)?</i>
</p>
<div style="text-align:center">
<img alt="Alice and Bob while Alice has two balls in her hands" style="width:80%;" src="colorblind.png"/>
</div>
<p>
Here is what Alice does:
<ul>
<li>She first hides the balls behind her back.</li>
<li>She shuffles the balls with a 50% chance.</li>
<li>She shows back the balls to Bob, and ask him: <i>- Did I shuffle the balls?</i></li>
</ul>
</p>
<div style="text-align:center">
<img alt="Alice asking Bob if she shuffled the balls" style="width:80%;" src="shuffle.png"/>
</div>
<p>
If the balls are really different in colors, Bob would give Alice the correct answer. If he can't distinguish their colors, he still can give Alice a random answer, and his answer can still be correct. But the chances of giving a correct answer is 50%.
</p>
<p>
Alice repeats the procedure for 20 times. If the balls have same colors, the chances of Bob giving the correct answer all the 20 times is (1/2)^20 (Around 0.000001%). The probability is so tiny that Alice can conclude that Bob is really able to distinguish between the balls, leading to the conclusion that they really have different colors.
</p>
<h2>What are you trying to prove? 😐</h2>
<p>
Suppose there is a novel payment system that consists of a <a target="_blank" rel="noopener noreferrer" href="https://en.wikipedia.org/wiki/Merkle_tree">merkle tree</a> in which every leaf represents an <b>account</b> (A public key and a balance). We define the <b>state</b> of the system as the merkle root of this tree.
</p>
<div style="text-align:center">
<img alt="A merkle-tree with 8 leaves" style="width:60%;" src="https://upload.wikimedia.org/wikipedia/commons/thumb/9/95/Hash_Tree.svg/800px-Hash_Tree.svg.png"/>
</div>
<p>
We want to prove a big set of transactions have happened, changing the state of the system from A to B (The <i><b>problem</b></i>), without showing the transactions (The <i><b>answer</b></i>).
</p>
<p>
Now, here is the mind blowing fact:
</p>
<p>
The <i><b>proof</b></i> that you provide is constant in size, no matter how big the <i><b>answer</b></i> is. E.g. the <i><b>answer</b></i> can be millions of transactions, but you don't need to show them for the state transition to happen. A constant sized <i><b>proof</b></i> is enough to convince everyone that the state transition is valid! 🤯
</p>
<h2>Ehmmm, Ethereum already has this with zkRollups? 🙄</h2>
<p>
<img alt="Ethereum logo" style="width:5em; margin:1em" align="right" src="eth.png"/>You got us! But hey, there is a big difference. In <a target="_blank" rel="noopener noreferrer" href="https://ethereum.org/en/developers/docs/scaling/zk-rollups/">zkRollups</a>, there is a centralized <i><b>operator</b></i>, constantly publishing Zero-Knowledge proofs on the main chain, and in case the operator stops doing this (i.e. gets unavailable), the chain will roll back to a previous state, from which some other operator is able to build on. This is a huge amount of complexity.
</p>
<p>
Blockchains like Ethereum/Bitcoin, enforce data-availability of the chain history, and not a SNARK state. Ziesha nodes and validators are implemented in a way to only accept forks that reveal the chain state of their last block, meaning that they will check if the hash of the provided state results in the state-hash submitted on the last block. This mechanism makes sure that the compressed state of the last block is always available. A longer subchain whose tip state is not available, worth nothing and is not accepted by the network. This removes the mentioned complexities by a great deal and creates room for some creativity as well.
</p>
<h2>Okay, how are you going to handle smart-contracts? 😉</h2>
<p>
The equivalent of a Smart Contract in Ziesha blockchain is a <i><b>Zero Contract</b></i>. The contracts in Ziesha blockchain are not written for a specific virtual-machine (Like EVM), but written in <a target="_blank" rel="noopener noreferrer" href="https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea649"><b>R1CS</b></a> (Which is the building block of zkSNARK circuits).
</p>
<div style="text-align:center; margin: 2em">
<img alt="R1CS circuit equations. A*B+C=0" style="width:60%;" src="r1cs.png"/>
</div>
<p>
In this scheme, the programmer uploads the verifying keys of his R1CS contract (Which can consist of multiple circuits) on the blockchain and people could easily invoke these circuits and move from one state into another with a single small transaction (Which could be a compressed version of thousands of transactions).
</p>
<h2>How can I be a part of this? ❤️</h2>
<p>
Follow us on GitHub! Contribute to the project either by coding or promoting it. 💸
</p>
<hr>
<div style="text-align:center;margin:2em" id="menu">
<a href="terms.html" style="font-size:0.8em">Terms and Conditions</a>
<br>
<br>
Made with ♥ and ₿ - 2023
</div>
</div>
</body>
</html>