This repository has been archived by the owner on Mar 9, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathkovri.sbv
278 lines (186 loc) · 7.38 KB
/
kovri.sbv
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
0:00:01.260,0:00:04.260
Monero is secure, untraceable, electronic cash.
0:00:04.260,0:00:08.520
It is open-source, decentralized, and freely accessible to all.
0:00:08.520,0:00:13.220
In this video, we will focus on an anonymity technology, called Kovri.
0:00:13.220,0:00:17.240
Up to now, we have covered how Monero obfuscates information stored on the blockchain.
0:00:17.240,0:00:19.500
Ring signatures obscure the sender.
0:00:19.500,0:00:23.180
Stealth addresses prevent outside observers from knowing the receiving address.
0:00:23.180,0:00:26.860
And RingCT hides the amount of Monero that's transmitted.
0:00:26.860,0:00:31.380
However, some personally identifiable information may be leaked at the network level
0:00:31.380,0:00:33.100
when making a transaction.
0:00:33.100,0:00:36.380
This privacy leak is addressed with Kovri.
0:00:36.380,0:00:39.640
Kovri is a free, decentralized, anonymity technology
0:00:39.640,0:00:42.520
based on I2P's open specifications.
0:00:42.520,0:00:45.800
Kovri uses both encryption and sophisticated routing techniques
0:00:45.800,0:00:49.120
to create a private overlay-network across the Internet.
0:00:49.120,0:00:54.460
This protected overlay allows users to hide their geographical location and IP address.
0:00:54.460,0:00:57.000
An IP address is like a home address for the Internet,
0:00:57.000,0:01:00.480
so this is quite sensitive information, to say the least.
0:01:00.480,0:01:02.220
Let's go through a few scenarios
0:01:02.220,0:01:04.800
to see how this lightweight, security-focused software
0:01:04.800,0:01:07.420
helps strengthen a user's privacy.
0:01:07.420,0:01:10.460
Suppose Alice wants to send Monero to Bob.
0:01:10.460,0:01:15.240
Alice's wallet creates a transaction and then broadcasts it to the Monero network.
0:01:15.240,0:01:18.660
The Monero network is made up of nodes that communicate with each other
0:01:18.660,0:01:21.740
by directing messages using IP addresses.
0:01:21.740,0:01:25.040
This means that it might be possible to geographically trace data
0:01:25.040,0:01:27.060
as it travels over the open Internet,
0:01:27.060,0:01:30.500
from start to finish and everywhere in between.
0:01:30.500,0:01:32.820
Even though the sender's and recipient's wallet addresses
0:01:32.820,0:01:36.060
- as well as the amount of Monero sent - remain private,
0:01:36.060,0:01:39.040
Alice is taking a risk in broadcasting her transaction
0:01:39.040,0:01:42.100
as some nodes may be logging IP addresses.
0:01:42.100,0:01:43.940
An adversary with enough resources
0:01:43.940,0:01:47.140
could attempt to associate transactions with IP addresses
0:01:47.140,0:01:49.920
to determine from where transactions originate.
0:01:49.920,0:01:55.040
This could potentially lead to an adversary not relaying her transactions to the rest of the network;
0:01:55.040,0:01:58.280
or - worse - arriving at her front door.
0:01:58.280,0:02:00.800
Now let’s imagine a different scenario.
0:02:00.800,0:02:05.280
Suppose Charlie wants to support the Monero network by running a full node at his home.
0:02:05.280,0:02:09.420
After a few weeks, he receives a cease and desist letter from his Internet Service Provider
0:02:09.420,0:02:13.020
claiming that running a node is a violation of the terms of service.
0:02:13.020,0:02:14.380
Or consider this,
0:02:14.380,0:02:16.820
suppose Dave is an operator of a mining pool
0:02:16.820,0:02:21.300
that donates a portion of block rewards to a political party or controversial cause.
0:02:21.300,0:02:24.100
Other nodes could purposefully reject his solved blocks
0:02:24.100,0:02:27.780
to express their disagreement with his political or social views.
0:02:27.780,0:02:32.840
Alice, Bob, Charlie, and Dave all have at least one thing in common:
0:02:32.840,0:02:35.240
their IP addresses were exposed.
0:02:35.240,0:02:39.480
Users could try to hide IP addresses with the Tor or a VPN;
0:02:39.480,0:02:43.040
however both of these strategies have serious weaknesses.
0:02:43.040,0:02:46.180
The Tor network has "semi-trusted" Directory Authorities
0:02:46.180,0:02:48.580
which give a handful of Tor node operators
0:02:48.580,0:02:51.620
overreaching influence into network consensus.
0:02:51.620,0:02:56.140
Network consensus ultimately determines who is allowed to relay traffic on the Tor network
0:02:56.140,0:02:58.580
based on the views of the Authorities.
0:02:58.580,0:03:02.620
Furthermore, correlation attacks are easily possible with trusted VPNs,
0:03:02.620,0:03:07.080
making it easy for large attackers to de-anonymize a user's traffic.
0:03:07.080,0:03:11.720
So what can Alice, Bob, Charlie, and Dave do to mitigate these threats?
0:03:11.720,0:03:13.240
They could use Kovri!
0:03:13.240,0:03:16.820
If they exclusively use Kovri to connect to the Monero network,
0:03:16.820,0:03:18.720
no one will know their IP address,
0:03:18.720,0:03:20.880
making passive surveillance impractical,
0:03:20.880,0:03:24.580
while substantially improving Monero's censorship resistance.
0:03:24.580,0:03:28.420
As you can see, Kovri is a software that allows users to send transactions
0:03:28.420,0:03:31.020
more privately than ever before.
0:03:31.020,0:03:33.000
Let's next go over some technical details
0:03:33.000,0:03:36.660
to have a better understanding of how Kovri works under the hood.
0:03:36.660,0:03:39.280
Kovri tunnels traffic through the I2P network
0:03:39.280,0:03:42.360
utilizing “garlic encryption” and “garlic routing”.
0:03:42.360,0:03:46.360
Information travels within a private overlay-network by way of messages,
0:03:46.360,0:03:50.680
which are encrypted in layers each time the message is passed along to peers in the network,
0:03:50.680,0:03:53.120
similar to a Matryoshka doll.
0:03:53.120,0:03:57.580
For each inner doll there is a lock and public key to the next doll.
0:03:57.580,0:04:01.340
Peers in the network are not able to read the contents of the message being relayed,
0:04:01.340,0:04:04.140
so information sent from the sender to its destination
0:04:04.140,0:04:06.420
(and vice-versa) are secured.
0:04:06.420,0:04:12.080
The only information visible to peers is the instruction for sending messages to the next peer.
0:04:12.080,0:04:15.360
To achieve greater privacy at a slight cost to performance,
0:04:15.360,0:04:18.180
users are able to connect to several peers.
0:04:18.180,0:04:23.480
Essentially, Kovri covers an application's Internet traffic to make it anonymous within the network.
0:04:23.480,0:04:24.940
Given this characteristic,
0:04:24.940,0:04:29.360
Kovri is a great solution for anonymously communicating over IRC, email,
0:04:29.360,0:04:32.120
or accessing hidden services.
0:04:32.120,0:04:34.880
Kovri will revolutionize peer-to-peer connections
0:04:34.880,0:04:38.280
and increase network resiliency and privacy worldwide.
0:04:38.280,0:04:41.780
Malicious nodes can no longer threaten users who create transactions
0:04:41.780,0:04:44.680
or block them from propagating across the network.
0:04:44.680,0:04:47.600
Kovri will come bundled with future Monero releases
0:04:47.600,0:04:49.220
and be enabled by default.
0:04:49.220,0:04:50.260
In addition,
0:04:50.260,0:04:55.340
Kovri will feature a common API that would allow other cryptocurrencies and applications to use it,
0:04:55.340,0:04:57.180
not just Monero.
0:04:57.180,0:04:59.900
To learn more about Monero and the Kovri project,
0:04:59.900,0:05:04.740
check out getmonero.org. and getkovri.org.