Android Content Providers for the Web
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Subtitle |
| |
Title of Series | ||
Number of Parts | 490 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/47459 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FOSDEM 2020245 / 490
4
7
9
10
14
15
16
25
26
29
31
33
34
35
37
40
41
42
43
45
46
47
50
51
52
53
54
58
60
64
65
66
67
70
71
72
74
75
76
77
78
82
83
84
86
89
90
93
94
95
96
98
100
101
105
106
109
110
116
118
123
124
130
135
137
141
142
144
146
151
154
157
159
164
166
167
169
172
174
178
182
184
185
186
187
189
190
191
192
193
194
195
200
202
203
204
205
206
207
208
211
212
214
218
222
225
228
230
232
233
235
236
240
242
244
249
250
251
253
254
258
261
262
266
267
268
271
273
274
275
278
280
281
282
283
284
285
286
288
289
290
291
293
295
296
297
298
301
302
303
305
306
307
310
311
315
317
318
319
328
333
350
353
354
356
359
360
361
370
372
373
374
375
379
380
381
383
385
386
387
388
391
393
394
395
397
398
399
401
409
410
411
414
420
421
422
423
424
425
427
429
430
434
438
439
444
449
450
454
457
458
459
460
461
464
465
466
468
469
470
471
472
480
484
486
487
489
490
00:00
Mobile appData storage device
00:06
Block (periodic table)Computer animation
00:19
Block (periodic table)Content (media)Android (robot)Software maintenanceBitAndroid (robot)Identity managementComputer animation
00:33
Block (periodic table)Computer animation
00:44
Block (periodic table)Content (media)Android (robot)Internet service providerContent (media)Type theoryConnectivity (graph theory)Multiplication signIdentity managementCartesian coordinate systemMedical imagingInternet service providerPoint cloudAutomatic differentiationMobile appSoftware developerAndroid (robot)Computer fileProgram flowchart
01:25
Block (periodic table)Identity managementLocal GroupIdentity managementGroup actionKey (cryptography)Demo (music)
01:52
Block (periodic table)Identity managementKey (cryptography)
02:03
Block (periodic table)Identity managementComputer networkEmailRevision controlCartesian coordinate systemAuthenticationKey (cryptography)PasswordMetropolitan area networkTheoryIdentity managementPublic-key cryptographyCryptographyComputer animation
02:55
CuboidProof theoryInformationIdentity managementBlock (periodic table)Text editorCuboid1 (number)Computer animation
03:25
Block (periodic table)Proof theoryComputer animation
03:34
Block (periodic table)Identity managementProof theoryComputer networkInteractive televisionPublic-key cryptographyMobile appProof theoryMessage passingService (economics)Computer animation
03:58
Block (periodic table)Data storage deviceServer (computing)Content (media)Cartesian coordinate systemAndroid (robot)Internet service providerAuthorizationLevel (video gaming)Multiplication signData storage deviceWeb 2.0MereologyMilitary baseComputer animation
04:46
Block (periodic table)Data storage deviceFlow separationMultiplication signDifferent (Kate Ryan album)State of matterGoogolFacebookProgram flowchart
05:11
Internet service providerContent (media)Block (periodic table)Android (robot)Identity managementMedical imagingCartesian coordinate systemArithmetic meanInternet service providerContent (media)Identity managementWeb 2.0Local ringProof theoryKey (cryptography)Standard deviationPoint cloudWeb applicationProgram flowchart
06:04
Block (periodic table)Data storage devicePoint cloudData storage deviceDifferent (Kate Ryan album)CuboidSoftware bugSpacetimeExtension (kinesiology)Point cloudPublic-key cryptographyKey (cryptography)Communications protocolWeb applicationWeb browserComputer animation
06:53
Block (periodic table)Data storage deviceComputer animation
06:59
Point cloudFacebookOpen sourceComputer animation
Transcript: English(auto-generated)
00:05
Thank you for the introduction. Well, was it introduction, sorry. For the talk before, because it was really a great introduction for my talk, I want to build on top of that. So, I'm Friedger Mufke.
00:20
I am the maintainer of the Android SDK of Blockstack, and I want to talk a bit how you can use decentralized identity in a way that, well, I'm really excited about. It's kind of new technology, decentralized and everything. Society might not be ready, and if there's blockchain involved,
00:41
this is not financial advice. So, just disclaimer. I'm Android developer for many years, and the concept that really excites me is the Android content providers. The idea is that many apps can access the same data. This happens on Android device
01:00
through this type component, this content provider, and it's backed by files or also maybe by the cloud, but really the interesting idea is that your contacts, your images, your calendar sits at one place, and many applications can make use of them. You do not have to type them again and again and again, and now the question is, how can we get this to the web?
01:26
And this is possible because we have now identities that are decentralized identities that you can use to make, well, to associate your data with. So, we heard decentralized identity.
01:42
We have a W3 working group. It is self-sovereign. Other people can verify it. We had a demo really here five minutes ago. Great. So, it's really about cryptographic keys. Once we have a cryptographic key, then we can make work with the data,
02:04
and there we have this authenticator that owns the private key, that manages your private keys, and application can ask this authenticator to give you some information,
02:20
some piece that you can prove to, that you are the owner of the key. So, I skipped this. We had the introduction how this DID looks like. So, you do not have to have a password anymore. You have 45 different ways how you can create your decentralized identity,
02:42
and BlockSec is one of them. We saw Ethereum version in the talk before. So, the idea is when you log in, when you authenticate to your device, you are creating with your cryptographic keys some kind of a proof that you own this key.
03:04
So, for Ethereum, there's, for example, 3Box as well. They really have a nice concept where you associate or where your identity is represented with a profile, and this is the Ethereum address,
03:21
and you get some information about the user, and BlockSec using a more human-readable way to represent your identity, but it's really about that you can have a proof that you own this private key in the end,
03:40
and the app wants to have this proof so that they can act on behalf of the user, interact with other users, exchange encrypted messages, talk to other services or other users. So, once we have this proof, we might want to store our data at a place
04:03
where they know I am the owner of this data, and that's where we come back to the Android Content Provider. So, we want to have a concept where the user can access or give applications authority to access this data, and decentralized storage,
04:23
there are different possibilities. The idea is that we don't want to have these honeypots anymore. We had a talk yesterday, Web3, why this is really bad, and there are different possibilities, but the applications, in the end, they don't want to manage all the data
04:43
of all users, but the idea is that the user is managing their own data. So, we want to get away from the state where we know that applications, databases, manage all the users several times
05:01
for different application, ABCD, Facebook, Google, and so on. We want to move to a place where one user can manage their own data. So, for the Content Provider, what does it mean on the device? So, we have the authenticator, and the user can now give proof to the application
05:23
that they can act on behalf of the user and access, for example, the images. So, there's one particular key that allows you to access your images somewhere in the cloud, probably. There's the concept of identity hub, but there's this standardization details.
05:41
I just want to make sure that the idea is clear. You can give another key only to one application, and then this application is allowed to access your contact data. And so, these are web applications, so they are served from the web, but they are sitting on your device,
06:01
and they're working locally. And so, yeah, it's about Let's see. We have the two examples to compare a bit. The authenticator, Blockstack, we have a web app where you authenticate yourself, so they manage your keys in a web app
06:22
running on your device. 3Box has web3 authenticators, so you have different browser extensions also on to manage your private keys. And then, for the storage, there you have, in 3Box, OrbitDB that is based on IPFS,
06:40
and you have, it's key value-based, and in Blockstack, you have Gaia protocol that is based on existing cloud storage, so really fast in performance and cheap. It's file-based. And what is kind of missing for them that you have the data schema, and I'm gone.
07:00
Thank you.