0 00:00:00,000 --> 00:00:30,000 Dear viewer, these subtitles were generated by a machine via the service Trint and therefore are (very) buggy. If you are capable, please help us to create good quality subtitles: https://c3subtitles.de/talk/932 Thanks! 1 00:00:14,500 --> 00:00:16,949 Yeah, we're here to listen again, 2 00:00:18,070 --> 00:00:20,379 one of the big problems of today is 3 00:00:20,380 --> 00:00:23,459 how to communicate with 4 00:00:23,460 --> 00:00:25,579 one of those gumshoe people sniffing out 5 00:00:25,580 --> 00:00:27,879 behind you, including 6 00:00:27,880 --> 00:00:30,429 picking up your meta data from the 7 00:00:30,430 --> 00:00:31,670 commercial side of 8 00:00:33,610 --> 00:00:34,780 whatever the system is. 9 00:00:36,620 --> 00:00:38,989 And this is another try if I write, 10 00:00:38,990 --> 00:00:40,590 if I rightly inform, this is the 11 00:00:41,660 --> 00:00:43,279 problem is with most of the stuff you 12 00:00:43,280 --> 00:00:45,349 still you either have to 13 00:00:45,350 --> 00:00:47,479 be linked to some GSM 14 00:00:47,480 --> 00:00:49,609 number or you have to have 15 00:00:49,610 --> 00:00:50,779 a WiFi around. 16 00:00:50,780 --> 00:00:53,089 You need some IP connection. 17 00:00:53,090 --> 00:00:55,399 And obviously people have been thinking 18 00:00:55,400 --> 00:00:56,400 about that. 19 00:00:57,240 --> 00:00:58,240 And. 20 00:00:59,500 --> 00:01:02,409 This is Tostan, his full name is 21 00:01:02,410 --> 00:01:03,410 Tostan Growth. 22 00:01:04,870 --> 00:01:06,849 Excuse me, I'm pronouncing it the German 23 00:01:06,850 --> 00:01:09,189 way and 24 00:01:09,190 --> 00:01:10,269 he's part of the. 25 00:01:12,080 --> 00:01:15,109 Prior team since two years, 26 00:01:15,110 --> 00:01:17,509 he's originally from Germany, is a 27 00:01:17,510 --> 00:01:19,010 free software activist on. 28 00:01:23,120 --> 00:01:25,390 Programmer and he lives in Brazil. 29 00:01:26,730 --> 00:01:27,730 Envy, 30 00:01:29,720 --> 00:01:30,980 where's your tan, by the way? 31 00:01:33,620 --> 00:01:35,839 OK, so 32 00:01:35,840 --> 00:01:37,939 let's have a big hand for to go to who's 33 00:01:37,940 --> 00:01:39,519 going to present prior to you. 34 00:01:49,230 --> 00:01:51,239 Thank you very much all for coming here 35 00:01:51,240 --> 00:01:53,279 today, for taking time out of your busy 36 00:01:53,280 --> 00:01:54,959 schedule. I hope you had a great Congress 37 00:01:54,960 --> 00:01:55,960 so far. 38 00:01:57,440 --> 00:01:58,789 And thanks for coming to hear about 39 00:01:58,790 --> 00:02:01,759 Brierre, so let's get right into it. 40 00:02:01,760 --> 00:02:03,259 What is Brayer? 41 00:02:03,260 --> 00:02:05,899 Essentially, Brierre is a communication 42 00:02:05,900 --> 00:02:08,929 tool. You could say it is 43 00:02:08,930 --> 00:02:10,819 been developed, being developed since 44 00:02:10,820 --> 00:02:11,899 2012. 45 00:02:11,900 --> 00:02:14,599 So quite some time. 46 00:02:14,600 --> 00:02:17,149 And some of you might be thinking now 47 00:02:17,150 --> 00:02:19,849 of yet another messenger, 48 00:02:19,850 --> 00:02:21,049 like, don't we have too many of those 49 00:02:21,050 --> 00:02:23,959 already? And I totally agree like 50 00:02:23,960 --> 00:02:26,209 that. Who have you have at least five 51 00:02:26,210 --> 00:02:27,889 messages on your phone that you use to 52 00:02:27,890 --> 00:02:28,890 connect to people? 53 00:02:31,330 --> 00:02:33,439 Yeah, it's crazy. Like, I think it's 54 00:02:33,440 --> 00:02:35,929 a third of the audience who has that. 55 00:02:35,930 --> 00:02:38,269 So I can only recommend 56 00:02:38,270 --> 00:02:40,729 everybody don't build yet another secure 57 00:02:40,730 --> 00:02:43,339 messenger unless 58 00:02:43,340 --> 00:02:45,229 it's substantially different from all the 59 00:02:45,230 --> 00:02:46,250 others that we have so far. 60 00:02:48,140 --> 00:02:50,239 And to motivate a little 61 00:02:50,240 --> 00:02:52,369 bit why we need yet another one, 62 00:02:52,370 --> 00:02:55,159 let's look at some of the threats 63 00:02:55,160 --> 00:02:57,319 that people who use messengers 64 00:02:57,320 --> 00:02:58,320 are facing. 65 00:03:01,160 --> 00:03:03,259 Yes. Before we got into this, sorry, I 66 00:03:03,260 --> 00:03:05,509 forgot the slide brier's focus 67 00:03:05,510 --> 00:03:07,579 on security and resilience. 68 00:03:07,580 --> 00:03:09,199 And I think especially this resilience 69 00:03:09,200 --> 00:03:10,129 part is something new. 70 00:03:10,130 --> 00:03:11,879 And we're hearing the resilience track of 71 00:03:11,880 --> 00:03:13,279 the chaos communication Congress. 72 00:03:14,330 --> 00:03:16,429 So this will be important as 73 00:03:16,430 --> 00:03:18,589 well. So now back to the threats 74 00:03:18,590 --> 00:03:20,479 we are facing when we use communication 75 00:03:20,480 --> 00:03:21,480 over the Internet 76 00:03:23,150 --> 00:03:24,800 for classical warrantless eavesdropping. 77 00:03:26,200 --> 00:03:28,389 Like, they'll read our messages, but 78 00:03:28,390 --> 00:03:29,919 we want confidentiality 79 00:03:31,240 --> 00:03:33,339 and eavesdropping 80 00:03:33,340 --> 00:03:35,409 has been largely solved 81 00:03:35,410 --> 00:03:38,769 by end to end, encryption 82 00:03:38,770 --> 00:03:40,389 essentially means at the source of the 83 00:03:40,390 --> 00:03:42,159 communication, the message is encrypted 84 00:03:42,160 --> 00:03:44,319 and that the destination, it's decrypted 85 00:03:44,320 --> 00:03:46,389 and nobody in between, not even any 86 00:03:46,390 --> 00:03:49,069 servers on the way can read the content. 87 00:03:49,070 --> 00:03:50,589 That's great. And there have been some 88 00:03:50,590 --> 00:03:52,419 awesome advances in the last year 89 00:03:53,680 --> 00:03:55,719 that made into an encryption usable for 90 00:03:55,720 --> 00:03:56,889 everybody. 91 00:03:56,890 --> 00:03:58,479 So you don't see any keys anymore. 92 00:03:58,480 --> 00:03:59,679 You don't need to sign anything. 93 00:03:59,680 --> 00:04:01,389 It just works. It gets out of your way 94 00:04:01,390 --> 00:04:02,490 and this is the way it should be. 95 00:04:04,600 --> 00:04:06,399 The only problem of end to end encryption 96 00:04:06,400 --> 00:04:08,919 is that it still needs more adoption. 97 00:04:08,920 --> 00:04:11,409 And I'm especially looking at you, ello, 98 00:04:11,410 --> 00:04:13,569 Facebook Messenger and Telegram 99 00:04:13,570 --> 00:04:15,579 where end to end encryption is available 100 00:04:15,580 --> 00:04:17,559 but not activated by default. 101 00:04:18,970 --> 00:04:20,648 And that's something that I hope will 102 00:04:20,649 --> 00:04:21,879 change in the future as well. 103 00:04:23,800 --> 00:04:26,859 Next problem, metadata. 104 00:04:26,860 --> 00:04:27,939 You're here at the Congress. 105 00:04:27,940 --> 00:04:29,109 You probably know all about it. 106 00:04:29,110 --> 00:04:30,519 So I will be brief. 107 00:04:30,520 --> 00:04:32,769 Metadata is data that is 108 00:04:32,770 --> 00:04:34,209 not the content itself, but everything 109 00:04:34,210 --> 00:04:36,159 else like of the time of your 110 00:04:36,160 --> 00:04:38,619 communication, who you are communicating 111 00:04:38,620 --> 00:04:40,659 with and how much. 112 00:04:40,660 --> 00:04:43,059 And that is 113 00:04:43,060 --> 00:04:45,309 almost all that your adversaries 114 00:04:45,310 --> 00:04:46,989 need to know about you, because it tells 115 00:04:46,990 --> 00:04:48,309 a lot and you can deduce a lot of 116 00:04:48,310 --> 00:04:49,310 information from it. 117 00:04:50,530 --> 00:04:52,659 And this problem 118 00:04:52,660 --> 00:04:54,069 has been largely ignored. 119 00:04:54,070 --> 00:04:56,409 Unfortunately, there 120 00:04:56,410 --> 00:04:58,479 is just a few projects to try 121 00:04:58,480 --> 00:05:00,399 to address that, but it's a very 122 00:05:00,400 --> 00:05:01,329 important one. 123 00:05:01,330 --> 00:05:03,459 And if you don't believe me 124 00:05:03,460 --> 00:05:05,559 that it's important, maybe you 125 00:05:05,560 --> 00:05:06,969 will believe this guy. 126 00:05:06,970 --> 00:05:08,050 Yeah, first of all, 127 00:05:09,730 --> 00:05:10,839 we have no audio. 128 00:05:12,520 --> 00:05:14,949 Mutual friends to go back. 129 00:05:14,950 --> 00:05:17,019 Yeah, four old personal 130 00:05:17,020 --> 00:05:18,359 description of. 131 00:05:18,360 --> 00:05:20,569 Can be mitigated by 132 00:05:20,570 --> 00:05:22,499 a mutual friend, Stewart Baker is 133 00:05:22,500 --> 00:05:24,809 absolutely correct that we 134 00:05:24,810 --> 00:05:26,550 kill people based on their data. 135 00:05:28,950 --> 00:05:30,569 But that's not what we do with this 136 00:05:30,570 --> 00:05:31,570 metadata, 137 00:05:33,600 --> 00:05:34,600 thankfully. 138 00:05:36,420 --> 00:05:38,189 Well, I was working up a sweat there for 139 00:05:38,190 --> 00:05:39,190 a second. 140 00:05:41,140 --> 00:05:42,609 So for those who might not have 141 00:05:42,610 --> 00:05:45,309 understood it, he said, we kill people 142 00:05:45,310 --> 00:05:48,069 based on metadata alone. 143 00:05:48,070 --> 00:05:49,869 And he was talking about these two kinds 144 00:05:49,870 --> 00:05:52,029 of metadata and he was 145 00:05:52,030 --> 00:05:54,099 talking about phone records mostly, and 146 00:05:54,100 --> 00:05:55,929 domestic ones and foreign ones. 147 00:05:55,930 --> 00:05:58,119 So he's basically promising, oh, we don't 148 00:05:58,120 --> 00:06:00,099 kill the Americans based on the metadata, 149 00:06:00,100 --> 00:06:01,100 just everybody else. 150 00:06:04,480 --> 00:06:06,789 So these phone records, 151 00:06:06,790 --> 00:06:08,229 especially when it comes to messengers, 152 00:06:08,230 --> 00:06:11,529 are a nice selecter 153 00:06:11,530 --> 00:06:13,329 and they are all centrally stored. 154 00:06:13,330 --> 00:06:14,979 And your entire address book is uploaded 155 00:06:14,980 --> 00:06:16,209 to to people's servers 156 00:06:17,770 --> 00:06:19,179 and then the servers and all of the 157 00:06:19,180 --> 00:06:20,319 metadata that's going on. 158 00:06:20,320 --> 00:06:22,089 And it's juicy target for an attack. 159 00:06:22,090 --> 00:06:23,349 Like if you compromise this kind of 160 00:06:23,350 --> 00:06:24,699 infrastructure, you know, you have all 161 00:06:24,700 --> 00:06:25,749 the metadata of all the people 162 00:06:25,750 --> 00:06:27,040 communicating for the service, 163 00:06:28,990 --> 00:06:31,179 but also timing a text 164 00:06:31,180 --> 00:06:32,180 are quite easy. 165 00:06:33,190 --> 00:06:35,319 So using phone numbers 166 00:06:35,320 --> 00:06:36,509 is maybe not the best idea, 167 00:06:37,870 --> 00:06:39,729 but apart from eavesdropping and 168 00:06:39,730 --> 00:06:41,859 metadata, there is 169 00:06:41,860 --> 00:06:43,959 also censorship and 170 00:06:43,960 --> 00:06:44,979 service blocking. 171 00:06:46,240 --> 00:06:48,339 So basically they block our stuff 172 00:06:48,340 --> 00:06:49,790 and we want to have it accessible. 173 00:06:51,730 --> 00:06:53,919 This is just one example here from China 174 00:06:55,450 --> 00:06:57,279 where it happens from time to time. 175 00:06:57,280 --> 00:06:59,649 And of course, I know we can 176 00:06:59,650 --> 00:07:01,569 usually circumvent stuff like there are 177 00:07:01,570 --> 00:07:04,379 tools, but this is for technical elite. 178 00:07:04,380 --> 00:07:06,399 This is not for the big masses that can 179 00:07:06,400 --> 00:07:08,289 just easily circumvent these blocking and 180 00:07:08,290 --> 00:07:09,290 censorship. 181 00:07:11,430 --> 00:07:13,319 And it happens all over the world, I 182 00:07:13,320 --> 00:07:14,249 don't know how much you're following 183 00:07:14,250 --> 00:07:16,379 this, this happens in Turkey. 184 00:07:16,380 --> 00:07:18,479 In Brazil, the courts are very happy 185 00:07:18,480 --> 00:07:20,189 to block what said once in a while, even 186 00:07:20,190 --> 00:07:22,649 though it's used by almost everybody for 187 00:07:22,650 --> 00:07:24,029 for lots of important things. 188 00:07:25,820 --> 00:07:28,129 And that 189 00:07:28,130 --> 00:07:29,320 shouldn't be possible, right? 190 00:07:31,590 --> 00:07:32,970 This is even worse, 191 00:07:34,050 --> 00:07:36,179 like even in industrial 192 00:07:36,180 --> 00:07:37,829 countries like Germany or the United 193 00:07:37,830 --> 00:07:39,839 States, politicians are seriously 194 00:07:39,840 --> 00:07:42,629 discussing to 195 00:07:42,630 --> 00:07:44,580 turn off the Internet completely. 196 00:07:46,190 --> 00:07:47,769 And this is really bad, like they 197 00:07:48,920 --> 00:07:51,019 they turn, they pull the plug and we lose 198 00:07:51,020 --> 00:07:53,209 all access and that 199 00:07:53,210 --> 00:07:55,879 can happen. But thankfully, 200 00:07:55,880 --> 00:07:58,279 I think politicians understood that we 201 00:07:58,280 --> 00:08:00,169 rely economically a lot on the Internet. 202 00:08:00,170 --> 00:08:02,299 So turning it off is also a bad idea 203 00:08:02,300 --> 00:08:03,619 for other reasons. 204 00:08:03,620 --> 00:08:05,719 But in many countries like Cameroon, 205 00:08:05,720 --> 00:08:07,279 for example, where they have this bring 206 00:08:07,280 --> 00:08:08,720 back our Internet campaign, 207 00:08:09,770 --> 00:08:11,449 it's still a suppression instrument by 208 00:08:11,450 --> 00:08:13,609 the governments because the reliance 209 00:08:13,610 --> 00:08:15,529 on Internet is still relatively small. 210 00:08:15,530 --> 00:08:17,469 So so people don't start the revolution. 211 00:08:17,470 --> 00:08:18,499 Then the Internet goes down 212 00:08:20,030 --> 00:08:22,579 in India. There have been 69 213 00:08:22,580 --> 00:08:24,739 total shutdowns since 2010 214 00:08:24,740 --> 00:08:26,239 in various provinces, mostly in the 215 00:08:26,240 --> 00:08:27,240 north. 216 00:08:28,740 --> 00:08:30,479 And there's many other examples, but I 217 00:08:30,480 --> 00:08:31,480 won't show you all of them, 218 00:08:33,150 --> 00:08:35,158 so this is when the government is pulling 219 00:08:35,159 --> 00:08:36,870 the plug and disconnecting us all. 220 00:08:38,730 --> 00:08:40,798 But it could also happen that 221 00:08:40,799 --> 00:08:42,529 there is a natural catorce catastrophe. 222 00:08:44,010 --> 00:08:45,299 Infrastructure breaks down. 223 00:08:45,300 --> 00:08:46,789 Maybe there's not even electricity. 224 00:08:48,120 --> 00:08:49,469 The uplinks don't work anymore. 225 00:08:49,470 --> 00:08:51,329 And we are in a big mess and still need 226 00:08:51,330 --> 00:08:52,709 to coordinate help. 227 00:08:52,710 --> 00:08:54,569 You still need to communicate, still need 228 00:08:54,570 --> 00:08:55,570 to find people. 229 00:08:58,190 --> 00:09:00,829 Another likely scenario that could happen 230 00:09:00,830 --> 00:09:02,989 where Internet won't be 231 00:09:02,990 --> 00:09:04,460 available is 232 00:09:05,810 --> 00:09:07,630 the zombie apocalypse. 233 00:09:08,960 --> 00:09:11,089 So if your tool doesn't work while 234 00:09:11,090 --> 00:09:13,219 there's a zombie apocalypse happening, 235 00:09:13,220 --> 00:09:14,929 then maybe your tool is not as good after 236 00:09:14,930 --> 00:09:15,930 all. 237 00:09:23,590 --> 00:09:25,659 So now let's look a 238 00:09:25,660 --> 00:09:27,519 little bit more detail into Brayer and 239 00:09:27,520 --> 00:09:29,709 how Brayer is attempting 240 00:09:29,710 --> 00:09:31,779 to address these issues. 241 00:09:31,780 --> 00:09:33,879 It's just it's still a work in 242 00:09:33,880 --> 00:09:36,069 progress. It's see it as 243 00:09:36,070 --> 00:09:37,989 a research approach of addressing these 244 00:09:37,990 --> 00:09:40,209 problems and. 245 00:09:42,050 --> 00:09:44,779 The the main difference 246 00:09:44,780 --> 00:09:46,879 is that Brayer is 247 00:09:46,880 --> 00:09:49,129 not using 248 00:09:49,130 --> 00:09:50,130 a server 249 00:09:51,350 --> 00:09:53,779 to relay old people's 250 00:09:53,780 --> 00:09:55,099 communication. 251 00:09:55,100 --> 00:09:57,199 Now, this is how all of these 252 00:09:57,200 --> 00:09:58,789 messages you have on your phone work. 253 00:09:58,790 --> 00:10:00,789 There is a central server infrastructure. 254 00:10:00,790 --> 00:10:02,359 Whenever you send a message, it goes 255 00:10:02,360 --> 00:10:04,549 through there and they know who 256 00:10:04,550 --> 00:10:06,529 you are and who you talk to. 257 00:10:06,530 --> 00:10:08,959 And if you cannot reach the server, 258 00:10:08,960 --> 00:10:10,429 you're out of luck. You cannot send 259 00:10:10,430 --> 00:10:11,649 anything. 260 00:10:11,650 --> 00:10:14,029 So that's why Brayer removes the server 261 00:10:14,030 --> 00:10:16,729 out of the equation and 262 00:10:16,730 --> 00:10:19,069 connects people directly, peer 263 00:10:19,070 --> 00:10:20,070 to peer. 264 00:10:27,060 --> 00:10:28,649 So the great thing about this is when you 265 00:10:28,650 --> 00:10:30,059 don't need to reach a server anymore, 266 00:10:30,060 --> 00:10:32,099 then you can use what you already have in 267 00:10:32,100 --> 00:10:34,169 your pocket anyway to make connections 268 00:10:34,170 --> 00:10:36,299 to people. And in our case, with our 269 00:10:36,300 --> 00:10:38,759 smartphones today, this is the 270 00:10:38,760 --> 00:10:41,069 Bluetooth radio and the Wi-Fi antenna 271 00:10:41,070 --> 00:10:42,070 you have in your phone. 272 00:10:42,900 --> 00:10:43,900 So. 273 00:10:46,250 --> 00:10:48,439 People can find each other 274 00:10:48,440 --> 00:10:50,539 for Bluetooth. People can find each other 275 00:10:50,540 --> 00:10:52,429 in local lands and white and Wi-Fi 276 00:10:52,430 --> 00:10:54,709 networks, and then they can directly 277 00:10:54,710 --> 00:10:55,850 make connections. 278 00:10:58,100 --> 00:11:00,649 And this is only good for 279 00:11:00,650 --> 00:11:02,569 short range, unfortunately, because our 280 00:11:02,570 --> 00:11:04,519 phones are designed like that. 281 00:11:04,520 --> 00:11:06,649 But it still is good if you 282 00:11:06,650 --> 00:11:08,749 live in a densely populated area where 283 00:11:08,750 --> 00:11:10,309 a lot of people and the social network is 284 00:11:10,310 --> 00:11:11,310 strong. 285 00:11:11,810 --> 00:11:13,459 So they're the short range doesn't matter 286 00:11:13,460 --> 00:11:14,509 so much. 287 00:11:14,510 --> 00:11:16,699 But Brayer has been made in a way 288 00:11:16,700 --> 00:11:19,099 that the way that data 289 00:11:19,100 --> 00:11:21,319 can be transported through 290 00:11:21,320 --> 00:11:23,599 whatever means, like as long 291 00:11:23,600 --> 00:11:26,329 as you have like a simplex or a duplex 292 00:11:26,330 --> 00:11:29,569 datastream, you can send your fine. 293 00:11:29,570 --> 00:11:31,609 At the moment we don't have these, but 294 00:11:31,610 --> 00:11:33,589 you could easily imagine to vry, just to 295 00:11:33,590 --> 00:11:35,719 plug in, to put it into 296 00:11:35,720 --> 00:11:36,439 Brayer. 297 00:11:36,440 --> 00:11:38,509 And then you can enhance your phone 298 00:11:38,510 --> 00:11:40,099 with one of these, like you can have a 299 00:11:40,100 --> 00:11:41,509 satellite uplink. 300 00:11:41,510 --> 00:11:44,119 Or if somebody knows 301 00:11:44,120 --> 00:11:46,339 ham radio, you can use 302 00:11:46,340 --> 00:11:48,349 this with your phone as well, or other 303 00:11:48,350 --> 00:11:50,449 devices and extend the 304 00:11:50,450 --> 00:11:52,669 range and then communicate over 305 00:11:52,670 --> 00:11:53,670 longer distances. 306 00:11:57,360 --> 00:11:58,360 And yes, 307 00:11:59,940 --> 00:12:01,979 you can even use carrier pigeons, it's 308 00:12:01,980 --> 00:12:03,059 only partly a joke, 309 00:12:04,110 --> 00:12:06,569 so sneaker networks just 310 00:12:06,570 --> 00:12:08,969 put your data on the flash drive, 311 00:12:08,970 --> 00:12:10,499 attach it to a carrier pigeon, put it in 312 00:12:10,500 --> 00:12:12,329 the mail, send it to your friends. 313 00:12:12,330 --> 00:12:13,829 They put it in and they receive the 314 00:12:13,830 --> 00:12:15,029 messages end to end. 315 00:12:15,030 --> 00:12:16,080 Encrypted, of course. 316 00:12:20,050 --> 00:12:21,050 So. 317 00:12:21,940 --> 00:12:24,369 Like I said, views end to end encryption 318 00:12:24,370 --> 00:12:26,149 with this authenticated stream cipher 319 00:12:26,150 --> 00:12:28,320 there with 256 bit keys. 320 00:12:29,380 --> 00:12:31,539 We support forward secrecy as well, 321 00:12:31,540 --> 00:12:34,299 of course, but there's a catch 322 00:12:34,300 --> 00:12:36,099 since data can be transported also 323 00:12:36,100 --> 00:12:37,959 through carrier pigeons or whatever means 324 00:12:37,960 --> 00:12:38,960 you come up with. 325 00:12:40,270 --> 00:12:42,309 There can be long delays for messages to 326 00:12:42,310 --> 00:12:44,379 arrive so you cannot roll kids forward 327 00:12:44,380 --> 00:12:45,789 so, so frequently. 328 00:12:45,790 --> 00:12:47,889 So each transport has a key 329 00:12:47,890 --> 00:12:48,890 rotation period 330 00:12:49,960 --> 00:12:51,909 that it uses to establish forward 331 00:12:51,910 --> 00:12:52,869 secrecy. 332 00:12:52,870 --> 00:12:54,999 And when we have transports 333 00:12:55,000 --> 00:12:57,279 that have like a very low latency, 334 00:12:57,280 --> 00:12:59,169 we can also use ratcheting. 335 00:12:59,170 --> 00:13:00,639 But this is still something we need to 336 00:13:00,640 --> 00:13:01,690 implement, unfortunately. 337 00:13:03,380 --> 00:13:05,509 So but but when you use this kind 338 00:13:05,510 --> 00:13:07,249 of encryption, you somehow need to 339 00:13:07,250 --> 00:13:09,349 exchange a shared secret that you 340 00:13:09,350 --> 00:13:11,119 use to encrypt your messages. 341 00:13:11,120 --> 00:13:13,399 And Breyer does this 342 00:13:13,400 --> 00:13:15,589 by forcing you to actually 343 00:13:15,590 --> 00:13:17,689 meet with the person you want to talk 344 00:13:17,690 --> 00:13:18,889 to. 345 00:13:18,890 --> 00:13:21,079 And we do this because this 346 00:13:21,080 --> 00:13:23,179 is the only way we know of 347 00:13:24,230 --> 00:13:25,939 that you can use to prevent men in the 348 00:13:25,940 --> 00:13:28,069 middle of text, like into an encryption 349 00:13:28,070 --> 00:13:29,719 is great. But if you have a man in the 350 00:13:29,720 --> 00:13:32,389 middle and you don't know it, 351 00:13:32,390 --> 00:13:34,409 end to end encryption doesn't help you. 352 00:13:34,410 --> 00:13:36,379 And that's why the the other existing 353 00:13:36,380 --> 00:13:37,999 messages like signal a WhatsApp, allow 354 00:13:38,000 --> 00:13:40,669 you to verify the safety numbers after 355 00:13:40,670 --> 00:13:42,709 adding people like Brierre puts his 356 00:13:42,710 --> 00:13:43,710 first. 357 00:13:45,590 --> 00:13:47,209 There is one thing, though, because 358 00:13:47,210 --> 00:13:49,279 people don't like to meet up or cannot 359 00:13:49,280 --> 00:13:52,369 meet up, so we introduce the possibility 360 00:13:52,370 --> 00:13:54,979 to allow a trusted peer to introduce 361 00:13:54,980 --> 00:13:57,499 two of their contacts to each other 362 00:13:57,500 --> 00:13:59,329 and then they make a direct connection. 363 00:13:59,330 --> 00:14:00,649 So they run a different Helmond 364 00:14:00,650 --> 00:14:02,089 connections through the person. 365 00:14:02,090 --> 00:14:03,619 And only when both accepted the 366 00:14:03,620 --> 00:14:04,969 invitation and acknowledged that they 367 00:14:04,970 --> 00:14:07,129 deleted the keys to establish 368 00:14:07,130 --> 00:14:08,029 forward secrecy. 369 00:14:08,030 --> 00:14:10,039 Then they start making direct connections 370 00:14:10,040 --> 00:14:11,659 to each other and they are connected in 371 00:14:11,660 --> 00:14:13,399 this Peer-to-peer network. 372 00:14:13,400 --> 00:14:15,769 So Bryar only connects to your direct 373 00:14:15,770 --> 00:14:17,989 peers. It does not use a distributed 374 00:14:17,990 --> 00:14:19,869 hash table or something like this. 375 00:14:19,870 --> 00:14:21,889 This is because we want to be able to run 376 00:14:21,890 --> 00:14:24,289 this on our mobile phones and everybody's 377 00:14:24,290 --> 00:14:26,449 concerned about battery usage and 378 00:14:26,450 --> 00:14:28,519 distributed hash table is basically 379 00:14:28,520 --> 00:14:30,229 like a big chatterer going on. 380 00:14:30,230 --> 00:14:31,429 Everybody is talking all the time for 381 00:14:31,430 --> 00:14:33,019 everybody. And this is burning your 382 00:14:33,020 --> 00:14:34,999 battery because you're sending data even 383 00:14:35,000 --> 00:14:36,199 when you're not using it. 384 00:14:36,200 --> 00:14:37,909 So that's why we connect only to direct 385 00:14:37,910 --> 00:14:38,910 Peerce. 386 00:14:47,850 --> 00:14:49,319 Let me advance to the next slide, because 387 00:14:49,320 --> 00:14:50,340 then you have something to read. 388 00:14:54,330 --> 00:14:55,769 These are the cryptographic algorithms, 389 00:14:55,770 --> 00:14:57,869 views, and you 390 00:14:57,870 --> 00:14:59,099 see there's one on the left side, an 391 00:14:59,100 --> 00:15:01,079 arrow to the right side. 392 00:15:01,080 --> 00:15:03,059 This is what we are migrating to at the 393 00:15:03,060 --> 00:15:04,939 moment. So we're migrating from Blak to 394 00:15:04,940 --> 00:15:07,199 as a make function to black 395 00:15:07,200 --> 00:15:08,309 to be. 396 00:15:08,310 --> 00:15:09,849 And similarly, from this brain to 397 00:15:09,850 --> 00:15:11,969 curve's, we are migrating to the 398 00:15:11,970 --> 00:15:12,990 Edwards curve down there. 399 00:15:17,730 --> 00:15:19,769 So what can I has Internet as well, 400 00:15:19,770 --> 00:15:21,149 because I was talking only about this 401 00:15:21,150 --> 00:15:23,309 Bluetooth and Wi-Fi stuff, but you're not 402 00:15:23,310 --> 00:15:24,779 always in close range and you don't 403 00:15:24,780 --> 00:15:26,159 always have your ham radio connected, 404 00:15:26,160 --> 00:15:26,389 right. 405 00:15:26,390 --> 00:15:28,589 So we here at least 406 00:15:28,590 --> 00:15:29,969 we have Internet most of the time and we 407 00:15:29,970 --> 00:15:31,919 want to be able to use it. And so, yes, 408 00:15:31,920 --> 00:15:33,000 you can have Internet. 409 00:15:34,470 --> 00:15:36,869 And how we do this is we use Tor. 410 00:15:39,050 --> 00:15:41,509 So Toure is integrated into Brayer 411 00:15:41,510 --> 00:15:42,889 when you install it on your phone. 412 00:15:42,890 --> 00:15:45,199 You don't need another app, 413 00:15:45,200 --> 00:15:47,359 you just start 414 00:15:47,360 --> 00:15:49,639 the app and Tau is booting 415 00:15:49,640 --> 00:15:51,949 up without you knowing about it. 416 00:15:51,950 --> 00:15:54,049 And it starts a hidden service 417 00:15:54,050 --> 00:15:54,949 on your phone. 418 00:15:54,950 --> 00:15:57,139 Like, I assume that most of you know 419 00:15:57,140 --> 00:15:58,639 what a hidden service is. 420 00:15:58,640 --> 00:16:00,709 But for those who don't, let me 421 00:16:00,710 --> 00:16:02,809 give just a brief introduction. 422 00:16:02,810 --> 00:16:05,539 So there's this purple cloud 423 00:16:05,540 --> 00:16:07,759 is just an abstract way 424 00:16:07,760 --> 00:16:10,159 of viewing the network at work. 425 00:16:10,160 --> 00:16:12,319 And there 426 00:16:12,320 --> 00:16:13,999 are Alice and Bob, and they both have a 427 00:16:14,000 --> 00:16:15,109 hidden service on their phone. 428 00:16:15,110 --> 00:16:16,849 So they have a connection into the one at 429 00:16:16,850 --> 00:16:17,749 work. 430 00:16:17,750 --> 00:16:20,629 And each of them are basically picking 431 00:16:20,630 --> 00:16:22,159 three tor relays 432 00:16:24,260 --> 00:16:26,029 and then they find a rendezvous point in 433 00:16:26,030 --> 00:16:28,219 the middle and they establish 434 00:16:28,220 --> 00:16:29,299 the connection for this. 435 00:16:29,300 --> 00:16:31,429 So they never make a 436 00:16:31,430 --> 00:16:33,739 direct TCP IP connection because 437 00:16:33,740 --> 00:16:35,689 this would leak metadata directly to any 438 00:16:35,690 --> 00:16:38,209 network observer. So you would if you 439 00:16:38,210 --> 00:16:39,649 if you look at l'Est traffic, you would 440 00:16:39,650 --> 00:16:41,989 see the connection to Bob. 441 00:16:41,990 --> 00:16:43,669 But in this case, you just see this 442 00:16:43,670 --> 00:16:45,259 connection going into the network and you 443 00:16:45,260 --> 00:16:46,759 have a hard time following where it comes 444 00:16:46,760 --> 00:16:47,760 out. 445 00:16:49,500 --> 00:16:51,899 I have to admit, though, the tour is not 446 00:16:51,900 --> 00:16:53,679 perfect, like if you have seen 447 00:16:53,680 --> 00:16:55,439 yesterday's talk, they say it was good, 448 00:16:55,440 --> 00:16:56,669 but it's not alone. There's other 449 00:16:56,670 --> 00:16:58,799 solutions, but they are not perfect. 450 00:16:58,800 --> 00:17:01,019 And there is no anonymity 451 00:17:01,020 --> 00:17:03,209 system at the moment that can resist 452 00:17:03,210 --> 00:17:05,789 a global passive network observer, 453 00:17:05,790 --> 00:17:07,979 which probably the five eyes 454 00:17:07,980 --> 00:17:10,078 can do. So if they can see all network 455 00:17:10,079 --> 00:17:12,328 traffic, they might be able to 456 00:17:12,329 --> 00:17:13,739 anonymize some of the connections, 457 00:17:13,740 --> 00:17:14,639 unfortunately. 458 00:17:14,640 --> 00:17:16,828 But we can work on this. 459 00:17:16,829 --> 00:17:19,049 Like I said, Breyer is agnostic 460 00:17:19,050 --> 00:17:20,459 to the way data is transported. 461 00:17:20,460 --> 00:17:21,959 So you can just write a data transfer, 462 00:17:21,960 --> 00:17:24,059 plug in, put it in when the 463 00:17:24,060 --> 00:17:26,249 next best thing comes and just all 464 00:17:26,250 --> 00:17:28,799 migrate to that without losing 465 00:17:28,800 --> 00:17:31,139 your contacts or any or any of your data 466 00:17:31,140 --> 00:17:33,629 is just another way to transport data. 467 00:17:33,630 --> 00:17:35,189 You can also use all at the same time if 468 00:17:35,190 --> 00:17:36,190 you want. 469 00:17:37,810 --> 00:17:40,029 So we don't have too much time 470 00:17:40,030 --> 00:17:42,189 to go into into detail, but let 471 00:17:42,190 --> 00:17:44,019 me explain how Brierre works at a little 472 00:17:44,020 --> 00:17:45,609 lower level. 473 00:17:45,610 --> 00:17:47,319 So essentially it's simple. 474 00:17:47,320 --> 00:17:49,629 You have groups or channels 475 00:17:49,630 --> 00:17:51,159 like water pipe, like, you know, the 476 00:17:51,160 --> 00:17:53,349 Internet is just a series of pipes 477 00:17:53,350 --> 00:17:54,519 and you have messages. 478 00:17:56,590 --> 00:17:58,449 And these can be can be anything you 479 00:17:58,450 --> 00:18:00,130 want. You can put your own data in there. 480 00:18:01,570 --> 00:18:03,219 In our case, we have like some binary 481 00:18:03,220 --> 00:18:05,470 data format that we use and we. 482 00:18:07,360 --> 00:18:09,739 We open for any purpose we need, we open 483 00:18:09,740 --> 00:18:11,049 the dedicated channel, so if you have 484 00:18:11,050 --> 00:18:13,149 private messaging, you just open 485 00:18:13,150 --> 00:18:15,459 a group between two people that only 486 00:18:15,460 --> 00:18:17,559 these people exchange messages through. 487 00:18:17,560 --> 00:18:18,939 But you can expand on that. 488 00:18:18,940 --> 00:18:20,739 And you can also create groups that where 489 00:18:20,740 --> 00:18:22,450 people like in this case, 490 00:18:23,710 --> 00:18:25,869 they share messages with other people. 491 00:18:25,870 --> 00:18:27,879 And then you can also share this group 492 00:18:27,880 --> 00:18:29,109 with all your other friends. 493 00:18:29,110 --> 00:18:30,670 And this is what we call forums. 494 00:18:32,170 --> 00:18:33,699 In the forum, everybody can read and 495 00:18:33,700 --> 00:18:35,619 write messages and everybody can share 496 00:18:35,620 --> 00:18:38,169 this forum with other people 497 00:18:38,170 --> 00:18:39,639 in the private message context, you 498 00:18:39,640 --> 00:18:40,929 cannot share that. You cannot share your 499 00:18:40,930 --> 00:18:42,549 private conversation with anybody else. 500 00:18:42,550 --> 00:18:44,049 It's just between you and your peer. 501 00:18:48,250 --> 00:18:50,769 And now let's look at this sharing 502 00:18:50,770 --> 00:18:52,959 graph, so imagine you have this this 503 00:18:52,960 --> 00:18:55,479 forum group, 504 00:18:55,480 --> 00:18:56,799 which are essentially the pipes 505 00:18:57,880 --> 00:18:59,799 and then you share it with your friends. 506 00:18:59,800 --> 00:19:02,139 Then every edge on this graph 507 00:19:02,140 --> 00:19:04,689 is the sharing relationship and 508 00:19:04,690 --> 00:19:07,119 the notes are the peers. 509 00:19:07,120 --> 00:19:09,279 And the green ones are the 510 00:19:09,280 --> 00:19:10,780 ones that are online at the moment. 511 00:19:12,300 --> 00:19:14,399 So so if these people write messages in 512 00:19:14,400 --> 00:19:16,289 the forum, they can have conversations 513 00:19:16,290 --> 00:19:18,149 and they only exists on people's phones, 514 00:19:18,150 --> 00:19:19,379 there is no service where they can get 515 00:19:19,380 --> 00:19:20,399 uploaded to. 516 00:19:20,400 --> 00:19:22,319 So there's also no single proof of what 517 00:19:22,320 --> 00:19:24,779 is the current state of the discussion, 518 00:19:24,780 --> 00:19:27,809 because the people that are offline, 519 00:19:27,810 --> 00:19:29,279 they only get messages when they're 520 00:19:29,280 --> 00:19:31,019 online, but they only get them when they 521 00:19:31,020 --> 00:19:32,549 have a connection to people who have the 522 00:19:32,550 --> 00:19:34,469 messages. So if these people have 523 00:19:34,470 --> 00:19:36,569 messages they flow through here 524 00:19:36,570 --> 00:19:37,919 or if on the other end they get them 525 00:19:37,920 --> 00:19:39,779 right away. But this unfortunate fellow 526 00:19:39,780 --> 00:19:41,879 here on the bottom, he's out of 527 00:19:41,880 --> 00:19:44,039 luck because he won't get the messages 528 00:19:44,040 --> 00:19:46,169 that that are being sent here 529 00:19:46,170 --> 00:19:48,569 unless these people or some people 530 00:19:48,570 --> 00:19:50,210 along the sharing graph come online. 531 00:19:51,660 --> 00:19:53,849 So similarly, like when the 532 00:19:53,850 --> 00:19:56,489 connecting point and the top goes offline 533 00:19:56,490 --> 00:19:58,319 and these people keep chatting, these 534 00:19:58,320 --> 00:19:59,699 people won't read the messages. 535 00:19:59,700 --> 00:20:01,859 And this is a tricky opens onto 536 00:20:01,860 --> 00:20:03,959 tricky new problems like 537 00:20:03,960 --> 00:20:05,429 what happens when you suddenly get lots 538 00:20:05,430 --> 00:20:07,169 of messages, how the traditional 539 00:20:07,170 --> 00:20:08,249 messaging service do that. 540 00:20:08,250 --> 00:20:10,019 They have a linera history. 541 00:20:10,020 --> 00:20:11,339 And suddenly if you get two day old 542 00:20:11,340 --> 00:20:13,289 messages at the top, that you are very 543 00:20:13,290 --> 00:20:15,599 confused. So that's why we use 544 00:20:15,600 --> 00:20:17,819 a threaded conversation structure 545 00:20:17,820 --> 00:20:19,709 where people can can reply to each other 546 00:20:19,710 --> 00:20:21,689 in branches and later you can merge these 547 00:20:21,690 --> 00:20:24,509 branches back together to have a 548 00:20:24,510 --> 00:20:26,699 continuous and consistent message history 549 00:20:26,700 --> 00:20:28,020 where you can also find stuff again. 550 00:20:32,970 --> 00:20:35,549 So this is a very simplified 551 00:20:35,550 --> 00:20:37,440 view of the architecture of Brayer. 552 00:20:39,920 --> 00:20:42,259 You see in the bottom, the blue box 553 00:20:42,260 --> 00:20:43,939 is called what's called Brembo, and this 554 00:20:43,940 --> 00:20:45,360 is released as a separate library. 555 00:20:46,880 --> 00:20:49,639 It gives you the the peerce, 556 00:20:49,640 --> 00:20:51,319 the cryptographically the database to 557 00:20:51,320 --> 00:20:52,369 store stuff. And the message 558 00:20:52,370 --> 00:20:54,529 synchronization through these various 559 00:20:54,530 --> 00:20:56,659 data transports the gray boxes we have 560 00:20:56,660 --> 00:20:58,759 not yet implemented, but plan to do so. 561 00:20:59,960 --> 00:21:02,089 So he Lamplugh to talk maybe 562 00:21:02,090 --> 00:21:03,650 later, HPN Wi-Fi direct. 563 00:21:05,180 --> 00:21:06,949 And then on top of this Brembo library, 564 00:21:06,950 --> 00:21:09,079 we have to Brayer Core Library, 565 00:21:09,080 --> 00:21:10,699 which gives you all the features that are 566 00:21:10,700 --> 00:21:11,700 just built on top. 567 00:21:12,950 --> 00:21:14,209 Like the message you have, messaging 568 00:21:14,210 --> 00:21:16,609 forums, blogs, groups and an RSS 569 00:21:16,610 --> 00:21:18,709 import into the blogs, this 570 00:21:18,710 --> 00:21:20,419 is like also for for censorship 571 00:21:20,420 --> 00:21:21,829 circumvention. When you have friends on 572 00:21:21,830 --> 00:21:23,959 Brayer that 573 00:21:23,960 --> 00:21:26,249 share blog shares as ft content 574 00:21:26,250 --> 00:21:28,429 with you, because you cannot access that 575 00:21:28,430 --> 00:21:30,319 wherever you live, maybe like BBC News in 576 00:21:30,320 --> 00:21:31,999 China or something. 577 00:21:32,000 --> 00:21:33,709 And then on the top, we have the actual 578 00:21:33,710 --> 00:21:35,029 applications that make use of the 579 00:21:35,030 --> 00:21:36,409 libraries. 580 00:21:36,410 --> 00:21:37,819 So at the moment we have an Android app 581 00:21:37,820 --> 00:21:39,500 and we plan to have a desktop program. 582 00:21:41,470 --> 00:21:43,569 And we structure this this way in 583 00:21:43,570 --> 00:21:45,789 libraries so you can build your 584 00:21:45,790 --> 00:21:47,709 own peer to peer things with this 585 00:21:47,710 --> 00:21:50,379 technology without starting from scratch, 586 00:21:50,380 --> 00:21:53,199 so please go and decentralize 587 00:21:53,200 --> 00:21:54,200 all the things. 588 00:22:03,590 --> 00:22:05,059 And I'm really serious here 589 00:22:06,350 --> 00:22:08,719 when when I started out 590 00:22:08,720 --> 00:22:10,789 like advocating for decentralization, I 591 00:22:10,790 --> 00:22:12,439 was always thinking federations the way 592 00:22:12,440 --> 00:22:14,539 to go like we are north, let's all build 593 00:22:14,540 --> 00:22:16,819 our own servers, let's put our servers in 594 00:22:16,820 --> 00:22:18,889 our houses and and federate with 595 00:22:18,890 --> 00:22:21,079 each other. And but 596 00:22:21,080 --> 00:22:23,539 now I think it's 597 00:22:23,540 --> 00:22:24,859 the perspective is a little screwed 598 00:22:24,860 --> 00:22:25,759 because we are nerds. 599 00:22:25,760 --> 00:22:27,829 Yes, we can do this, but we cannot expect 600 00:22:27,830 --> 00:22:28,879 other people to do it. 601 00:22:28,880 --> 00:22:29,959 And federation is great. 602 00:22:29,960 --> 00:22:31,759 It's an improvement over the status quo. 603 00:22:31,760 --> 00:22:33,899 But if we could migrate 604 00:22:33,900 --> 00:22:35,419 the existing services that we use on the 605 00:22:35,420 --> 00:22:37,489 Internet into a truly peer-to-peer 606 00:22:37,490 --> 00:22:40,339 infrastructure, and this is even better 607 00:22:40,340 --> 00:22:42,109 because then we don't need any servers to 608 00:22:42,110 --> 00:22:42,439 run. 609 00:22:42,440 --> 00:22:43,789 We don't need any service to maintain and 610 00:22:43,790 --> 00:22:45,259 be even more resistant to censorship. 611 00:22:45,260 --> 00:22:46,510 And we can just root around it. 612 00:22:47,990 --> 00:22:49,269 And I don't know if you have seen the 613 00:22:49,270 --> 00:22:51,319 just before my talk in the South Extra, 614 00:22:51,320 --> 00:22:53,539 there was a talk about climate change 615 00:22:53,540 --> 00:22:56,239 which enable you to 616 00:22:56,240 --> 00:22:58,579 to to also put trust relationships 617 00:22:58,580 --> 00:23:00,169 and computer networks in the privacy 618 00:23:00,170 --> 00:23:01,069 friendly way. 619 00:23:01,070 --> 00:23:03,019 So so these kind of new technologies 620 00:23:03,020 --> 00:23:05,299 would be great to to enable all sorts 621 00:23:05,300 --> 00:23:07,039 of new peer to peer applications, even if 622 00:23:07,040 --> 00:23:09,109 you need to trust, like in the sharing 623 00:23:09,110 --> 00:23:10,999 economy, like if you want to do some sort 624 00:23:11,000 --> 00:23:13,249 of peer to peer uber or peer to peer 625 00:23:13,250 --> 00:23:16,309 Airbnb, like, let's do it, please. 626 00:23:16,310 --> 00:23:17,899 And I hope Breyers technology can help. 627 00:23:17,900 --> 00:23:18,900 You may be doing it. 628 00:23:21,040 --> 00:23:23,469 So we have 629 00:23:23,470 --> 00:23:25,629 at the moment an Android application 630 00:23:25,630 --> 00:23:27,609 that you can get on Google Play or better 631 00:23:27,610 --> 00:23:29,889 asteroid right away and test 632 00:23:29,890 --> 00:23:32,739 it out, play with it on Congress. 633 00:23:32,740 --> 00:23:34,749 And if you want to meet me later here 634 00:23:34,750 --> 00:23:36,309 next to the stage and then we go 635 00:23:36,310 --> 00:23:37,599 somewhere and we can edit each other and 636 00:23:37,600 --> 00:23:38,829 try how good it works 637 00:23:39,940 --> 00:23:42,189 and to anticipate already a 638 00:23:42,190 --> 00:23:44,139 question that we get a lot. 639 00:23:44,140 --> 00:23:46,149 But I have I was like, where's your IRS 640 00:23:46,150 --> 00:23:47,469 application? 641 00:23:47,470 --> 00:23:49,239 And we would like to have some IRS 642 00:23:49,240 --> 00:23:50,679 applications because one of our target 643 00:23:50,680 --> 00:23:52,089 audience are journalists who need to 644 00:23:52,090 --> 00:23:53,769 communicate securely with their sources. 645 00:23:53,770 --> 00:23:55,869 And these people have iPhones all the 646 00:23:55,870 --> 00:23:58,149 time. So we looked into 647 00:23:58,150 --> 00:24:00,189 it. And so far it doesn't look good 648 00:24:00,190 --> 00:24:02,529 because iPhone closes all applications 649 00:24:02,530 --> 00:24:03,909 quite soon after you put them in the 650 00:24:03,910 --> 00:24:06,039 background and you're not allowed to keep 651 00:24:06,040 --> 00:24:07,149 TCAP connections open. 652 00:24:07,150 --> 00:24:08,739 And we need to do this so you can get 653 00:24:08,740 --> 00:24:09,740 messages. 654 00:24:10,390 --> 00:24:12,639 So if you are an iOS developer 655 00:24:12,640 --> 00:24:14,079 and you have some ideas how we can get 656 00:24:14,080 --> 00:24:15,459 around this, please get in touch. 657 00:24:18,750 --> 00:24:20,999 And the source code is, of course, 658 00:24:21,000 --> 00:24:22,589 free software available for everybody to 659 00:24:22,590 --> 00:24:24,659 use, and we're also 660 00:24:24,660 --> 00:24:27,629 working on making it builds reproducibly, 661 00:24:27,630 --> 00:24:29,729 which is very important because you need 662 00:24:29,730 --> 00:24:31,349 to be able to verify that the source code 663 00:24:31,350 --> 00:24:33,089 actually matches the binary or that we 664 00:24:33,090 --> 00:24:35,309 ship. And you need to be able everybody 665 00:24:35,310 --> 00:24:36,959 need to be able to verify that so nobody 666 00:24:36,960 --> 00:24:38,369 can build any back doors inside. 667 00:24:38,370 --> 00:24:41,009 So always a source, binary correspondence 668 00:24:41,010 --> 00:24:43,529 and the latest versions mostly 669 00:24:43,530 --> 00:24:44,939 build reproducibly, but there's still 670 00:24:44,940 --> 00:24:47,519 some kinks to work out, unfortunately. 671 00:24:47,520 --> 00:24:49,589 So I'm at the end of my 672 00:24:49,590 --> 00:24:50,529 presentation. 673 00:24:50,530 --> 00:24:53,309 Thank you very much for your attention 674 00:24:53,310 --> 00:24:54,890 and I hope you have some questions. 675 00:25:04,930 --> 00:25:05,959 That was awesome. 676 00:25:08,010 --> 00:25:09,010 I beg your pardon, 677 00:25:11,170 --> 00:25:14,469 questions, who has a question? 678 00:25:14,470 --> 00:25:16,869 There's mikes left and right, 679 00:25:16,870 --> 00:25:18,939 Internet signal 680 00:25:18,940 --> 00:25:21,129 changes yet signal 681 00:25:21,130 --> 00:25:23,349 has a message from the question from 682 00:25:23,350 --> 00:25:24,429 the Internet. 683 00:25:24,430 --> 00:25:25,379 Go ahead. 684 00:25:25,380 --> 00:25:26,919 The Internet wants to know how it's 685 00:25:26,920 --> 00:25:29,079 different from retros share and 686 00:25:29,080 --> 00:25:30,789 doesn't have the traditional features or 687 00:25:30,790 --> 00:25:32,050 some advantages of protocol. 688 00:25:33,370 --> 00:25:35,499 Well, I'm not a retrocession expert, so I 689 00:25:35,500 --> 00:25:37,569 can tell like to 690 00:25:37,570 --> 00:25:39,499 take this with a grain of salt. 691 00:25:39,500 --> 00:25:42,029 But as far as I know, Russia users 692 00:25:42,030 --> 00:25:43,719 and infrastructure. 693 00:25:43,720 --> 00:25:45,879 So it is relaying messages 694 00:25:45,880 --> 00:25:47,409 between peers all the time, which would 695 00:25:47,410 --> 00:25:49,299 burn the battery if used on mobile quite 696 00:25:49,300 --> 00:25:50,300 a lot. 697 00:25:51,190 --> 00:25:53,319 And it basically just does everything. 698 00:25:53,320 --> 00:25:55,359 But it doesn't care as far as I know so 699 00:25:55,360 --> 00:25:57,219 much about the metadata being leaked. 700 00:25:57,220 --> 00:25:59,409 And also, as far as 701 00:25:59,410 --> 00:26:01,539 I know, you cannot reduce 702 00:26:01,540 --> 00:26:03,489 your share of other kinds of data 703 00:26:03,490 --> 00:26:05,530 transports easily like like we do. 704 00:26:07,040 --> 00:26:08,479 Thank you. 705 00:26:08,480 --> 00:26:10,309 One sentence with a question mark at the 706 00:26:10,310 --> 00:26:11,310 end of it. 707 00:26:12,050 --> 00:26:14,269 Yeah, I would like to see to know 708 00:26:14,270 --> 00:26:15,829 what are actually the difference with the 709 00:26:15,830 --> 00:26:17,449 ring project. I've heard about the ring 710 00:26:17,450 --> 00:26:19,519 project, which is also kind of 711 00:26:19,520 --> 00:26:21,619 decentralized messaging services. 712 00:26:21,620 --> 00:26:23,569 Actually, I had I follow a couple of 713 00:26:23,570 --> 00:26:25,459 conference from the project and I saw 714 00:26:25,460 --> 00:26:26,989 that a lot of feature were missing 715 00:26:26,990 --> 00:26:29,119 because of the structure of it, the 716 00:26:29,120 --> 00:26:30,589 centralized. You don't have the history. 717 00:26:30,590 --> 00:26:32,119 You can, after all, device that are 718 00:26:32,120 --> 00:26:33,889 synchronized together for all accounts 719 00:26:33,890 --> 00:26:35,599 and these kind of things. So what is your 720 00:26:35,600 --> 00:26:37,189 point of view on those kind of future? 721 00:26:37,190 --> 00:26:39,049 Well, I also don't know the project, but 722 00:26:39,050 --> 00:26:40,999 it's great to know that there is more of 723 00:26:41,000 --> 00:26:42,689 these things happening. And I don't say 724 00:26:42,690 --> 00:26:44,419 like use, Bryan, that's the only true of 725 00:26:44,420 --> 00:26:46,819 like, let's build whatever works. 726 00:26:46,820 --> 00:26:49,039 Right. And your point 727 00:26:49,040 --> 00:26:50,959 about multiple devices is indeed 728 00:26:50,960 --> 00:26:52,429 something also we have not solved, 729 00:26:52,430 --> 00:26:53,899 because if you are in the peer to peer 730 00:26:53,900 --> 00:26:55,819 network and you have two devices, you 731 00:26:55,820 --> 00:26:57,769 need to consider the case where you go 732 00:26:57,770 --> 00:26:59,449 online with one device, you make one 733 00:26:59,450 --> 00:27:01,699 action in the application, 734 00:27:01,700 --> 00:27:03,649 and then you go online in the other 735 00:27:03,650 --> 00:27:06,109 device before it is able to sync this 736 00:27:06,110 --> 00:27:07,999 information. And you make a conflicting 737 00:27:08,000 --> 00:27:10,129 action like leaving a group 738 00:27:10,130 --> 00:27:11,130 and posting a message. 739 00:27:12,290 --> 00:27:13,759 So it looks like you left, but you're 740 00:27:13,760 --> 00:27:15,559 still posting something and how how to 741 00:27:15,560 --> 00:27:17,239 resolve this. Like we haven't solved it 742 00:27:17,240 --> 00:27:18,379 yet. 743 00:27:18,380 --> 00:27:19,380 OK, thank you 744 00:27:20,600 --> 00:27:22,669 for four minutes. Question one sentence, 745 00:27:22,670 --> 00:27:25,009 question mark. You mentioned iOS. 746 00:27:25,010 --> 00:27:26,719 What are other ways that people can help, 747 00:27:26,720 --> 00:27:27,720 Brian? 748 00:27:28,160 --> 00:27:30,199 Well, there is lots of ways that people 749 00:27:30,200 --> 00:27:31,879 can help Brayer because there's lots of 750 00:27:31,880 --> 00:27:32,869 work to be done. 751 00:27:32,870 --> 00:27:34,669 One thing that would be nice would be to 752 00:27:34,670 --> 00:27:35,929 have a desktop client. 753 00:27:35,930 --> 00:27:37,999 And essentially we just need the UI on 754 00:27:38,000 --> 00:27:39,529 top of the libraries that we already 755 00:27:39,530 --> 00:27:41,419 have. So this is something where people 756 00:27:41,420 --> 00:27:42,559 can get started easily. 757 00:27:42,560 --> 00:27:44,149 But we also have, of course, a bug 758 00:27:44,150 --> 00:27:46,039 tracker and a feature tracker where 759 00:27:46,040 --> 00:27:47,179 people can just say, hey, I want to 760 00:27:47,180 --> 00:27:48,440 implement this and then we help you. 761 00:27:51,490 --> 00:27:53,469 Signal angel, no. 762 00:27:53,470 --> 00:27:55,569 Yes, yes, yes, go ahead. 763 00:27:55,570 --> 00:27:57,879 OK. The Internet wants to know what 764 00:27:57,880 --> 00:27:59,409 happens if an attacker gets hold of the 765 00:27:59,410 --> 00:28:01,539 device. Is there some some kind of, like, 766 00:28:01,540 --> 00:28:03,489 deniability or something? 767 00:28:03,490 --> 00:28:05,559 Well, deniability is not one of 768 00:28:05,560 --> 00:28:06,459 our design goals. 769 00:28:06,460 --> 00:28:07,460 However, 770 00:28:08,680 --> 00:28:10,059 it's an Android application. 771 00:28:10,060 --> 00:28:11,859 And most people on Android, they don't 772 00:28:11,860 --> 00:28:13,779 have a full disk encryption or anything 773 00:28:13,780 --> 00:28:16,059 like that. So what we do 774 00:28:16,060 --> 00:28:18,159 to improve the situation is to encrypt 775 00:28:18,160 --> 00:28:20,289 all data that Brier stores in its 776 00:28:20,290 --> 00:28:21,290 own database 777 00:28:22,810 --> 00:28:24,999 with password curation 778 00:28:25,000 --> 00:28:26,569 function, but based on the password. 779 00:28:26,570 --> 00:28:27,939 So whenever you go online, you need first 780 00:28:27,940 --> 00:28:30,969 to enter your password to a database. 781 00:28:30,970 --> 00:28:33,039 And then there's also a panic 782 00:28:33,040 --> 00:28:34,929 button feature, like when you have a 783 00:28:34,930 --> 00:28:37,059 panic button app and you're like, 784 00:28:37,060 --> 00:28:38,499 I don't know, the police is coming to 785 00:28:38,500 --> 00:28:39,939 arrest you and you press the panic 786 00:28:39,940 --> 00:28:41,469 button, then you can have Brierre 787 00:28:41,470 --> 00:28:43,959 deleting the database or just locking out 788 00:28:43,960 --> 00:28:46,179 so that the data address is at least 789 00:28:46,180 --> 00:28:47,180 secure. 790 00:28:48,720 --> 00:28:49,720 Thank you. 791 00:28:50,520 --> 00:28:52,009 Two more questions, one left, one right, 792 00:28:52,010 --> 00:28:53,099 red one starts when 793 00:28:54,570 --> 00:28:56,649 you talk, how do 794 00:28:56,650 --> 00:28:58,859 two beers find each other in 795 00:28:58,860 --> 00:28:59,860 the network? 796 00:29:01,470 --> 00:29:03,449 This is where hidden services help us 797 00:29:03,450 --> 00:29:05,769 because the TOYIN Service has 798 00:29:05,770 --> 00:29:07,319 has a unique address, which is 799 00:29:07,320 --> 00:29:09,209 essentially its public key, and there is 800 00:29:09,210 --> 00:29:11,129 directory service in the network. 801 00:29:11,130 --> 00:29:12,629 When you come online, you get listed 802 00:29:12,630 --> 00:29:14,219 there and this is how they find you. 803 00:29:14,220 --> 00:29:16,139 So you don't need to use any any firewall 804 00:29:16,140 --> 00:29:18,149 punching any network of the stuff. 805 00:29:18,150 --> 00:29:20,189 You you just go into one network and you 806 00:29:20,190 --> 00:29:21,269 say, I want to connect to this in 807 00:29:21,270 --> 00:29:22,889 service. And if they're online, they will 808 00:29:22,890 --> 00:29:24,750 respond. And if not, not. 809 00:29:26,220 --> 00:29:27,349 Thank you. 810 00:29:27,350 --> 00:29:29,089 Last question from my left here, 811 00:29:30,570 --> 00:29:32,789 so do you use Bluetooth 812 00:29:32,790 --> 00:29:33,719 currently to connect? 813 00:29:33,720 --> 00:29:35,669 But recently there was discovered some 814 00:29:35,670 --> 00:29:37,379 important vulnerabilities regarding 815 00:29:37,380 --> 00:29:39,509 Bluetooth, which makes it advisable to 816 00:29:39,510 --> 00:29:41,729 use in androids. 817 00:29:41,730 --> 00:29:43,679 So how do you handle that? 818 00:29:43,680 --> 00:29:44,639 Yeah, that's unfortunate. 819 00:29:44,640 --> 00:29:46,859 And Bluetooth is not only has lots 820 00:29:46,860 --> 00:29:49,079 of security problems, but it's also very 821 00:29:49,080 --> 00:29:50,819 flaky and difficult to work with. 822 00:29:50,820 --> 00:29:53,009 So our response to that was to 823 00:29:53,010 --> 00:29:54,989 be more conservative on on how long 824 00:29:54,990 --> 00:29:56,459 Bluetooth needs to be enabled. 825 00:29:56,460 --> 00:29:58,889 So we try to reduce the time. 826 00:29:58,890 --> 00:30:00,059 And it's also possible that you don't 827 00:30:00,060 --> 00:30:00,989 need to use it at all. 828 00:30:00,990 --> 00:30:02,279 There are still some improvements. 829 00:30:02,280 --> 00:30:04,709 We do. And also we one of our 830 00:30:04,710 --> 00:30:07,109 largest contributors, he implemented 831 00:30:07,110 --> 00:30:09,689 a prototype of Wi-Fi direct plugin 832 00:30:09,690 --> 00:30:11,819 where two phones can connect to 833 00:30:11,820 --> 00:30:13,619 each other directly with Wi-Fi without 834 00:30:13,620 --> 00:30:15,779 being in any sort of access point. 835 00:30:16,950 --> 00:30:19,019 And so maybe when we're lucky 836 00:30:19,020 --> 00:30:20,039 in the future, we don't need to use 837 00:30:20,040 --> 00:30:21,040 Bluetooth at all. 838 00:30:22,720 --> 00:30:24,939 OK, 839 00:30:24,940 --> 00:30:26,769 let's have a big fight. 840 00:30:26,770 --> 00:30:28,899 There are still seven and I have to cut 841 00:30:28,900 --> 00:30:30,219 off, I have to cut off. 842 00:30:30,220 --> 00:30:31,899 I'm sorry. The next talk is going to be 843 00:30:31,900 --> 00:30:34,059 Max James is going to be packed like hell 844 00:30:34,060 --> 00:30:35,949 and we got to get the people in and out 845 00:30:35,950 --> 00:30:37,629 first. So I have to cut off here. 846 00:30:37,630 --> 00:30:38,770 I'm awfully sorry.