-
Notifications
You must be signed in to change notification settings - Fork 26
/
index.html
289 lines (232 loc) · 14.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
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
<!DOCTYPE html>
<html lang='en'>
<head>
<title>Handshake</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
<meta name="description" content="Decentralized certificate authority and naming" />
<meta property="og:title" content="Handshake" />
<meta property="og:description" content="Decentralized certificate authority and naming" />
<meta property="og:url" content="https://handshake.org" />
<meta property="og:image" content="https://www.handshake.org/images/landing/logo-dark.svg" />
<link rel="shortcut icon" href="/img/favicon/hns-favicon.ico" type="image/x-icon">
<link rel="stylesheet" type="text/css" href="css/fonts/nitti.css" />
<link rel="stylesheet" type="text/css" href="css/fonts/ibmplexmono.css" />
<link rel="stylesheet" type="text/css" href="css/fonts/ibmplexsans.css" />
<link rel="stylesheet" type="text/css" href="css/footer.css"/>
<link rel="stylesheet" type="text/css" href="css/marketing.css" />
<style type="text/css">
.no-fouc {display: none;}
</style>
<script type="text/javascript">
document.documentElement.className = 'no-fouc';
</script>
</head>
<body class="landing">
<header><div class="header-wrapper"><div class="inner-wrapper">
<nav id="navBar" class="no-js nav-bar">
<div id='nav-toggle' class="burgermenu" href="#">☰</div>
<div id='overlay'></div>
<div id="burgernav">
<ul>
<li><a href="https://handshake-org.github.io">Documentation</a></li>
<li><a href="/community">Community</a></li>
<li><a href="/faq">Faq</a></li>
</ul>
</div>
<a class="nav-logo" href="/">
<img class='logo logo-dark' src='/images/landing/logo-dark.svg' /><img class='logo logo-light' src='/images/landing/logo-light.svg' />
</a>
<div class="nav-right ">
<div class="nav-links "">
<ul>
<li><a href="https://handshake-org.github.io">Documentation</a></li>
<li><a href="/community">Community</a></li>
<li><a href="/faq">Faq</a></li>
</ul>
</div>
</div>
</nav>
</div></div></header>
<div class="content">
<div class="wrapper">
<section class="light"><div class="section-wrapper"><div class="columns">
<div>
<h1>Decentralized naming and certificate authority</h1>
<h3>An experimental peer-to-peer root naming system.</h3>
</div>
<div>
<div class='hero-info'>
<p>
<strong>Source Code:</strong>
Multiple implementations may exist. Initial code: <a href='https://github.com/handshake-org/hsd'>GitHub</a>, <a href="/download">Download</a>
</p>
</div>
<div class='hero-info'>
<p>
<strong>GUI Full Node Wallet:</strong>
<a href="https://bobwallet.io/">Bob Wallet</a>, <a href="https://github.com/kyokan/bob-wallet">Source Code</a>
</p>
</div>
<div class='hero-info'>
<p>
<strong>Claim HNS for FOSS developers:</strong>
<br><a href='/claim'>Claim here</a> and register names.
<p style="font-size:12px">Please be careful when using other software to claim.</p>
</p>
</div>
<div class='hero-info'>
<p>
<strong>Technical Info:</strong>
<a href='https://github.com/handshake-org/hsd'>Install</a>, <a href='files/handshake.txt'>Design notes</a>, <a href='https://handshake-org.github.io'>Docs</a>.
</p>
</div>
<div class='hero-info'>
<p>
<strong>Telegram:</strong>
<a href='https://t.me/handshake_hns'>@handshake_hns</a>
</p>
<p>
<strong>Discord:</strong>
<a href='/discord'>handshake on Discord</a>
</p>
<p>
<strong>IRC:</strong>
<a href='https://web.libera.chat#handshake'>#handshake on Libera Chat</a>
</p>
<p>
<strong>Matrix↔IRC Bridge:</strong>
<a href='https://matrix.to/#/#handshake:libera.chat'>#handshake:libera.chat</a>
</p>
</div>
</div>
</div></div></section>
<section id="about" class="default"><div class="section-wrapper"><div class="columns">
<div>
<h2>ABOUT HANDSHAKE</h2>
<p>Handshake is a decentralized, permissionless naming protocol where every peer is validating and in charge of managing the root DNS naming zone with the goal of creating an alternative to existing Certificate Authorities and naming systems. Names on the internet (top level domains, social networking handles, etc.) ultimately rely upon centralized actors with full control over a system which are relied upon to be honest, as they are vulnerable to hacking, censorship, and corruption. Handshake aims to experiment with new ways the internet can be more secure, resilient, and socially useful with a peer-to-peer system validated by the network's participants.</p>
<p>Handshake is an experiment which seeks to explore those new ways in which the necessary tools to build a more decentralized internet. Services on the internet have become more centralized beginning in the 1990s, but do not fulfill the original decentralized vision of the internet. <b><!--<span style="color:#693AFA">-->Email became Gmail, usenet became reddit, blog replies became facebook and Medium, pingbacks became twitter, squid became Cloudflare, even gnutella became The Pirate Bay<!--</span>--></b>. Centralization exists because there is a need to manage spam, griefing, and sockpuppet/sybil attacks. Previous decentralized systems largely stopped working due to spam. If it were more costly to grief on the internet using decentralized systems, the need for trusted centralized corporations to manage these risks decrease. Internet services and platforms may benefit from building on top of a decentralized system which is specifically designed for resilience against sybil attacks.<br>As we may redecentralize.</p>
</div>
<div>
<img src="images/landing/blocks.svg" alt="Web of Network Nodes" width="430px"/>
</div>
</div></div></section>
<section class="light"><div class="section-wrapper"><div>
<h2>THE HANDSHAKE PROTOCOL</h2>
<p>By running Handshake, one can participate in a decentralized open naming platform secured by a decentralized peer-to-peer network.
<p>Read the <a href='files/handshake.txt'>project design notes</a><br>
Documentation <a href='https://handshake-org.github.io'>here</a><br>
Initial code on <a href='https://github.com/handshake-org'>GitHub</a>
</p>
<ul class="notes">
<li><b>A base layer for the decentralized internet</b>. The internet is arranged in layers, to decentralize the internet, we need to start at the lowest layers of the stack. Secure naming ensures user agents are talking to the right endpoints.</li>
<li><b>The place for minimal global consensus</b>. Decentralization is most successful if we have minimal areas to reach complete global agreement. Names and signing certificates may be one of the few (if only) places of global agreement for a decentralized web. Handshake is an experimental structure for reaching that agreement via software.</li>
<li><b>True decentralization</b>, no official singular Foundation, Committee, Corporation, or entities in permanent unitary control of the protocol.</li>
<li><b>Economic incentives</b> enable decentralized agreements to form via a transparent name auction process. Without some kind of economic cost function, one person could register all names. Economic incentives enable decentralized sybil resistance which would otherwise be centralized and corrupted.
<li><b>Alternative to certificate authorities</b>, using a decentralized trust anchor to prove domain ownership</li>
<li><b>Distributed and permissionless</b> zone file to which any participant has the right to add an entry or serve as host and validator</li>
<li><b>Light clients</b> via merkelized proofs and proof-of-work allow for lightweight name resolutions and certificates. The initial protocol enables cryptographic name proofs, with the potential for decentralized proof lookups to be usually within the MTU limit.</li>
<li><b>A platform for sybil resilience</b>. WoT can/should be used as an augmentation, but it is often not a global agreement of resources for individual decentralized services. By using Handshake names, one can know that some kind of economic limits exist for the use of the name. This can be leveraged whenever one is concerned about resource exhaustion, and reaching global agreement on moderation alone is too costly.</li>
</ul>
</div></div></section>
<section class="default"><div class="section-wrapper"><div class="columns">
<div>
<h2>INTERNET NAME TRANSFERS USING COINS TO PREVENT SYBIL ATTACKS</h2>
<p>Handshake is a piece of software (and a loose consensus on agreement of the software itself). This software's primary function is for people to come to agreement on names and cryptographic keys authorized to represent that names in a decentralized way. To do this in a decentralized way, we need to prevent a single party from claiming all the names. Therefore, a unit of account is needed to prevent that single party from claiming all names.</p>
<p>Handshake uses a coin system for name registration. The Handshake coin (HNS) is the mechanism by which participants transfer, register, and update internet names. The community will be able to initiate auctions and place bids for top-level domains using HNS or trade their HNS as they see fit, with differing value per name.</p>
<p>Therefore, Handshake allocates the majority of its initial coins towards the FOSS community with absolutely no obligation attached, as it is this community most relevant with decentralized software and tools. The goal of the initial design was to account for all possible stakeholders. <a href="/grant-sponsors">More info</a>.</p>
<p>Handshake's incentive design assumptions relies upon Metcalfe's Law (Beckstrom's Law, etc.). While Bitcoin's value is derived from it being a costly store of value, Handshake's value is derived from its network of users. Metcalfe's Law asserts that an increase in userbase increases the value of the network (sub)exponentially. This means that allocation of value to potential developers and users of this system be a benefit to everyone, with network effect derived benefiting all users.</p>
</div>
<div>
<div class='faucet-cta'>
<h3>Free and Open Source Developers</h3>
<div class='columns'>
<p>Majority ownership of HNS can be claimed by Free and Open Source Software contributors directly to the network itself on-chain. <a href='/claim'> Read more here.</a></p>
</div>
<div class='columns'>
<p>Top github users and PGP WoT Strong Set are the primary set (along with several other communities). This list is <b>not</b> a "toplist of FOSS developers and advocates" and inclusion does not imply that one is a top contributor, this was a list optimized towards availability of scrapeable unique public keys, as the keys are claimed in a decentralized way after the list was generated, and cannot be modified after Handshake goes live without a subsequent hard-fork allocation.</p>
</div>
</p>
</div>
</div>
</div></div></section>
</div>
</div>
<footer id='footer'>
<!-- the onboarding pages and dashboard use the small footer -->
<div class='footer-wrap'>
<nav>
<div class='header'>
<h3>Handshake</h3>
<span><img class='footer-caret-down' src='/img/footer/down-caret.svg' alt='Toggle expanded menu on mobile'/></span>
<span><img class='footer-caret-up hide' src='/img/footer/up-caret.svg' alt='Toggle expanded menu on mobile'/></span>
</div>
<div class='links'>
<a href='/'>Home</a>
<a href='/community'>Community</a>
</div>
</nav>
<nav>
<div class='header'>
<h3>Learn</h3>
<span><img class='footer-caret-down' src='/img/footer/down-caret.svg' alt='Toggle expanded menu on mobile'/></span>
<span><img class='footer-caret-up hide' src='/img/footer/up-caret.svg' alt='Toggle expanded menu on mobile'/></span>
</div>
<div class='links'>
<a href='/faq'>FAQ</a>
<a href='/files/handshake.txt'>Design Notes</a>
</div>
</nav>
<nav>
<div class='header'>
<h3>Develop</h3>
<span><img class='footer-caret-down' src='/img/footer/down-caret.svg' alt='Toggle expanded menu on mobile'/></span>
<span><img class='footer-caret-up hide' src='/img/footer/up-caret.svg' alt='Toggle expanded menu on mobile'/></span>
</div>
<div class='links'>
<a href='https://handshake-org.github.io'>Documentation</a>
<a href='https://github.com/handshake-org/hsd'>Run a full node</a>
<a href='https://github.com/handshake-org/hnsd'>Install an SPV resolver</a>
<a href='https://handshake-org.github.io/guides/auctions.html'>Auction system guide</a>
</div>
</nav>
<!-- Keeps things in line -->
<nav style="display:none;">
</nav>
</div><!-- close center-wrap -->
<div class='footer-wrap bottom-wrap'>
<a href='/'>
Home
</a>
<a href='/terms-of-use'>
Terms of Use
</a>
<a href='/privacy-policy'>
Privacy Policy
</a>
<a href='/trademark-disclaimer'>
Trademark Disclaimer
</a>
<nav class='social-icons-small-footer'>
<a href='https://github.com/handshake-org/'>
<img src='/img/footer/github.svg' alt='GitHub logo'/>
</a>
<a href='https://twitter.com/hns'>
<img src='/img/footer/twitter.svg' alt='Twitter logo'/>
</a>
<a href='https://reddit.com/r/handshake'>
<img src='/img/footer/reddit.svg' alt='Reddit logo'/>
</a>
</nav>
</div>
</footer>
<script src='/js/footer.js'></script>
<script src='/js/nav.js'></script>
<script>
window.addEventListener("load", function(e) {
document.documentElement.className = '';
});
</script>
</body>
</html>