1
00:00:00,017 --> 00:00:05,957
Who is talking to us about cutting Gordian's end years of focus versus privacy.

2
00:00:06,217 --> 00:00:08,617
Not. Take it away. Yeah, thanks.

3
00:00:13,757 --> 00:00:19,577
It's good to see you here and I'm happy you managed to make it to our celebration

4
00:00:19,577 --> 00:00:26,197
today because we're going to celebrate the year of the Linux desktop.

5
00:00:26,837 --> 00:00:31,777
Hey! Oh no. Wait a second. I need better glasses.

6
00:00:31,937 --> 00:00:42,817
We are celebrating the 25th consecutive announcement of the year of the Linux desktop year party.

7
00:00:43,857 --> 00:00:49,677
But, I mean, why is this so? I mean, the amazing thing is the whole backend

8
00:00:49,677 --> 00:00:51,197
of the Internet runs Linux, right?

9
00:00:51,917 --> 00:00:55,437
But why is the only thing that runs on the desktop is a running joke?

10
00:00:58,337 --> 00:01:03,717
Well, actually, because we have values. And don't get me wrong,

11
00:01:03,837 --> 00:01:04,997
I'm not criticizing this.

12
00:01:06,217 --> 00:01:11,697
Values are the backbone of our community. It is what makes us strong in a world

13
00:01:11,697 --> 00:01:14,877
where values seem to lose their value.

14
00:01:16,037 --> 00:01:21,597
But right now, they're holding us back from conquering the desktop world.

15
00:01:22,537 --> 00:01:26,197
And we're going to change this. I mean, not our values,

16
00:01:26,257 --> 00:01:32,777
of course, but we're going to harmonize our values of privacy and end-user focus

17
00:01:32,777 --> 00:01:38,717
and make the year of the Linux desktop perhaps become reality at some point.

18
00:01:39,977 --> 00:01:46,517
And even more, let's bring our values of digital privacy and sovereignty into

19
00:01:46,517 --> 00:01:50,917
larger society and have everyone benefit from them.

20
00:01:52,317 --> 00:01:57,857
Privacy is the backbone of a free and an open society.

21
00:01:58,597 --> 00:02:04,817
And I truly believe this is possible. And I truly believe this needs to start within our community.

22
00:02:05,897 --> 00:02:09,417
In my talk, I'll outline how this will work.

23
00:02:09,777 --> 00:02:14,517
I'll show what we have already achieved. And I hope that I can inspire you,

24
00:02:14,577 --> 00:02:20,617
dear friends, to help build this better future together. KDE is actually crucial

25
00:02:20,617 --> 00:02:24,457
for this long overdue change in society.

26
00:02:24,977 --> 00:02:30,877
For a society with real and working digital privacy for everyone.

27
00:02:32,257 --> 00:02:33,537
Let's dive right in.

28
00:02:35,337 --> 00:02:39,277
Our manifesto is a great reminder to focus on the end user.

29
00:02:40,437 --> 00:02:44,117
This is why we have an amazing UX group doing incredible work.

30
00:02:44,777 --> 00:02:48,437
Some of the older ones might even remember I had my shares in creating it.

31
00:02:49,437 --> 00:02:54,737
But do you know what UX stands for? It is user experience.

32
00:02:56,077 --> 00:03:00,997
And to truly excel in this art, we need to know a lot about our users.

33
00:03:01,777 --> 00:03:06,517
Because one important pillar of UX work is data-driven.

34
00:03:06,957 --> 00:03:11,817
It's based on the experiences and expectations of our actual or potential users.

35
00:03:13,057 --> 00:03:21,077
And this doesn't fit with our passion for digital privacy, one of the core values of our vision.

36
00:03:21,477 --> 00:03:24,657
We don't want our users to unveil personal information.

37
00:03:25,237 --> 00:03:27,557
We want them to stay private.

38
00:03:28,897 --> 00:03:33,717
And this is actually not only the struggle of KDE. This is the struggle of my

39
00:03:33,717 --> 00:03:39,297
life, being a UX professional and a privacy activist at the same time.

40
00:03:40,117 --> 00:03:46,017
And it's something that we share with most user-facing free software projects out there.

41
00:03:46,857 --> 00:03:52,377
We all value privacy, so we don't know who our users are or what they want,

42
00:03:52,557 --> 00:03:56,077
and thus we cannot innovate our products.

43
00:03:58,357 --> 00:04:02,997
We are missing one of the most important pillars of doing effective UX work.

44
00:04:03,937 --> 00:04:07,237
Commercial user-facing software is doing just the opposite.

45
00:04:07,497 --> 00:04:11,937
They're invading users' privacy and shamelessly use this data next to other

46
00:04:11,937 --> 00:04:14,097
things to innovate their products.

47
00:04:14,937 --> 00:04:19,717
And we can just copy them. We follow up on them, coming second place.

48
00:04:19,717 --> 00:04:26,297
Ways, we as free software have a hard chance on winning the battle of creating

49
00:04:26,297 --> 00:04:28,377
the most innovative user interfaces.

50
00:04:31,957 --> 00:04:36,137
Just imagine for a moment how a world could look like if this were different.

51
00:04:36,957 --> 00:04:41,437
In this world, users would have total control over their personal data.

52
00:04:42,817 --> 00:04:46,737
A world where personal data, without compromising its owner's privacy,

53
00:04:47,057 --> 00:04:55,497
is used for the good of the individual and the good of society and not mainly

54
00:04:55,497 --> 00:04:56,937
for profit-oriented companies.

55
00:04:57,577 --> 00:05:04,537
A world where KDE knows exactly the same things about their users as every other player on the market.

56
00:05:05,097 --> 00:05:10,617
A world with a working and reliable digital privacy for everyone.

57
00:05:11,257 --> 00:05:14,817
What an amazing place that would be.

58
00:05:16,337 --> 00:05:22,897
And this is the vision we at the nonprofit private EV work on.

59
00:05:25,714 --> 00:05:30,574
All of us are users, and we have a right for digital privacy.

60
00:05:31,114 --> 00:05:39,854
Our mission is to ensure that this right is realized in an easy and manageable way for everyone,

61
00:05:40,034 --> 00:05:46,334
and not only for an elite that can arguably do this already today.

62
00:05:47,214 --> 00:05:56,354
So we are creating the ecosystem needed. Technology, legal frameworks and social pervasion.

63
00:05:56,994 --> 00:06:02,594
And I'm here to ask you to help us achieve this vision.

64
00:06:04,054 --> 00:06:09,894
I'm going to explain this ecosystem now and let me first introduce the relevant players.

65
00:06:10,134 --> 00:06:13,514
To start there's us, the users, everyone.

66
00:06:14,134 --> 00:06:19,634
We have a right for digital privacy. At the Pryvect EV we are representing this group.

67
00:06:19,994 --> 00:06:23,094
We do what we as individuals cannot do ourselves.

68
00:06:24,554 --> 00:06:28,934
So all our personal data and hence our digital privacy is protected.

69
00:06:29,394 --> 00:06:33,174
We always work only in the interest of the users.

70
00:06:34,674 --> 00:06:38,894
We at Pryvect follow a very broad definition of personal data.

71
00:06:39,194 --> 00:06:46,654
Everything we do because of our active actions or even our passive existence,

72
00:06:47,034 --> 00:06:49,654
we consider as personal data.

73
00:06:50,714 --> 00:06:57,314
And we all use products, we call them services here, that provide some value to us.

74
00:06:58,074 --> 00:07:06,654
KDE software, any internet service you use, your IoT bulb, your car are just a few examples.

75
00:07:07,614 --> 00:07:13,274
We have a one-to-one relation to them and usually we have to accept their terms and conditions.

76
00:07:14,374 --> 00:07:20,014
These services nowadays consist of something that you install or use on your

77
00:07:20,014 --> 00:07:21,474
computer or your property.

78
00:07:22,034 --> 00:07:24,834
And something that happens in the cloud.

79
00:07:25,514 --> 00:07:32,754
In the example of KDE, you install KDE applications on your devices And then

80
00:07:32,754 --> 00:07:36,674
user feedback sends some data into the KDE cloud.

81
00:07:38,074 --> 00:07:44,834
While we do this very privacy conserving and well thought, you all know of those

82
00:07:44,834 --> 00:07:51,014
services where the local part is basically for presenting information and surveillance.

83
00:07:52,414 --> 00:07:59,154
While everything else happens in the cloud. And the entire idea of the ecosystem

84
00:07:59,154 --> 00:08:01,214
we are developing is pretty straightforward.

85
00:08:03,172 --> 00:08:10,032
We want that storage and processing of personal data only happens locally.

86
00:08:11,172 --> 00:08:16,672
That's it. So, if you want to be in control of your data, you cannot store it in the cloud.

87
00:08:17,452 --> 00:08:22,552
Storing in the cloud means you have to trust. And trust is the opposite of control.

88
00:08:23,672 --> 00:08:29,872
In our new ecosystem, data needs to be stored in a way that you have control over.

89
00:08:30,552 --> 00:08:33,292
Locally or in places you actively choose.

90
00:08:34,832 --> 00:08:39,452
Computations have to be done locally again, not in the cloud.

91
00:08:40,192 --> 00:08:47,012
And any data transfer into the cloud should be a real exception and well justified.

92
00:08:47,772 --> 00:08:50,812
Of course, for example, if you buy something in an online store,

93
00:08:50,952 --> 00:08:56,612
that store will have to know what you bought, where to send it to and how to get paid.

94
00:08:58,372 --> 00:09:03,692
And to be even more specific, in the new ecosystem, if a service wants or needs,

95
00:09:03,772 --> 00:09:07,212
for legal reasons, for example, to store personal data in the cloud,

96
00:09:07,612 --> 00:09:12,292
handling of this data will automatically get authorized by you.

97
00:09:12,492 --> 00:09:18,792
For this, each data point will get a digital contract assigned by you,

98
00:09:18,932 --> 00:09:24,632
stating for what purpose and how long the service is allowed to store this data.

99
00:09:25,292 --> 00:09:28,652
Additionally, this data will be signed by the service's public key,

100
00:09:28,792 --> 00:09:32,052
so only the service can actually use your data.

101
00:09:32,872 --> 00:09:36,772
And this has advantages for you and for the service.

102
00:09:37,412 --> 00:09:41,612
You will always know which data is stored where, for how long and for what purpose.

103
00:09:42,432 --> 00:09:47,752
And the services on the other side can always prove the data they store is legally

104
00:09:47,752 --> 00:09:50,272
OK, it is GDPR compliant. find.

105
00:09:51,652 --> 00:09:59,352
The rest of the ecosystem I'm going to present now is there to make this pretty simple change work.

106
00:10:00,032 --> 00:10:06,012
The change again is allowing local storage and processing of personal data.

107
00:10:07,917 --> 00:10:13,837
But let's first go through the players. Another important player we call research organizations.

108
00:10:14,437 --> 00:10:18,117
They are not interested in your or your or your or my data. They are interested

109
00:10:18,117 --> 00:10:20,077
in how we as a group behave.

110
00:10:20,617 --> 00:10:25,277
This could be KDE trying to figure out what their users like about the software

111
00:10:25,277 --> 00:10:26,917
or what they dislike about the software.

112
00:10:27,197 --> 00:10:32,077
This could also be a university research group trying to understand human behavior

113
00:10:32,077 --> 00:10:37,857
or your local initiative trying to understand how your neighborhood works or what.

114
00:10:37,917 --> 00:10:42,757
Also, startups and commercial companies fit in here as well.

115
00:10:43,557 --> 00:10:51,197
And it is crucial that every research organization has the same access to our collective data.

116
00:10:51,537 --> 00:10:57,257
After all, our collective data is what drives innovation nowadays.

117
00:10:58,957 --> 00:11:02,117
The challenge with implementing something as simple as a traffic jam detector

118
00:11:02,117 --> 00:11:08,437
is not in the code. It is in the access to the needed underlying data.

119
00:11:09,317 --> 00:11:16,377
And this access needs to be broadly available, but always requires the consent

120
00:11:16,377 --> 00:11:22,717
of the individual and must never compromise the individual's privacy.

121
00:11:26,011 --> 00:11:30,991
To make this all work, we'll need another institution that can act as a trustee

122
00:11:30,991 --> 00:11:33,391
and as an advocate for the users.

123
00:11:33,991 --> 00:11:38,691
It will do what we as individuals cannot do on our own.

124
00:11:39,251 --> 00:11:44,371
At the moment, we're calling it the foundation because it's not named yet and

125
00:11:44,371 --> 00:11:46,171
will be legally set up as a foundation.

126
00:11:47,171 --> 00:11:53,551
This, just to be clear, is not the private EV. The goal of the Private EV is

127
00:11:53,551 --> 00:11:58,891
to find partners to help us get the foundation set up and running.

128
00:11:59,231 --> 00:12:03,111
The Private EV is there to kickstart the software development,

129
00:12:03,431 --> 00:12:08,091
to get the legal bit sorted and to work on the social pervasion.

130
00:12:08,991 --> 00:12:14,231
Once the foundation is set up and running, it's time for the EV to bow out.

131
00:12:14,231 --> 00:12:20,531
But like the EV, the foundation will be non-profit and always act in the best

132
00:12:20,531 --> 00:12:23,811
interest of you, of us, the users.

133
00:12:26,671 --> 00:12:32,511
The heart of the foundation's work is maintaining what we call a central database schema.

134
00:12:33,891 --> 00:12:39,391
It doesn't contain any personal data. It just a catalog, it lists and describes

135
00:12:39,391 --> 00:12:44,791
all the data points local databases can potentially contain.

136
00:12:45,331 --> 00:12:52,531
All actual personal data is always and only stored at the user's local databases.

137
00:12:53,931 --> 00:13:04,251
For this to work, services need to tell the foundation about new data points they want to introduce.

138
00:13:05,291 --> 00:13:08,391
The foundation will then check if this data point already exists.

139
00:13:08,571 --> 00:13:12,711
If not, it will create it. And all this process is not about censorship.

140
00:13:13,391 --> 00:13:18,271
This process is about respecting standards and avoiding duplications.

141
00:13:20,727 --> 00:13:26,327
Once the schema is updated with the new data points, it is synced with the local user databases.

142
00:13:26,787 --> 00:13:32,067
From now on, services can store data in the local user database.

143
00:13:32,447 --> 00:13:37,787
And this workflow is non-negotiable. The local database won't accept any data

144
00:13:37,787 --> 00:13:42,207
that hasn't previously been registered at the central database schema.

145
00:13:43,587 --> 00:13:49,207
The main reason for this is to make it efficient to handle your data.

146
00:13:50,767 --> 00:13:54,447
You'll want to share your data with other services too.

147
00:13:54,587 --> 00:14:00,307
Services that only want to read, but didn't write the data in the first place.

148
00:14:01,607 --> 00:14:06,947
They will need a comprehensive catalog of potentially available data points

149
00:14:06,947 --> 00:14:11,947
to find the data they actually need to provide the service you expect from them.

150
00:14:12,767 --> 00:14:17,367
A good example for this is your address data. Lots of services will need it,

151
00:14:17,427 --> 00:14:22,447
but when you move house, You will want to change it once and for all of these services.

152
00:14:24,667 --> 00:14:30,827
But you also need to control which service is allowed to access which part of your personal data.

153
00:14:31,247 --> 00:14:34,847
So for the foundation maintaining the central database scheme,

154
00:14:35,087 --> 00:14:38,347
this also includes the categorization of data points.

155
00:14:38,727 --> 00:14:44,827
These categories could be anything from health data to location data to financial

156
00:14:44,827 --> 00:14:49,487
data. Again, this categorization gets synced with the local databases.

157
00:14:50,627 --> 00:14:55,727
When a service now asks you to access your personal data, you can choose to

158
00:14:55,727 --> 00:14:59,207
allow or deny access to any categories.

159
00:14:59,767 --> 00:15:03,667
This is just like today you allow apps on your phone, for example,

160
00:15:03,667 --> 00:15:06,287
to access your camera, your address book, or whatever.

161
00:15:07,267 --> 00:15:13,347
In consequence, you will always have full control over which services can access

162
00:15:13,347 --> 00:15:16,187
which categories of your personal data.

163
00:15:18,063 --> 00:15:21,203
And finally, we need to get all of this into a legal framework.

164
00:15:21,643 --> 00:15:28,063
If a service wants to join the ecosystem, it'll have to sign the foundation's terms and conditions.

165
00:15:29,043 --> 00:15:35,423
These terms and conditions will give the foundation the right to audit whether

166
00:15:35,423 --> 00:15:39,863
the service follow the rules of local processing and storage of data.

167
00:15:40,503 --> 00:15:45,163
And this is a big win for us users in terms of legal protection.

168
00:15:45,983 --> 00:15:50,603
If we want to use a service, we have to agree to their terms and conditions.

169
00:15:51,063 --> 00:15:55,643
But these now have to be in line with the Foundation's terms and conditions.

170
00:15:56,223 --> 00:16:02,563
And this is a civil law obligation for services to follow the Foundation's rules,

171
00:16:02,803 --> 00:16:05,643
which we will enforce if needed.

172
00:16:06,123 --> 00:16:11,923
For example, in the EU we don't have to wait for the Irish Data protection commission

173
00:16:11,923 --> 00:16:16,723
to take legal action against services that aren't following the rules.

174
00:16:17,403 --> 00:16:22,663
The foundation will handle this on behalf of those affected by data fraud.

175
00:16:23,283 --> 00:16:27,383
This is going to be a big improvement in the legal situation for all of us.

176
00:16:28,283 --> 00:16:32,143
And services will get something valuable in return.

177
00:16:32,863 --> 00:16:37,743
They can use the foundation seal at the point of sale or the point of usage

178
00:16:37,743 --> 00:16:41,743
to show they they respect users' privacy and take part in the ecosystem.

179
00:16:42,643 --> 00:16:46,023
This is important because from the user's perspective.

180
00:16:48,599 --> 00:16:52,619
Using this system will be just as easy as buying ecological food.

181
00:16:53,559 --> 00:16:59,199
As a user, you will just have to look for the seal to be on the safe side.

182
00:17:01,299 --> 00:17:05,019
Technically, the first compliance service will install all the needed dependencies.

183
00:17:06,279 --> 00:17:10,359
This is just a few clicks for you as a user. And after this,

184
00:17:10,419 --> 00:17:14,419
you as a user just have to choose the right products, the ones carrying the

185
00:17:14,419 --> 00:17:17,579
seal, to reliably protect your privacy.

186
00:17:18,059 --> 00:17:20,479
Everything else will just work.

187
00:17:21,959 --> 00:17:25,499
And this is how the system works from the services perspective.

188
00:17:25,859 --> 00:17:31,139
To sum it up, services are one-on-one services, products that make your life

189
00:17:31,139 --> 00:17:33,119
easier. You choose to use them.

190
00:17:33,819 --> 00:17:38,599
And in the new ecosystem, they are required to store and process data locally.

191
00:17:38,759 --> 00:17:45,099
In return, they can use the foundation seal. and to differentiate on the market against a competition.

192
00:17:45,939 --> 00:17:50,439
And they will be compliant with all legal requirements.

193
00:17:52,759 --> 00:17:59,439
Personally, I would love to see a local running AI assistant that can access

194
00:17:59,439 --> 00:18:04,679
all my personal data and help me to stay healthy or manage my day-to-day tasks.

195
00:18:06,199 --> 00:18:11,559
But as I said before, Therefore, the Envisioned ecosystem isn't just about what's

196
00:18:11,559 --> 00:18:12,599
good for us as individuals.

197
00:18:13,039 --> 00:18:17,679
As I said before, our collective data is what drives innovation nowadays.

198
00:18:18,459 --> 00:18:23,379
Our collective data will help us solve the big and small problems we face in society.

199
00:18:23,939 --> 00:18:29,059
At the same time, we need to make sure our individual data is always protected.

200
00:18:29,719 --> 00:18:33,979
And we probably don't want to support research from every institution.

201
00:18:33,979 --> 00:18:39,579
So I'd be happy to participate in a KDE survey, but there are lots of companies

202
00:18:39,579 --> 00:18:42,259
out there I wouldn't want to donate my data to.

203
00:18:44,879 --> 00:18:49,579
So how do evaluations on our collective data work in the new ecosystem?

204
00:18:49,979 --> 00:18:55,519
How can we make sure that everyone involved has given their full consent and

205
00:18:55,519 --> 00:18:57,779
that their privacy is protected?

206
00:18:58,879 --> 00:18:59,779
To start.

207
00:19:01,922 --> 00:19:05,542
The foundation is going to provide a web service where research organizations

208
00:19:05,542 --> 00:19:10,642
can ask their research question in a way the system can understand.

209
00:19:11,382 --> 00:19:17,422
Once again, the central database schema is the source for all the data points

210
00:19:17,422 --> 00:19:19,282
that are available for research.

211
00:19:20,802 --> 00:19:26,202
Once the research gets started, it hops through all the users following what

212
00:19:26,202 --> 00:19:29,702
we call the federated secure aggregation protocol.

213
00:19:30,382 --> 00:19:34,302
Then it goes back to the foundation server where we do last privacy breaching

214
00:19:34,302 --> 00:19:37,502
checks. This could be something like low numbers in certain cells.

215
00:19:37,762 --> 00:19:43,102
We're going to mask those and send the data to the research organization.

216
00:19:43,602 --> 00:19:49,162
So how do we get user consent for the query issuer? And how does the federated

217
00:19:49,162 --> 00:19:50,942
secure aggregation protocol work?

218
00:19:51,622 --> 00:19:53,982
Let's first look at the consent part.

219
00:19:55,382 --> 00:20:03,202
Research organizations can report on their social impact and behavior on a number of categories.

220
00:20:03,902 --> 00:20:06,822
These categories will evolve over time.

221
00:20:07,262 --> 00:20:13,042
But to give you a heads up, some possible examples are the industry they work

222
00:20:13,042 --> 00:20:14,862
on. Are they for profit or nonprofit?

223
00:20:15,502 --> 00:20:22,762
How about employee insurances like unemployment insurances or health insurances?

224
00:20:23,982 --> 00:20:30,382
The existence of unions? Or how many women are on the board?

225
00:20:31,702 --> 00:20:38,622
What about their current CO2 balance? And how are they planning to reach carbon neutrality?

226
00:20:39,982 --> 00:20:46,482
These are just a few questions they can answer. And just like with services.

227
00:20:48,068 --> 00:20:56,548
The foundation will get the right to audit these research organizations,

228
00:20:57,468 --> 00:21:03,808
this time focusing on the before-mentioned categories to make sure that the

229
00:21:03,808 --> 00:21:07,988
information the research organizations provided are actually true.

230
00:21:09,948 --> 00:21:15,688
Now, as a user, you don't have to accept or decline to individual queries. theories.

231
00:21:16,928 --> 00:21:23,668
Instead, you can define how you want an organization to socially behave and

232
00:21:23,668 --> 00:21:29,488
exact the same categories the research organizations had to answer before.

233
00:21:30,008 --> 00:21:34,428
If the organization that's asking for your data behaves the way you expect,

234
00:21:34,808 --> 00:21:39,368
then your data will automatically be included in the actual query.

235
00:21:39,608 --> 00:21:42,248
If not, you will not contribute your data.

236
00:21:42,888 --> 00:21:46,588
We are matching you and the research organizations.

237
00:21:47,448 --> 00:21:55,728
As an example, when you think proportion of women in company management should be more than 40%,

238
00:21:55,728 --> 00:22:00,968
then your data will only be included in research from research organizations

239
00:22:00,968 --> 00:22:04,208
that actually have more than 40% women on board.

240
00:22:05,068 --> 00:22:13,068
And this mechanism basically turns your access to your data into a direct political instrument.

241
00:22:13,928 --> 00:22:20,108
You can directly express what you expect from organizations in terms of how

242
00:22:20,108 --> 00:22:21,728
they should socially behave.

243
00:22:22,628 --> 00:22:29,248
And this will, in return, encourage organizations to work on improving their behavior.

244
00:22:29,808 --> 00:22:35,228
That's because if they do, they'll get access to larger pools of people who

245
00:22:35,228 --> 00:22:37,048
will take part in the surveys.

246
00:22:38,768 --> 00:22:46,388
Meanwhile, the companies will always be aware of the bias in the queries because

247
00:22:46,388 --> 00:22:48,728
they always know who's taking part and who's not.

248
00:22:51,399 --> 00:22:56,759
There's one notable exception to this rule. And this is a research organization,

249
00:22:57,119 --> 00:23:02,999
or as a research organization, services can always query the data they've entered

250
00:23:02,999 --> 00:23:04,779
into the local user databases.

251
00:23:05,199 --> 00:23:07,659
Let's look at KUserFeedback for an example.

252
00:23:10,579 --> 00:23:15,099
KUserFeedback writes data into the local user database as a service.

253
00:23:15,099 --> 00:23:22,159
Now KDE can query this data as a research organization without having to fulfill

254
00:23:22,159 --> 00:23:24,079
all users' requirements.

255
00:23:24,439 --> 00:23:28,379
That is because as a user you have a one-to-one service relation with KDE.

256
00:23:28,579 --> 00:23:31,199
This overrides the other rule.

257
00:23:31,679 --> 00:23:36,599
If on the other hand GNOME wants to query the KUser feedback data,

258
00:23:36,719 --> 00:23:41,999
which they can, then they would have to match users' expectations as an organization.

259
00:23:41,999 --> 00:23:46,779
So, they will only get the information from users where this matching works.

260
00:23:50,499 --> 00:23:57,619
That's for the consent part. Let's at last point look at the federated secure aggregation protocol.

261
00:23:58,779 --> 00:24:06,699
Once the query is published, clients can check if they want to participate and register.

262
00:24:06,699 --> 00:24:11,259
Register and once there are enough clients that have registered the server will

263
00:24:11,259 --> 00:24:14,959
assign randomly one of those clients as the aggregation client.

264
00:24:16,299 --> 00:24:21,199
This aggregation client will create a private public key pair for encryption

265
00:24:21,199 --> 00:24:26,359
used for message encryption and send the public key to the server.

266
00:24:27,839 --> 00:24:34,119
This key is used for message encryption. Next the server will create another

267
00:24:34,119 --> 00:24:39,639
key pair this time using the PAYE ecosystem, the PAYE crypto system.

268
00:24:39,979 --> 00:24:46,159
PAYE is an additive homomorphic encryption system and this is used for data encryption.

269
00:24:46,739 --> 00:24:53,179
The server now shares the two keys and the survey itself with all the clients.

270
00:24:54,119 --> 00:25:01,799
Each client now fills out the survey, encrypts the data using the PAYE key,

271
00:25:02,899 --> 00:25:07,899
encrypts the message using the message key and sends all the data to the server,

272
00:25:07,999 --> 00:25:10,939
which will forward it to the aggregation client.

273
00:25:11,259 --> 00:25:15,659
The aggregation client is now able to decrypt the message, not the data,

274
00:25:15,779 --> 00:25:20,319
but it can aggregate the encrypted data using the PAYE system.

275
00:25:21,859 --> 00:25:27,279
Once that's done, the still PAYE encrypted data gets sent back to the server,

276
00:25:28,019 --> 00:25:34,979
which can then decrypt the aggregated data without knowing any details whatsoever

277
00:25:34,979 --> 00:25:36,519
other than the final result.

278
00:25:40,470 --> 00:25:44,870
This federated secure aggregation protocol is a combination of well-established

279
00:25:44,870 --> 00:25:48,090
data protection and analysis methods.

280
00:25:48,410 --> 00:25:50,490
It combines the benefits of

281
00:25:50,490 --> 00:25:54,650
federation with encryption and includes final checks for privacy breaches.

282
00:25:55,030 --> 00:26:01,610
This way we can be sure that everyone is protected while we can make statements about groups of users.

283
00:26:04,170 --> 00:26:08,430
You now have a first overview of how the new ecosystem is going to work.

284
00:26:09,150 --> 00:26:14,010
There are lots of more details and we'll hopefully have some time to answer

285
00:26:14,010 --> 00:26:15,070
your questions at the end.

286
00:26:15,370 --> 00:26:20,430
We also offer two Birds of Feathers events on Monday and our developers,

287
00:26:20,510 --> 00:26:24,270
who unfortunately couldn't make it today, will be around then to answer questions

288
00:26:24,270 --> 00:26:26,850
which I can't answer, so the more technical ones.

289
00:26:27,810 --> 00:26:31,230
And we'll show you a demo of what we got.

290
00:26:31,990 --> 00:26:35,210
We were in the lucky situation that we got funding from the German prototype

291
00:26:35,210 --> 00:26:38,950
fund and let me take the chance to say thank you for that, it was a great opportunity

292
00:26:38,950 --> 00:26:43,650
and the German prototype fund is a real good great funding program.

293
00:26:44,850 --> 00:26:47,730
And to give you more insight into the current state,

294
00:26:47,910 --> 00:26:55,190
we have created a patch that allows KUser feedback to store data as a service

295
00:26:55,190 --> 00:27:01,670
in a local database and we've created the server that allows KDE to evaluate

296
00:27:01,670 --> 00:27:04,810
this data using the federated secure aggregation protocol protocol,

297
00:27:05,070 --> 00:27:11,830
and thus to get insights into our user base.

298
00:27:12,870 --> 00:27:17,430
So as a result, we will be able to learn about our users, what they're trying

299
00:27:17,430 --> 00:27:21,270
to do, what they like about our software, what they don't like about our software,

300
00:27:21,350 --> 00:27:25,030
and all of this without compromising their privacy.

301
00:27:26,030 --> 00:27:30,730
This lets us do great work without having to compromise our values.

302
00:27:31,550 --> 00:27:37,410
Gordian's knot has been cut. And who knows, there might be a chance for the

303
00:27:37,410 --> 00:27:39,430
year of the Linux desktop to become a reality.

304
00:27:40,010 --> 00:27:45,310
We can finally start to innovate driven by real data from our actual users.

305
00:27:47,448 --> 00:27:52,708
So, what's the plan for the next steps? First of all, let us start a discussion

306
00:27:52,708 --> 00:27:56,668
about how we want to adopt this new technology into our tech stack.

307
00:27:57,468 --> 00:28:02,708
What we have is a demo, a proof of a concept, not a finished product.

308
00:28:04,068 --> 00:28:07,928
Together with you, we can take the demo and turn it into a product.

309
00:28:08,228 --> 00:28:10,428
A product we are willing to upstream.

310
00:28:11,868 --> 00:28:16,348
Once we've launched our first product, we'd also love to see our friends benefit from it.

311
00:28:16,928 --> 00:28:21,728
We are not the only community that respects privacy, but in return does not

312
00:28:21,728 --> 00:28:23,148
know enough about their users.

313
00:28:24,308 --> 00:28:28,928
LibreOffice, for instance, is eagerly waiting for us. If we team up with them,

314
00:28:28,988 --> 00:28:33,008
we can take the product beyond the Linux world into Mac and Windows space.

315
00:28:33,328 --> 00:28:38,248
This way, we want the ecosystem to mature, step by step.

316
00:28:38,768 --> 00:28:43,948
Because basically, all user-facing free software communities have the same problem

317
00:28:43,948 --> 00:28:46,688
as we do. and we'd love to help them out.

318
00:28:47,088 --> 00:28:50,208
This is also why we did not set this up as a KDE project.

319
00:28:51,228 --> 00:28:56,828
We're definitely rooted in KDE, but the whole project is meant to grow beyond.

320
00:28:57,668 --> 00:29:01,368
Once we've grown to the point where several free software projects have adopted

321
00:29:01,368 --> 00:29:05,568
the technology, it is time to officially establish the foundation.

322
00:29:07,325 --> 00:29:13,605
We want free software to benefit from it, but we also want everyone to reclaim

323
00:29:13,605 --> 00:29:15,345
privacy in their digital lives.

324
00:29:16,025 --> 00:29:20,705
That's why we need commercial proprietary services to get involved.

325
00:29:21,565 --> 00:29:25,785
And at that point, there are plenty of reasons for proprietary services to join.

326
00:29:26,625 --> 00:29:32,385
EU legislation, for example, the EU Data Act, requires services to open up access

327
00:29:32,385 --> 00:29:33,605
to the data they produce.

328
00:29:34,045 --> 00:29:36,105
And they will need a working marketplace.

329
00:29:36,785 --> 00:29:42,185
With lots of free software projects using the ecosystem, there'll be millions

330
00:29:42,185 --> 00:29:45,185
of users that have already installed the needed software.

331
00:29:45,645 --> 00:29:51,625
It'll be a proven solution and we provide a legal partner and a transparent marketplace for data.

332
00:29:51,805 --> 00:29:57,165
So services will only have to adjust their technology to work locally again

333
00:29:57,165 --> 00:30:03,225
and they can join a working ecosystem system and save a lot of money because

334
00:30:03,225 --> 00:30:08,225
they need less cloud services and less overhead to stay for example GDPR compliant.

335
00:30:09,125 --> 00:30:13,665
And once commercial services are up and running, we'll have a business model

336
00:30:13,665 --> 00:30:19,925
that lets us keep the infrastructure in good shape and make it better where it needs to be.

337
00:30:21,325 --> 00:30:27,625
We've created an ecosystem that saves everyone's privacy for the benefit of us, the users.

338
00:30:30,525 --> 00:30:39,225
And as a free and open society. An ecosystem that will always remember its roots. The KDE community.

339
00:30:40,385 --> 00:30:45,065
Well, thanks for your attention. We have some time for questions now.

340
00:31:13,045 --> 00:31:17,985
So thanks for your talk. One question, like here we have many developers and

341
00:31:17,985 --> 00:31:23,205
we see homeographic encryption, that makes sense to us and we can trust it and we can look at the code.

342
00:31:23,605 --> 00:31:28,665
But how would I convince my mother that it's really safe for her to share us

343
00:31:28,665 --> 00:31:30,605
the data? You don't need to.

344
00:31:31,785 --> 00:31:35,765
Because, well, we would do. We as KDE adopt the technology.

345
00:31:36,005 --> 00:31:38,985
It's not private or the foundation trying to convince anybody,

346
00:31:39,205 --> 00:31:43,305
but it is trusted parties like the KDE community, like LibreOffice,

347
00:31:43,445 --> 00:31:48,425
like other free software projects that sort of stand there and say, this is safe.

348
00:31:48,565 --> 00:31:52,705
And we have not sort of asked for your personal data in the last years because

349
00:31:52,705 --> 00:31:54,785
there was no safe way, but now we trust it.

350
00:31:54,785 --> 00:32:02,045
So basically, we are sort of, you know, instrumentalizing other trusted instances

351
00:32:02,045 --> 00:32:05,265
to get distributed and to find users.

352
00:32:09,512 --> 00:32:14,512
Yeah, thanks for the talk. I think it's a very cool idea to have this secure aggregation protocol,

353
00:32:14,712 --> 00:32:20,272
but I don't quite understand how it works because I understand that the splits

354
00:32:20,272 --> 00:32:24,392
between the server and the aggregation client is for the purpose that the server

355
00:32:24,392 --> 00:32:25,552
cannot see the individual data.

356
00:32:25,832 --> 00:32:30,812
But how can the other clients trust that the server doesn't select a device

357
00:32:30,812 --> 00:32:34,352
that the server controls as the aggregation client?

358
00:32:34,912 --> 00:32:37,972
If I, as the server, want to get all the individual data points,

359
00:32:37,972 --> 00:32:39,432
I can just make the server select

360
00:32:39,432 --> 00:32:42,692
my smartphone as the aggregation client and then I have all the keys.

361
00:32:43,112 --> 00:32:46,612
So what do you really win by doing this pattern?

362
00:32:47,732 --> 00:32:53,632
Well, you can't remove trust from the whole equation. We can only try to minimize

363
00:32:53,632 --> 00:32:54,912
the needed amount of trust.

364
00:32:55,152 --> 00:33:00,112
And obviously the foundation is an institution that will have to earn the trust

365
00:33:00,112 --> 00:33:06,752
that is needed so you can rely on it not working as a bad actor.

366
00:33:06,752 --> 00:33:11,312
We've set up the technology in a way that it sort of minimizes the need to trust,

367
00:33:11,472 --> 00:33:15,332
but in the sense if you want to attack a system, you can attack any system.

368
00:33:15,472 --> 00:33:24,312
And there is trust left that the foundation needs to earn and needs to justify that it has.

369
00:33:24,492 --> 00:33:28,532
And we want to try to use best patterns there are.

370
00:33:28,592 --> 00:33:31,772
So we obviously do everything open source. We want to, you know,

371
00:33:31,792 --> 00:33:35,992
have the foundation, the foundation itself needs to get audited by external

372
00:33:35,992 --> 00:33:39,092
instances that it actually does what it claims to do.

373
00:33:39,312 --> 00:33:44,792
Yeah, we want to encourage white hat hackers to, you know, find flaws in our

374
00:33:44,792 --> 00:33:46,052
system and so on and so on.

375
00:33:46,092 --> 00:33:51,232
So we want to improve, we want to apply all the best practices that are out there.

376
00:33:51,592 --> 00:33:55,992
But in the end, you're right, if you want to sort of criticize it to the end,

377
00:33:56,012 --> 00:33:58,572
there is trust needed. Yeah.

378
00:34:09,852 --> 00:34:17,452
So you talked about the conditions that you would like the research organizations

379
00:34:17,452 --> 00:34:25,072
to answer about themselves that would be used to select which end users,

380
00:34:25,372 --> 00:34:28,872
and the end users have answered and similar questions about which of which they're willing to share with.

381
00:34:30,192 --> 00:34:34,252
That's going to require a lot of thought is the place I sort of need to put.

382
00:34:34,552 --> 00:34:44,332
For example, you go, okay, we will ask a question that is, does your board comply

383
00:34:44,332 --> 00:34:48,772
with 50% female representation, for example, and as an end user I said I want that.

384
00:34:49,892 --> 00:34:54,772
But then the research organization that gets set up.

385
00:34:57,369 --> 00:35:00,529
Need for by businesses that

386
00:35:00,529 --> 00:35:03,989
do not conform to those rules and is

387
00:35:03,989 --> 00:35:09,609
set up with enough funding to do that and is independent once it's set up can

388
00:35:09,609 --> 00:35:15,469
gather that information and sell it to the available customers and in order

389
00:35:15,469 --> 00:35:19,689
to survive as a business it's going to need to do that and so it's going to

390
00:35:19,689 --> 00:35:23,829
sell the data on to people who don't necessarily conform to those constraints rates.

391
00:35:24,349 --> 00:35:30,829
So some care may be required in formulating the conditions on research organizations.

392
00:35:31,709 --> 00:35:36,209
Yeah, well, you point to a problem that can't be solved technically.

393
00:35:36,489 --> 00:35:38,709
That's a problem that has to be solved legally.

394
00:35:39,209 --> 00:35:44,389
So basically, that's something that will have to be addressed in our terms and conditions.

395
00:35:44,589 --> 00:35:50,049
And we'll have to audit organizations to behave well. And if they don't, we have to sue them.

396
00:35:50,649 --> 00:35:55,109
But this is something we can do as a foundation because this is something you

397
00:35:55,109 --> 00:35:56,929
can't do as a user. You can't sue Google.

398
00:35:57,489 --> 00:36:03,129
That just won't work out. But this is something we want to do and this is why

399
00:36:03,129 --> 00:36:08,849
I said it's not only technology, it's also the legal bits and pieces and it

400
00:36:08,849 --> 00:36:10,389
is the social pervasion.

401
00:36:10,489 --> 00:36:14,789
These are the three important pillars we have to work on and technology is only one of those.

