1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" dir=
"ltr">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen
</title>
7 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel=
"alternate" title=
"RSS Feed" href=
"http://people.skolelinux.org/pere/blog/index.rss" type=
"application/rss+xml" />
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Ruling_ignored_our_objections_to_the_seizure_of_popcorn_time_no___domstolkontroll_.html">Ruling ignored our objections to the seizure of popcorn-time.no (#domstolkontroll)
</a></div>
24 <div class=
"date">13th February
2017</div>
25 <div class=
"body"><p>A few days ago, we received the ruling from
26 <a href=
"http://people.skolelinux.org/pere/blog/A_day_in_court_challenging_seizure_of_popcorn_time_no_for__domstolkontroll.html">my
27 day in court
</a>. The case in question is a challenge of the seizure
28 of the DNS domain popcorn-time.no. The ruling simply did not mention
29 most of our arguments, and seemed to take everything ØKOKRIM said at
30 face value, ignoring our demonstration and explanations. But it is
31 hard to tell for sure, as we still have not seen most of the documents
32 in the case and thus were unprepared and unable to contradict several
33 of the claims made in court by the opposition. We are considering an
34 appeal, but it is partly a question of funding, as it is costing us
35 quite a bit to pay for our lawyer. If you want to help, please
36 <a href=
"http://www.nuug.no/dns-beslag-donasjon.shtml">donate to the
37 NUUG defense fund
</a>.
</p>
39 <p>The details of the case, as far as we know it, is available in
41 <a href=
"https://www.nuug.no/news/tags/dns-domenebeslag/">the NUUG
42 blog
</a>. This also include
43 <a href=
"https://www.nuug.no/news/Avslag_etter_rettslig_h_ring_om_DNS_beslaget___vurderer_veien_videre.shtml">the
44 ruling itself
</a>.
</p>
49 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett
</a>.
54 <div class=
"padding"></div>
57 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/A_day_in_court_challenging_seizure_of_popcorn_time_no_for__domstolkontroll.html">A day in court challenging seizure of popcorn-time.no for #domstolkontroll
</a></div>
58 <div class=
"date"> 3rd February
2017</div>
59 <div class=
"body"><p align=
"center"><img width=
"70%" src=
"http://people.skolelinux.org/pere/blog/images/2017-02-01-popcorn-time-in-court.jpeg"></p>
61 <p>On Wednesday, I spent the entire day in court in Follo Tingrett
62 representing
<a href=
"https://www.nuug.no/">the member association
63 NUUG
</a>, alongside
<a href=
"https://www.efn.no/">the member
64 association EFN
</a> and
<a href=
"http://www.imc.no">the DNS registrar
65 IMC
</a>, challenging the seizure of the DNS name popcorn-time.no. It
66 was interesting to sit in a court of law for the first time in my
67 life. Our team can be seen in the picture above: attorney Ola
68 Tellesbø, EFN board member Tom Fredrik Blenning, IMC CEO Morten Emil
69 Eriksen and NUUG board member Petter Reinholdtsen.
</p>
71 <p><a href=
"http://www.domstol.no/no/Enkelt-domstol/follo-tingrett/Nar-gar-rettssaken/Beramming/?cid=AAAA1701301512081262234UJFBVEZZZZZEJBAvtale">The
72 case at hand
</a> is that the Norwegian National Authority for
73 Investigation and Prosecution of Economic and Environmental Crime (aka
74 Økokrim) decided on their own, to seize a DNS domain early last
75 year, without following
76 <a href=
"https://www.norid.no/no/regelverk/navnepolitikk/#link12">the
77 official policy of the Norwegian DNS authority
</a> which require a
78 court decision. The web site in question was a site covering Popcorn
79 Time. And Popcorn Time is the name of a technology with both legal
80 and illegal applications. Popcorn Time is a client combining
81 searching a Bittorrent directory available on the Internet with
82 downloading/distribute content via Bittorrent and playing the
83 downloaded content on screen. It can be used illegally if it is used
84 to distribute content against the will of the right holder, but it can
85 also be used legally to play a lot of content, for example the
87 <a href=
"https://archive.org/details/movies">available from the
88 Internet Archive
</a> or the collection
89 <a href=
"http://vodo.net/films/">available from Vodo
</a>. We created
90 <a href=
"magnet:?xt=urn:btih:86c1802af5a667ca56d3918aecb7d3c0f7173084&dn=PresentasjonFolloTingrett.mov&tr=udp%3A%2F%2Fpublic.popcorn-tracker.org%3A6969%2Fannounce">a
91 video demonstrating legally use of Popcorn Time
</a> and played it in
92 Court. It can of course be downloaded using Bittorrent.
</p>
94 <p>I did not quite know what to expect from a day in court. The
95 government held on to their version of the story and we held on to
96 ours, and I hope the judge is able to make sense of it all. We will
97 know in two weeks time. Unfortunately I do not have high hopes, as
98 the Government have the upper hand here with more knowledge about the
99 case, better training in handling criminal law and in general higher
100 standing in the courts than fairly unknown DNS registrar and member
101 associations. It is expensive to be right also in Norway. So far the
102 case have cost more than NOK
70 000,-. To help fund the case, NUUG
103 and EFN have asked for donations, and managed to collect around NOK
25
104 000,- so far. Given the presentation from the Government, I expect
105 the government to appeal if the case go our way. And if the case do
106 not go our way, I hope we have enough funding to appeal.
</p>
108 <p>From the other side came two people from Økokrim. On the benches,
109 appearing to be part of the group from the government were two people
110 from the Simonsen Vogt Wiik lawyer office, and three others I am not
111 quite sure who was. Økokrim had proposed to present two witnesses
112 from The Motion Picture Association, but this was rejected because
113 they did not speak Norwegian and it was a bit late to bring in a
114 translator, but perhaps the two from MPA were present anyway. All
115 seven appeared to know each other. Good to see the case is take
118 <p>If you, like me, believe the courts should be involved before a DNS
119 domain is hijacked by the government, or you believe the Popcorn Time
120 technology have a lot of useful and legal applications, I suggest you
121 too
<a href=
"http://www.nuug.no/dns-beslag-donasjon.shtml">donate to
122 the NUUG defense fund
</a>. Both Bitcoin and bank transfer are
123 available. If NUUG get more than we need for the legal action (very
124 unlikely), the rest will be spend promoting free software, open
125 standards and unix-like operating systems in Norway, so no matter what
126 happens the money will be put to good use.
</p>
128 <p>If you want to lean more about the case, I recommend you check out
129 <a href=
"https://www.nuug.no/news/tags/dns-domenebeslag/">the blog
130 posts from NUUG covering the case
</a>. They cover the legal arguments
136 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett
</a>.
141 <div class=
"padding"></div>
144 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Nasjonalbiblioteket_avslutter_sin_ulovlige_bruk_av_Google_Skjemaer.html">Nasjonalbiblioteket avslutter sin ulovlige bruk av Google Skjemaer
</a></div>
145 <div class=
"date">12th January
2017</div>
146 <div class=
"body"><p>I dag fikk jeg en skikkelig gladmelding. Bakgrunnen er at før jul
147 arrangerte Nasjonalbiblioteket
148 <a href=
"http://www.nb.no/Bibliotekutvikling/Kunnskapsorganisering/Nasjonalt-verksregister/Seminar-om-verksregister">et
149 seminar om sitt knakende gode tiltak «verksregister»
</a>. Eneste
150 måten å melde seg på dette seminaret var å sende personopplysninger
151 til Google via Google Skjemaer. Dette syntes jeg var tvilsom praksis,
152 da det bør være mulig å delta på seminarer arrangert av det offentlige
153 uten å måtte dele sine interesser, posisjon og andre
154 personopplysninger med Google. Jeg ba derfor om innsyn via
155 <a href=
"https://www.mimesbronn.no/">Mimes brønn
</a> i
156 <a href=
"https://www.mimesbronn.no/request/personopplysninger_til_google_sk">avtaler
157 og vurderinger Nasjonalbiblioteket hadde rundt dette
</a>.
158 Personopplysningsloven legger klare rammer for hva som må være på
159 plass før en kan be tredjeparter, spesielt i utlandet, behandle
160 personopplysninger på sine vegne, så det burde eksistere grundig
161 dokumentasjon før noe slikt kan bli lovlig. To jurister hos
162 Nasjonalbiblioteket mente først dette var helt i orden, og at Googles
163 standardavtale kunne brukes som databehandlingsavtale. Det syntes jeg
164 var merkelig, men har ikke hatt kapasitet til å følge opp saken før
165 for to dager siden.
</p>
167 <p>Gladnyheten i dag, som kom etter at jeg tipset Nasjonalbiblioteket
168 om at Datatilsynet underkjente Googles standardavtaler som
169 databehandleravtaler i
2011, er at Nasjonalbiblioteket har bestemt seg
170 for å avslutte bruken av Googles Skjemaer/Apps og gå i dialog med DIFI
171 for å finne bedre måter å håndtere påmeldinger i tråd med
172 personopplysningsloven. Det er fantastisk å se at av og til hjelper
173 det å spørre hva i alle dager det offentlige holder på med.
</p>
178 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/web">web
</a>.
183 <div class=
"padding"></div>
186 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Bryter_NAV_sin_egen_personvernerkl_ring_.html">Bryter NAV sin egen personvernerklæring?
</a></div>
187 <div class=
"date">11th January
2017</div>
188 <div class=
"body"><p>Jeg leste med interesse en nyhetssak hos
189 <a href=
"http://www.digi.no/artikler/nav-avslorer-trygdemisbruk-ved-a-spore-ip-adresser/367394">digi.no
</a>
191 <a href=
"https://www.nrk.no/buskerud/trygdesvindlere-avslores-av-utenlandske-ip-adresser-1.13313461">NRK
</a>
192 om at det ikke bare er meg, men at også NAV bedriver geolokalisering
193 av IP-adresser, og at det gjøres analyse av IP-adressene til de som
194 sendes inn meldekort for å se om meldekortet sendes inn fra
195 utenlandske IP-adresser. Politiadvokat i Drammen, Hans Lyder Haare,
196 er sitert i NRK på at «De to er jo blant annet avslørt av
197 IP-adresser. At man ser at meldekortet kommer fra utlandet.»
</p>
199 <p>Jeg synes det er fint at det blir bedre kjent at IP-adresser
200 knyttes til enkeltpersoner og at innsamlet informasjon brukes til å
201 stedsbestemme personer også av aktører her i Norge. Jeg ser det som
202 nok et argument for å bruke
203 <a href=
"https://www.torproject.org/">Tor
</a> så mye som mulig for å
204 gjøre gjøre IP-lokalisering vanskeligere, slik at en kan beskytte sin
205 privatsfære og unngå å dele sin fysiske plassering med
208 <P>Men det er en ting som bekymrer meg rundt denne nyheten. Jeg ble
209 tipset (takk #nuug) om
210 <a href=
"https://www.nav.no/no/NAV+og+samfunn/Kontakt+NAV/Teknisk+brukerstotte/Snarveier/personvernerkl%C3%A6ring-for-arbeids-og-velferdsetaten">NAVs
211 personvernerklæring
</a>, som under punktet «Personvern og statistikk»
216 <p>«Når du besøker nav.no, etterlater du deg elektroniske spor. Sporene
217 dannes fordi din nettleser automatisk sender en rekke opplysninger til
218 NAVs tjener (server-maskin) hver gang du ber om å få vist en side. Det
219 er eksempelvis opplysninger om hvilken nettleser og -versjon du
220 bruker, og din internettadresse (ip-adresse). For hver side som vises,
221 lagres følgende opplysninger:
</p>
224 <li>hvilken side du ser på
</li>
226 <li>hvilken nettleser du bruker
</li>
227 <li>din ip-adresse
</li>
230 <p>Ingen av opplysningene vil bli brukt til å identifisere
231 enkeltpersoner. NAV bruker disse opplysningene til å generere en
232 samlet statistikk som blant annet viser hvilke sider som er mest
233 populære. Statistikken er et redskap til å forbedre våre
238 <p>Jeg klarer ikke helt å se hvordan analyse av de besøkendes
239 IP-adresser for å se hvem som sender inn meldekort via web fra en
240 IP-adresse i utlandet kan gjøres uten å komme i strid med påstanden om
241 at «ingen av opplysningene vil bli brukt til å identifisere
242 enkeltpersoner». Det virker dermed for meg som at NAV bryter sine
243 egen personvernerklæring, hvilket
244 <a href=
"http://people.skolelinux.org/pere/blog/Er_lover_brutt_n_r_personvernpolicy_ikke_stemmer_med_praksis_.html">Datatilsynet
245 fortalte meg i starten av desember antagelig er brudd på
246 personopplysningsloven
</a>.
248 <p>I tillegg er personvernerklæringen ganske misvisende i og med at
249 NAVs nettsider ikke bare forsyner NAV med personopplysninger, men i
250 tillegg ber brukernes nettleser kontakte fem andre nettjenere
251 (script.hotjar.com, static.hotjar.com, vars.hotjar.com,
252 www.google-analytics.com og www.googletagmanager.com), slik at
253 personopplysninger blir gjort tilgjengelig for selskapene Hotjar og
254 Google , og alle som kan lytte på trafikken på veien (som FRA, GCHQ og
255 NSA). Jeg klarer heller ikke se hvordan slikt spredning av
256 personopplysninger kan være i tråd med kravene i
257 personopplysningloven, eller i tråd med NAVs personvernerklæring.
</p>
259 <p>Kanskje NAV bør ta en nøye titt på sin personvernerklæring? Eller
260 kanskje Datatilsynet bør gjøre det?
</p>
265 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
270 <div class=
"padding"></div>
273 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Where_did_that_package_go___mdash__geolocated_IP_traceroute.html">Where did that package go?
— geolocated IP traceroute
</a></div>
274 <div class=
"date"> 9th January
2017</div>
275 <div class=
"body"><p>Did you ever wonder where the web trafic really flow to reach the
276 web servers, and who own the network equipment it is flowing through?
277 It is possible to get a glimpse of this from using traceroute, but it
278 is hard to find all the details. Many years ago, I wrote a system to
279 map the Norwegian Internet (trying to figure out if our plans for a
280 network game service would get low enough latency, and who we needed
281 to talk to about setting up game servers close to the users. Back
282 then I used traceroute output from many locations (I asked my friends
283 to run a script and send me their traceroute output) to create the
284 graph and the map. The output from traceroute typically look like
288 traceroute to www.stortinget.no (
85.88.67.10),
30 hops max,
60 byte packets
289 1 uio-gw10.uio.no (
129.240.202.1)
0.447 ms
0.486 ms
0.621 ms
290 2 uio-gw8.uio.no (
129.240.24.229)
0.467 ms
0.578 ms
0.675 ms
291 3 oslo-gw1.uninett.no (
128.39.65.17)
0.385 ms
0.373 ms
0.358 ms
292 4 te3-
1-
2.br1.fn3.as2116.net (
193.156.90.3)
1.174 ms
1.172 ms
1.153 ms
293 5 he16-
1-
1.cr1.san110.as2116.net (
195.0.244.234)
2.627 ms he16-
1-
1.cr2.oslosda310.as2116.net (
195.0.244.48)
3.172 ms he16-
1-
1.cr1.san110.as2116.net (
195.0.244.234)
2.857 ms
294 6 ae1.ar8.oslosda310.as2116.net (
195.0.242.39)
0.662 ms
0.637 ms ae0.ar8.oslosda310.as2116.net (
195.0.242.23)
0.622 ms
295 7 89.191.10.146 (
89.191.10.146)
0.931 ms
0.917 ms
0.955 ms
301 <p>This show the DNS names and IP addresses of (at least some of the)
302 network equipment involved in getting the data traffic from me to the
303 www.stortinget.no server, and how long it took in milliseconds for a
304 package to reach the equipment and return to me. Three packages are
305 sent, and some times the packages do not follow the same path. This
306 is shown for hop
5, where three different IP addresses replied to the
307 traceroute request.
</p>
309 <p>There are many ways to measure trace routes. Other good traceroute
310 implementations I use are traceroute (using ICMP packages) mtr (can do
311 both ICMP, UDP and TCP) and scapy (python library with ICMP, UDP, TCP
312 traceroute and a lot of other capabilities). All of them are easily
313 available in
<a href=
"https://www.debian.org/">Debian
</a>.
</p>
315 <p>This time around, I wanted to know the geographic location of
316 different route points, to visualize how visiting a web page spread
317 information about the visit to a lot of servers around the globe. The
318 background is that a web site today often will ask the browser to get
319 from many servers the parts (for example HTML, JSON, fonts,
320 JavaScript, CSS, video) required to display the content. This will
321 leak information about the visit to those controlling these servers
322 and anyone able to peek at the data traffic passing by (like your ISP,
323 the ISPs backbone provider, FRA, GCHQ, NSA and others).
</p>
325 <p>Lets pick an example, the Norwegian parliament web site
326 www.stortinget.no. It is read daily by all members of parliament and
327 their staff, as well as political journalists, activits and many other
328 citizens of Norway. A visit to the www.stortinget.no web site will
329 ask your browser to contact
8 other servers: ajax.googleapis.com,
330 insights.hotjar.com, script.hotjar.com, static.hotjar.com,
331 stats.g.doubleclick.net, www.google-analytics.com,
332 www.googletagmanager.com and www.netigate.se. I extracted this by
333 asking
<a href=
"http://phantomjs.org/">PhantomJS
</a> to visit the
334 Stortinget web page and tell me all the URLs PhantomJS downloaded to
335 render the page (in HAR format using
336 <a href=
"https://github.com/ariya/phantomjs/blob/master/examples/netsniff.js">their
337 netsniff example
</a>. I am very grateful to Gorm for showing me how
338 to do this). My goal is to visualize network traces to all IP
339 addresses behind these DNS names, do show where visitors personal
340 information is spread when visiting the page.
</p>
342 <p align=
"center"><a href=
"www.stortinget.no-geoip.kml"><img
343 src=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geoip-small.png" alt=
"map of combined traces for URLs used by www.stortinget.no using GeoIP"/></a></p>
345 <p>When I had a look around for options, I could not find any good
346 free software tools to do this, and decided I needed my own traceroute
347 wrapper outputting KML based on locations looked up using GeoIP. KML
348 is easy to work with and easy to generate, and understood by several
349 of the GIS tools I have available. I got good help from by NUUG
350 colleague Anders Einar with this, and the result can be seen in
351 <a href=
"https://github.com/petterreinholdtsen/kmltraceroute">my
352 kmltraceroute git repository
</a>. Unfortunately, the quality of the
353 free GeoIP databases I could find (and the for-pay databases my
354 friends had access to) is not up to the task. The IP addresses of
355 central Internet infrastructure would typically be placed near the
356 controlling companies main office, and not where the router is really
357 located, as you can see from
<a href=
"www.stortinget.no-geoip.kml">the
358 KML file I created
</a> using the GeoLite City dataset from MaxMind.
360 <p align=
"center"><a href=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-scapy.svg"><img
361 src=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-scapy-small.png" alt=
"scapy traceroute graph for URLs used by www.stortinget.no"/></a></p>
363 <p>I also had a look at the visual traceroute graph created by
364 <a href=
"http://www.secdev.org/projects/scapy/">the scrapy project
</a>,
365 showing IP network ownership (aka AS owner) for the IP address in
367 <a href=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-scapy.svg">The
368 graph display a lot of useful information about the traceroute in SVG
369 format
</a>, and give a good indication on who control the network
370 equipment involved, but it do not include geolocation. This graph
371 make it possible to see the information is made available at least for
372 UNINETT, Catchcom, Stortinget, Nordunet, Google, Amazon, Telia, Level
373 3 Communications and NetDNA.
</p>
375 <p align=
"center"><a href=
"https://geotraceroute.com/index.php?node=4&host=www.stortinget.no"><img
376 src=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geotraceroute-small.png" alt=
"example geotraceroute view for www.stortinget.no"/></a></p>
378 <p>In the process, I came across the
379 <a href=
"https://geotraceroute.com/">web service GeoTraceroute
</a> by
380 Salim Gasmi. Its methology of combining guesses based on DNS names,
381 various location databases and finally use latecy times to rule out
382 candidate locations seemed to do a very good job of guessing correct
383 geolocation. But it could only do one trace at the time, did not have
384 a sensor in Norway and did not make the geolocations easily available
385 for postprocessing. So I contacted the developer and asked if he
386 would be willing to share the code (he refused until he had time to
387 clean it up), but he was interested in providing the geolocations in a
388 machine readable format, and willing to set up a sensor in Norway. So
389 since yesterday, it is possible to run traces from Norway in this
390 service thanks to a sensor node set up by
391 <a href=
"https://www.nuug.no/">the NUUG assosiation
</a>, and get the
392 trace in KML format for further processing.
</p>
394 <p align=
"center"><a href=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geotraceroute-kml-join.kml"><img
395 src=
"http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geotraceroute-kml-join.png" alt=
"map of combined traces for URLs used by www.stortinget.no using geotraceroute"/></a></p>
397 <p>Here we can see a lot of trafic passes Sweden on its way to
398 Denmark, Germany, Holland and Ireland. Plenty of places where the
399 Snowden confirmations verified the traffic is read by various actors
400 without your best interest as their top priority.
</p>
402 <p>Combining KML files is trivial using a text editor, so I could loop
403 over all the hosts behind the urls imported by www.stortinget.no and
404 ask for the KML file from GeoTraceroute, and create a combined KML
405 file with all the traces (unfortunately only one of the IP addresses
406 behind the DNS name is traced this time. To get them all, one would
407 have to request traces using IP number instead of DNS names from
408 GeoTraceroute). That might be the next step in this project.
</p>
410 <p>Armed with these tools, I find it a lot easier to figure out where
411 the IP traffic moves and who control the boxes involved in moving it.
412 And every time the link crosses for example the Swedish border, we can
413 be sure Swedish Signal Intelligence (FRA) is listening, as GCHQ do in
414 Britain and NSA in USA and cables around the globe. (Hm, what should
415 we tell them? :) Keep that in mind if you ever send anything
416 unencrypted over the Internet.
</p>
418 <p>PS: KML files are drawn using
419 <a href=
"http://ivanrublev.me/kml/">the KML viewer from Ivan
420 Rublev
<a/>, as it was less cluttered than the local Linux application
421 Marble. There are heaps of other options too.
</p>
423 <p>As usual, if you use Bitcoin and want to show your support of my
424 activities, please send Bitcoin donations to my address
425 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
430 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/web">web
</a>.
435 <div class=
"padding"></div>
438 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Introducing_ical_archiver_to_split_out_old_iCalendar_entries.html">Introducing ical-archiver to split out old iCalendar entries
</a></div>
439 <div class=
"date"> 4th January
2017</div>
440 <div class=
"body"><p>Do you have a large
<a href=
"https://icalendar.org/">iCalendar
</a>
441 file with lots of old entries, and would like to archive them to save
442 space and resources? At least those of us using KOrganizer know that
443 turning on and off an event set become slower and slower the more
444 entries are in the set. While working on migrating our calendars to a
445 <a href=
"http://radicale.org/">Radicale CalDAV server
</a> on our
446 <a href=
"https://freedomboxfoundation.org/">Freedombox server
</a/>, my
447 loved one wondered if I could find a way to split up the calendar file
448 she had in KOrganizer, and I set out to write a tool. I spent a few
449 days writing and polishing the system, and it is now ready for general
451 <a href=
"https://github.com/petterreinholdtsen/ical-archiver">code for
452 ical-archiver
</a> is publicly available from a git repository on
453 github. The system is written in Python and depend on
454 <a href=
"http://eventable.github.io/vobject/">the vobject Python
457 <p>To use it, locate the iCalendar file you want to operate on and
458 give it as an argument to the ical-archiver script. This will
459 generate a set of new files, one file per component type per year for
460 all components expiring more than two years in the past. The vevent,
461 vtodo and vjournal entries are handled by the script. The remaining
462 entries are stored in a 'remaining' file.
</p>
464 <p>This is what a test run can look like:
467 % ical-archiver t/
2004-
2016.ics
471 Writing t/
2004-
2016.ics-subset-vevent-
2004.ics
472 Writing t/
2004-
2016.ics-subset-vevent-
2005.ics
473 Writing t/
2004-
2016.ics-subset-vevent-
2006.ics
474 Writing t/
2004-
2016.ics-subset-vevent-
2007.ics
475 Writing t/
2004-
2016.ics-subset-vevent-
2008.ics
476 Writing t/
2004-
2016.ics-subset-vevent-
2009.ics
477 Writing t/
2004-
2016.ics-subset-vevent-
2010.ics
478 Writing t/
2004-
2016.ics-subset-vevent-
2011.ics
479 Writing t/
2004-
2016.ics-subset-vevent-
2012.ics
480 Writing t/
2004-
2016.ics-subset-vevent-
2013.ics
481 Writing t/
2004-
2016.ics-subset-vevent-
2014.ics
482 Writing t/
2004-
2016.ics-subset-vjournal-
2007.ics
483 Writing t/
2004-
2016.ics-subset-vjournal-
2011.ics
484 Writing t/
2004-
2016.ics-subset-vtodo-
2012.ics
485 Writing t/
2004-
2016.ics-remaining.ics
489 <p>As you can see, the original file is untouched and new files are
490 written with names derived from the original file. If you are happy
491 with their content, the *-remaining.ics file can replace the original
492 the the others can be archived or imported as historical calendar
495 <p>The script should probably be improved a bit. The error handling
496 when discovering broken entries is not good, and I am not sure yet if
497 it make sense to split different entry types into separate files or
498 not. The program is thus likely to change. If you find it
499 interesting, please get in touch. :)
</p>
501 <p>As usual, if you use Bitcoin and want to show your support of my
502 activities, please send Bitcoin donations to my address
503 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
508 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard
</a>.
513 <div class=
"padding"></div>
516 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html">Appstream just learned how to map hardware to packages too!
</a></div>
517 <div class=
"date">23rd December
2016</div>
518 <div class=
"body"><p>I received a very nice Christmas present today. As my regular
519 readers probably know, I have been working on the
520 <a href=
"http://packages.qa.debian.org/isenkram">the Isenkram
521 system
</a> for many years. The goal of the Isenkram system is to make
522 it easier for users to figure out what to install to get a given piece
523 of hardware to work in Debian, and a key part of this system is a way
524 to map hardware to packages. Isenkram have its own mapping database,
525 and also uses data provided by each package using the AppStream
526 metadata format. And today,
527 <a href=
"https://tracker.debian.org/pkg/appstream">AppStream
</a> in
528 Debian learned to look up hardware the same way Isenkram is doing it,
529 ie using fnmatch():
</p>
532 % appstreamcli what-provides modalias \
533 usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00
534 Identifier: pymissile [generic]
536 Summary: Control original Striker USB Missile Launcher
538 % appstreamcli what-provides modalias usb:v0694p0002d0000
539 Identifier: libnxt [generic]
541 Summary: utility library for talking to the LEGO Mindstorms NXT brick
544 Identifier: t2n [generic]
546 Summary: Simple command-line tool for Lego NXT
549 Identifier: python-nxt [generic]
551 Summary: Python driver/interface/wrapper for the Lego Mindstorms NXT robot
554 Identifier: nbc [generic]
556 Summary: C compiler for LEGO Mindstorms NXT bricks
561 <p>A similar query can be done using the combined AppStream and
562 Isenkram databases using the isenkram-lookup tool:
</p>
565 % isenkram-lookup usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00
567 % isenkram-lookup usb:v0694p0002d0000
575 <p>You can find modalias values relevant for your machine using
576 <tt>cat $(find /sys/devices/ -name modalias)
</tt>.
578 <p>If you want to make this system a success and help Debian users
579 make the most of the hardware they have, please
580 help
<a href=
"https://wiki.debian.org/AppStream/Guidelines">add
581 AppStream metadata for your package following the guidelines
</a>
582 documented in the wiki. So far only
11 packages provide such
583 information, among the several hundred hardware specific packages in
584 Debian. The Isenkram database on the other hand contain
101 packages,
585 mostly related to USB dongles. Most of the packages with hardware
586 mapping in AppStream are LEGO Mindstorms related, because I have, as
587 part of my involvement in
588 <a href=
"https://wiki.debian.org/LegoDesigners">the Debian LEGO
589 team
</a> given priority to making sure LEGO users get proposed the
590 complete set of packages in Debian for that particular hardware. The
591 team also got a nice Christmas present today. The
592 <a href=
"https://tracker.debian.org/pkg/nxt-firmware">nxt-firmware
593 package
</a> made it into Debian. With this package in place, it is
594 now possible to use the LEGO Mindstorms NXT unit with only free
595 software, as the nxt-firmware package contain the source and firmware
596 binaries for the NXT brick.
</p>
598 <p>As usual, if you use Bitcoin and want to show your support of my
599 activities, please send Bitcoin donations to my address
600 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
605 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram
</a>.
610 <div class=
"padding"></div>
613 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Isenkram_updated_with_a_lot_more_hardware_package_mappings.html">Isenkram updated with a lot more hardware-package mappings
</a></div>
614 <div class=
"date">20th December
2016</div>
615 <div class=
"body"><p><a href=
"http://packages.qa.debian.org/isenkram">The Isenkram
616 system
</a> I wrote two years ago to make it easier in Debian to find
617 and install packages to get your hardware dongles to work, is still
618 going strong. It is a system to look up the hardware present on or
619 connected to the current system, and map the hardware to Debian
620 packages. It can either be done using the tools in isenkram-cli or
621 using the user space daemon in the isenkram package. The latter will
622 notify you, when inserting new hardware, about what packages to
623 install to get the dongle working. It will even provide a button to
624 click on to ask packagekit to install the packages.
</p>
626 <p>Here is an command line example from my Thinkpad laptop:
</p>
647 <p>It can also list the firware package providing firmware requested
648 by the load kernel modules, which in my case is an empty list because
649 I have all the firmware my machine need:
652 % /usr/sbin/isenkram-autoinstall-firmware -l
653 info: did not find any firmware files requested by loaded kernel modules. exiting
657 <p>The last few days I had a look at several of the around
250
658 packages in Debian with udev rules. These seem like good candidates
659 to install when a given hardware dongle is inserted, and I found
660 several that should be proposed by isenkram. I have not had time to
661 check all of them, but am happy to report that now there are
97
662 packages packages mapped to hardware by Isenkram.
11 of these
663 packages provide hardware mapping using AppStream, while the rest are
664 listed in the modaliases file provided in isenkram.
</p>
666 <p>These are the packages with hardware mappings at the moment. The
667 <strong>marked packages
</strong> are also announcing their hardware
668 support using AppStream, for everyone to use:
</p>
670 <p>air-quality-sensor, alsa-firmware-loaders, argyll,
671 <strong>array-info
</strong>, avarice, avrdude, b43-fwcutter,
672 bit-babbler, bluez, bluez-firmware,
<strong>brltty
</strong>,
673 <strong>broadcom-sta-dkms
</strong>, calibre, cgminer, cheese, colord,
674 <strong>colorhug-client
</strong>, dahdi-firmware-nonfree, dahdi-linux,
675 dfu-util, dolphin-emu, ekeyd, ethtool, firmware-ipw2x00, fprintd,
676 fprintd-demo,
<strong>galileo
</strong>, gkrellm-thinkbat, gphoto2,
677 gpsbabel, gpsbabel-gui, gpsman, gpstrans, gqrx-sdr, gr-fcdproplus,
678 gr-osmosdr, gtkpod, hackrf, hdapsd, hdmi2usb-udev, hpijs-ppds, hplip,
679 ipw3945-source, ipw3945d, kde-config-tablet, kinect-audio-setup,
680 <strong>libnxt
</strong>, libpam-fprintd,
<strong>lomoco
</strong>,
681 madwimax, minidisc-utils, mkgmap, msi-keyboard, mtkbabel,
682 <strong>nbc
</strong>,
<strong>nqc
</strong>, nut-hal-drivers, ola,
683 open-vm-toolbox, open-vm-tools, openambit, pcgminer, pcmciautils,
684 pcscd, pidgin-blinklight, printer-driver-splix,
685 <strong>pymissile
</strong>, python-nxt, qlandkartegt,
686 qlandkartegt-garmin, rosegarden, rt2x00-source, sispmctl,
687 soapysdr-module-hackrf, solaar, squeak-plugins-scratch, sunxi-tools,
688 <strong>t2n
</strong>, thinkfan, thinkfinger-tools, tlp, tp-smapi-dkms,
689 tp-smapi-source, tpb, tucnak, uhd-host, usbmuxd, viking,
690 virtualbox-ose-guest-x11, w1retap, xawtv, xserver-xorg-input-vmmouse,
691 xserver-xorg-input-wacom, xserver-xorg-video-qxl,
692 xserver-xorg-video-vmware, yubikey-personalization and
695 <p>If you know of other packages, please let me know with a wishlist
696 bug report against the isenkram-cli package, and ask the package
698 <a href=
"https://wiki.debian.org/AppStream/Guidelines">add AppStream
699 metadata according to the guidelines
</a> to provide the information
700 for everyone. In time, I hope to get rid of the isenkram specific
701 hardware mapping and depend exclusively on AppStream.
</p>
703 <p>Note, the AppStream metadata for broadcom-sta-dkms is matching too
704 much hardware, and suggest that the package with with any ethernet
705 card. See
<a href=
"http://bugs.debian.org/838735">bug #
838735</a> for
706 the details. I hope the maintainer find time to address it soon. In
707 the mean time I provide an override in isenkram.
</p>
712 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram
</a>.
717 <div class=
"padding"></div>
720 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Oolite__a_life_in_space_as_vagabond_and_mercenary___nice_free_software.html">Oolite, a life in space as vagabond and mercenary - nice free software
</a></div>
721 <div class=
"date">11th December
2016</div>
722 <div class=
"body"><p align=
"center"><img width=
"70%" src=
"http://people.skolelinux.org/pere/blog/images/2016-12-11-nice-oolite.png"/></p>
724 <p>In my early years, I played
725 <a href=
"http://wiki.alioth.net/index.php/Classic_Elite">the epic game
726 Elite
</a> on my PC. I spent many months trading and fighting in
727 space, and reached the 'elite' fighting status before I moved on. The
728 original Elite game was available on Commodore
64 and the IBM PC
729 edition I played had a
64 KB executable. I am still impressed today
730 that the authors managed to squeeze both a
3D engine and details about
731 more than
2000 planet systems across
7 galaxies into a binary so
734 <p>I have known about
<a href=
"http://www.oolite.org/">the free
735 software game Oolite inspired by Elite
</a> for a while, but did not
736 really have time to test it properly until a few days ago. It was
737 great to discover that my old knowledge about trading routes were
738 still valid. But my fighting and flying abilities were gone, so I had
739 to retrain to be able to dock on a space station. And I am still not
740 able to make much resistance when I am attacked by pirates, so I
741 bougth and mounted the most powerful laser in the rear to be able to
742 put up at least some resistance while fleeing for my life. :)
</p>
744 <p>When playing Elite in the late eighties, I had to discover
745 everything on my own, and I had long lists of prices seen on different
746 planets to be able to decide where to trade what. This time I had the
748 <a href=
"http://wiki.alioth.net/index.php/Main_Page">Elite wiki
</a>,
749 where information about each planet is easily available with common
750 price ranges and suggested trading routes. This improved my ability
751 to earn money and I have been able to earn enough to buy a lot of
752 useful equipent in a few days. I believe I originally played for
753 months before I could get a docking computer, while now I could get it
754 after less then a week.
</p>
756 <p>If you like science fiction and dreamed of a life as a vagabond in
757 space, you should try out Oolite. It is available for Linux, MacOSX
758 and Windows, and is included in Debian and derivatives since
2011.
</p>
760 <p>As usual, if you use Bitcoin and want to show your support of my
761 activities, please send Bitcoin donations to my address
762 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
767 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software
</a>.
772 <div class=
"padding"></div>
775 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Er_lover_brutt_n_r_personvernpolicy_ikke_stemmer_med_praksis_.html">Er lover brutt når personvernpolicy ikke stemmer med praksis?
</a></div>
776 <div class=
"date"> 9th December
2016</div>
777 <div class=
"body"><p>Når jeg bruker
<a href=
"https://www.ghostery.com/">Ghostery
</a>,
778 <a href=
"https://www.ublock.org/">uBlock
</a>,
779 <a href=
"https://github.com/gorhill/uMatrix">uMatrix
</a>,
780 <a href=
"https://github.com/andryou/scriptsafe">ScriptSafe
</a> og andre
781 nettleserverktøy (de passer på hverandre) for å holde styr på hvordan
782 nettsteder sprer informasjon om hvilke nettsider jeg leser blir det
783 veldig synlig hvilke nettsteder som er satt opp til å utveksle
784 informasjon med utlandet og tredjeparter. For en stund siden la jeg
785 merke til at det virker å være avvik mellom personvernpolicy og
786 praksis endel steder, og tok tak i et par konkrete eksempler og sendte
787 spørsmål til Datatilsynets kontaktpunkt for veiledning:
</p>
791 <p>«Jeg har et spørsmål når det gjelder bruken av Google Analytics og
792 personvernpolicy. Er det lovlig for et nettsted å si en ting i
793 personvernpolicy og gjøre noe annet i virkeligheten? Spesifikt lurer
794 jeg på hvilket lov som er brutt hvis nettstedet i HTML-koden til
795 nettsidene ber lesernes nettleser om å kontakte Google Analytics og
796 slik overleverer sitt IP-nummer til Google, samtidig som
797 personvernpolicien hevder at Google Analytics kun får anonymiserte
798 data. Google får jo i slike tilfeller alltid overført fullt
799 IP-nummer, og nettstedet kan i URL-en som brukes be Google om å ikke
800 lagre deler av IP-adressen (omtalt som anonymisering av Google
803 <p>Et eksempel er Nettavisen digi.no.
804 <a href=
"http://www.digi.no/artikler/personvernpolicy/208772">Deres
805 personvernpolicy
</a> sier følgende:
</p>
808 «Tredjeparter (som Google Analytics, Cxense, TNS Gallup) får kun
812 <p>Men når en leser artikler der så blir maskiner i Norge, USA,
813 Tyskland, Danmark, Storbritannia, Irland og Nederland varslet om
814 besøket og får dermed overlevert full IP-adresse, som datatilsynet har
815 uttalt er en personopplysning. Nettsidene er satt opp til be
816 nettleseren å kontakte
29 ulike maskiner rundt om i verden. Fire av
817 dem er er under DNS-domenene digi.no og tek.no som tilhører samme
818 eier. I tillegg ber nettsidene ikke
819 <a href=
"https://support.google.com/analytics/answer/2763052?hl=no">Google
820 Analytics om å fjerne siste oktett i IP-adressen ved lagring
</a>,
821 dvs. flagget «aip=
1» er ikke satt i URL-en som brukes for å kontakte
822 Google Analytics.
</p>
824 <p>Tilsvarende er også tilfelle for andre nettsteder, så digi.no er
825 ikke spesiell i så måte (dagbladet.no er et annet eksempel, det
830 <p>Etter noen dager kunne juridisk rådgiver Elisabeth Krauss Amundsen
831 hos Datatilsynet fortelle det følgende:
</p>
834 «Hei, og takk for din e-post.
</p>
836 <p>Vår svartjeneste gir deg kortfattet rådgivning. Vi vil derfor ikke konkludere
837 i saken din, men gi deg råd og veiledning.
</p>
839 <p>Ut ifra det du skriver er det antakelig flere bestemmelser i
840 personopplysingsloven som brytes dersom virksomhetens personvernpolicy
841 sier noe annet om behandlingen av personopplysninger enn det som
842 faktisk skjer. Antakelig vil det være et brudd på informasjonsplikten
843 i personopplysingsloven §§
18 og
844 19<<a href=
"https://lovdata.no/dokument/NL/lov/2000-04-14-31/KAPITTEL_2#§18">https://lovdata.no/dokument/NL/lov/
2000-
04-
14-
31/KAPITTEL_2#§
18</a>>
845 dersom det gis feilinformasjon om at opplysningene utleveres. Det kan
846 også stilles spørsmål om grunnkravene for behandling av
847 personopplysninger vil være oppfylt ved en utlevering av
848 personopplysninger til en tredjepart, dersom dette ikke er inkludert
849 behandlingsgrunnlaget og formålet med behandlingen, se
850 personopplysingsloven §
11, jf.
851 8.
<<a href=
"https://lovdata.no/dokument/NL/lov/2000-04-14-31/KAPITTEL_2#§11">https://lovdata.no/dokument/NL/lov/
2000-
04-
14-
31/KAPITTEL_2#§
11</a>>»
854 <!-- Her er full URL som digi ba nettleserne bruke for å melde fra til
856 https://www.google-analytics.com/r/collect?v=1&_v=j47&a=666919305&t=pageview&_s=1&dl=http%3A%2F%2Fwww.digi.no%2F&ul=nb-no&de=UTF-8&dt=Digi.no%20-%20IT-bransjens%20nettavis&sd=32-bit&sr=1024x768&vp=400x300&je=0&_u=AEAAAMQAK~&jid=592247632&cid=1641512195.1480086725&tid=UA-54426-28&_r=1&z=328520576
859 <p>Oppdatert med kunnskap om lover og regler tok jeg så kontakt med
860 Dagbladet på epostadressen de annonserer på sine
861 personvernpolicysider:
<p>
865 <p>«Jeg lurte litt i forbindelse med en bloggpost jeg skriver på, og lurer
866 på om dere hjelpe meg med å finne ut av følgende. Først litt
867 bakgrunnsinformasjon.
868 <a href=
"http://www.dagbladet.no/2009/08/18/nyheter/avtale/brukeravtale/plikter/7706966/">Dagbladets
869 personvernpolicy
</a> forteller følgende:
</p>
872 <p>«
3. Automatisk innhentet informasjon
</p>
874 <p>For eksempel IP-adressen din (ikke synlig for andre) samt
875 statistisk, automatisk produsert informasjon, som når du sist var
876 innlogget på tjenesten. Dette er informasjon vi samler for å gjøre
877 tjenesten best mulig.»
</p>
882 <p>Men når en besøker nettsidene til Dagbladet,
883 f.eks.
<a href=
"http://dagbladet.no/">forsiden
</a>, så er nettsidene
884 satt opp til å kontakte mange tredjeparter som slik får tilgang til
885 både fullt IP-nummer og i de fleste tilfeller nøyaktig hvilken
886 artikkel en leser hos Dagbladet ved at Referer-feltet fylles og legges
887 ved. Dette gjelder Google Analytics, Cxense, INS Gallup, Doubleclick
888 med flere. Totalt ber forsiden nettleseren om å koble seg opp til
60
889 nettsteder med
149 separate oppkoblinger. I hver av disse
890 oppkoblingene oversendes IP-adressen til leseren, og i følge
892 «
<a href=
"https://www.datatilsynet.no/Teknologi/Internett/Webanalyse/">en
893 IP-adresse definert som en personopplysning fordi den kan spores
894 tilbake til en bestemt maskinvare og dermed til en enkeltperson
</a>».
</p>
896 <p>Datatilsynet har fortalt meg at i følge personopplysingsloven §§
18
897 og
19 skal informasjonen som gis om bruk og utlevering av
898 personopplysninger være korrekt. De forteller videre at det er endel
899 grunnkrav som må være oppfylt ved utlevering av personopplysninger til
900 tredjeparter, nærmere forklart i personopplysingsloven §
11 som
901 henviser til §
8.
</p>
903 <p>Mitt spørsmål er dermed som følger:
</p>
907 <p>Hva mener dere i personpolicyen når dere skriver at IP-adressen ikke
908 er synlig for andre?»
</p>
914 <p>Etter en uke har jeg fortsatt ikke fått svar fra Dagbladet på mitt
915 spørsmål, så neste steg er antagelig å høre om Datatilsynet er
916 interessert i å se på saken.
</p>
918 <p>Men Dagbladet er ikke det eneste nettstedet som forteller at de
919 ikke deler personopplysninger med andre mens observerbar praksis
920 dokumenterer noe annet. Jeg sendte derfor også et spørsmål til
921 kontaktadressen til nettavisen Digi.no, og der var responsen mye
926 <p>«Jeg lurte på en ting i forbindelse med en bloggpost jeg skriver på,
927 og lurer på om dere hjelpe meg. Først litt bakgrunnsinformasjon.
928 <a href=
"http://www.digi.no/artikler/personvernpolicy/208772">Digi.nos
929 personvernpolicy
</a> forteller følgende:
</p>
932 «All personlig informasjon blir lagret i våre systemer, disse er ikke
933 tilgjengelig for tredjeparter, og blir ikke lagret i
934 informasjonskapsler. Tredjeparter (som Google Analytics, Cxense,
935 TNS Gallup) får kun anonymiserte data.»
938 <p>Men når en besøker nettsidene til nettavisen, f.eks.
939 <a href=
"http://www.digi.no/">forsiden
</a>, så er nettsidene satt opp
940 til å kontakte mange tredjeparter som slik får tilgang til både fullt
941 IP-nummer og i de fleste tilfeller nøyaktig hvilken artikkel en leser
942 hos Digi.no ved at Referer-feltet fylles og legges ved. Dette gjelder
943 både Google Analytics, Cxense blant og INS Gallum. Totalt ber
944 forsiden nettleseren om å koble seg opp til
29 nettsteder med
44
945 separate oppkoblinger. I hver av disse oppkoblingene sendes
946 IP-adressen til leseren over, og i følge Datatilsynet er
947 «
<a href=
"https://www.datatilsynet.no/Teknologi/Internett/Webanalyse/">en
948 IP-adresse definert som en personopplysning fordi den kan spores
949 tilbake til en bestemt maskinvare og dermed til en enkeltperson
</a>».
950 Det jeg ser virker ikke å være i tråd med personvernpolicyen.
</p>
952 <p>Når en besøker Digi.nos nettsider gjøres det to oppkoblinger til
953 Google Analytics, en for å hente ned programkoden som samler
954 informasjon fra nettleseren og sender over til Google (analytics.js),
955 og en for å overføre det som ble samlet inn. I den siste oppkoblingen
956 er det mulig å be Google om å ikke ta vare på hele IP-adressen, men i
957 stedet fjerne siste oktett i IP-adressen. Dette omtales ofte litt
958 misvisende for «anonymisert» bruk av Google Analytics, i og med at
959 fullt IP-nummer blir sendt til Google og det er opp til Google om de
960 vil bry seg om ønsket fra de som har laget nettsiden. Ut fra det som
961 står i personvernpolicyen ville jeg tro at Digi.no ba google om å ikke
962 ta vare på hele IP-nummeret, men når en ser på den andre oppkoblingen
963 kan en se at flagget «aio=
1» ikke er satt, og at Digi.no ikke ber
964 Google om å la være å lagre hele IP-adressen. Dette virker heller
965 ikke å være i tråd med personvernpolicyen.
</p>
967 <p>Datatilsynet har fortalt meg at i følge personopplysingsloven §§
18
968 og
19 skal informasjonen som gis om bruk og utlevering av
969 personopplysninger være korrekt. De forteller videre at det er endel
970 grunnkrav som må være oppfylt ved utlevering av personopplysninger til
971 tredjeparter, nærmere forklart i personopplysingsloven §
11 som
972 henviser til §
8. Det er uklart for meg om disse kravene er oppfylt
973 når IP-adresse og informasjon om hvilke websider som besøkes til
976 <p>Mitt spørsmål er dermed som følger:
</p>
980 <p>Hva mener dere i personpolicyen når dere skriver at «Tredjeparter
981 får kun anonymiserte data»?»
</p>
987 <p>Redaksjonssjef Kurt Lekanger svarte samme dag og forklarte at han
988 måtte komme tilbake til meg når han hadde med utviklingsavdelingen.
989 Seks dager senere lurte jeg på hva han fant ut, og etter noen timer
990 fikk jeg så følgende svar fra direktøren for teknologi og
991 forretningsutvikling Øystein W. Høie i Teknisk Ukeblad Media:
</p>
995 <p>«Takk for godt tips! Det er helt riktig at IP og referrer-adresse
996 potensielt kan leses ut av tredjepart.
</p>
998 <p>Retningslinjene våre har vært uklare på dette tidspunktet, og vi
999 oppdaterer nå disse så dette kommer tydeligere frem. Ny tekst blir som
1003 <p>3. Dette bruker vi ikke informasjonen til Informasjon du oppgir til
1004 oss blir lagret i våre systemer, er ikke tilgjengelig for
1005 tredjeparter, og blir ikke lagret i informasjonskapsler.
1006 Informasjonen vil kun benyttes til å gi deg som bruker mer relevant
1007 informasjon og bedre tjenester.
</p>
1009 <p>Tredjeparter (som Google Analytics, Cxense, TNS Gallup) vil kunne
1010 hente ut IP-adresse og data basert på dine surfemønstre. TU Media AS
1011 er pliktig å påse at disse tredjepartene behandler data i tråd med
1012 norsk regelverk.
</p>
1015 <p>Ellers har vi nå aktivert anonymisering i Google Analytics
1016 (aip=
1). Kan også nevne at Tek.no-brukere som har kjøpt Tek Ekstra har
1017 mulighet til å skru av all tracking i kontrollpanelet sitt. Dette er
1018 noe vi vurderer å rulle ut på alle sidene i vårt nettverk.»
</p>
1022 <p>Det var nyttig å vite at vi er enige om at formuleringen i
1023 personvernpolicyen er misvisende. Derimot var det nedslående at i
1024 stedet for å endre praksis for å følge det personvernpolicyen sier om
1025 å ikke dele personinformasjon med tredjeparter, så velger Digi.no å
1026 fortsette praksis og i stedet endre personvernpolicyen slik at den å
1027 dokumentere dagens praksis med spredning av personopplysninger.
</p>
1029 <p>Med bakgrunn i at Digi.no ikke har fulgt sin egen personvernpolicy
1030 spurte jeg hvordan Digi.no kom til å håndtere endringen:
</p>
1034 <p>«Tusen takk for beskjed om endring av personvernpolicy for digi.no.
1035 Gjelder endringen også andre nettsteder?
</p>
1037 <p>Vil tidligere håndteringen av IP-adresser og lesemønster i strid
1038 med dokumentert personvernpolicy bli varslet til Datatilsynet i tråd
1040 <a href=
"https://lovdata.no/forskrift/2000-12-15-1265/§2-6">personopplysningsforskriften
1041 §
2-
6</a>? Vil leserne bli varslet på en prominent og synlig måte om
1042 at lesernes IP-adresser og lesemønster har vært utlevert til
1043 tredjeparter i stid med tidligere formulering om at tredjeparter kun
1044 får anonymiserte data, og at utleveringen fortsetter etter at
1045 personvernpolicy er endret for å dokumentere praksis?
</p>
1047 <p>Appropos ekstra tilbud til betalende lesere, tilbyr dere en
1048 mulighet for å betale for å lese som ikke innebærer at en må gjøre det
1049 mulig å la sine lesevaner blir registeret av tek.no? Betaler gjerne
1050 for å lese nyheter, men ikke med en bit av privatlivet mitt. :)»
</p>
1053 <p>Jeg fikk raskt svar tilbake fra direktøren Høie:
</p>
1056 <p>«Tydeliggjøringen i personvernpolicy gjelder alle våre nettsteder.
</p>
1058 <p>Vi kommer til å ta en runde og gå over vår policy i forbindelse med
1059 dette, og vil i de tilfeller det er påkrevd selvsagt være tydelig
1060 overfor brukere og tilsyn. Vil samtidig understreke at vår bruk av
1061 tredjeparts analyseverktøy og annonsetracking er helt på linje med det
1062 som er normalt for norske kommersielle nettsteder.
</p>
1064 <p>Angående spørsmålet ditt:
1065 <br>Du vil fortsatt vises i våre interne systemer om du blir Ekstra-bruker,
1066 vi skrur bare av tredjeparts tracking.»
</p>
1069 <p>Det høres jo ikke bra ut at det er normalt for norske kommersielle
1070 nettsteder å utlevere lesernes personopplysninger til utlandet. Men
1071 som en kan lese fra
<a href=
"https://www.nrk.no/norge/kommunen-deler-informasjon-om-deg-med-facebook-og-google-1.13248945">gårdagens oppslag fra NRK
</a> gjelder
1072 det også norske kommuner og andre offentlige aktører, og
1073 <a href=
"http://people.skolelinux.org/pere/blog/Snurpenot_overv_kning_av_sensitiv_personinformasjon.html">jeg
1074 skrev om omfanget av problemet i fjor
</a>. Det er uansett ikke en
1075 praksis jeg tror er i tråd med kravene i personopplysningsloven, og
1076 heller ikke en praksis jeg som leser synes er greit. Jeg manglet dog
1077 fortsatt svar på om Digi.no kom til å varsle lesere og Datatilsynet om
1078 avviket mellom praksis og policy, så jeg forsøkte meg med en ny epost
1083 <p>«Kan du fortelle meg om dere anser det å være påkrevd å varsle
1084 tilsyn og brukere nå, når dere har oppdaget at praksis ikke har vært i
1085 tråd med personvernpolicy?»
</p>
1089 <p>Det spørsmålet vet jeg så langt ikke svaret på, men antagelig kan
1090 Datatilsynet svare på om det er påkrevd å varsle tilsyn og lesere om
1091 dette. Jeg planlegger å oppdatere denne bloggposten med svaret når
1094 <p>Jeg synes jo det er spesielt ille når barn får sine
1095 personopplysninger spredt til utlandet, noe jeg
1096 <a href=
"https://www.mimesbronn.no/request/opplysninger_samlet_inn_av_mobil">tok
1097 opp med NRK i fjor
</a>. De to eksemplene jeg nevner er som dere
1098 forstår ikke unike, men jeg har ikke full oversikt over hvor mange
1099 nettsteder dette gjelder. Jeg har ikke kapasitet til eller glede av å
1100 lese alle personvernpolicyer i landet. Kanskje mine lesere kan sende
1101 meg tips på epost om andre nettsteder med avvik mellom policy og
1102 praksis? Hvis vi alle går sammen og kontakter de ansvarlige, kanskje
1103 noen til slutt endrer praksis og slutter å dele lesernes
1104 personopplysninger med tredjeparter?
</p>
1106 <p>Apropos bruken av Google Analytics kan jeg forresten nevne at
1107 Universitetet i Oslo også har tatt i bruk Google Analytics, men der
1108 lagres programkoden som overføres til nettleserne lokalt og deler av
1109 IP-adressen fjernes lokalt på universitetet via en mellomtjener/proxy
1110 (
<a href=
"https://github.com/unioslo/ipproxy">tilgjengelig via
1111 github
</a>) før informasjon sendes over til Google Analytics. Dermed
1112 er det mulig for ansvarlige for nettstedet å
<em>vite
</em> at Google
1113 ikke har tilgang til komplett IP-adresse. Årsaken til at denne
1114 metoden brukes er at juristene ved universitetet har konkludert med at
1115 det er eneste måten en kunne vurdere å bruke Google Analytics uten å
1116 bryte loven. Risikoen for gjenidentifisering og
1117 <a href=
"https://panopticlick.eff.org/">identifisering ved hjelp av
1118 nettleserinformasjon
</a> er fortsatt tilstede, så det er ingen optimal
1119 løsning, men det er bedre enn å håpe at f.eks. Google og alle som
1120 lytter på veien skal prioritere norsk lov over sin lokale
1123 <p>Oppdatering
2016-
12-
09: Fikk svar fra direktøren Høie på mitt
1124 spørsmål litt etter at jeg hadde publisert denne artikkelen:
</p>
1128 <p>Vi kommer til å annonsere en oppdatert policy, og skal undersøke om
1129 vi er pliktig å varsle Datatilsynet.
</p>
1131 <p>Det vi uansett ønsker å gjøre først, er å gå gjennom hele policy
1132 sammen med utviklerne og advokat, så vi er sikre på at vi går frem
1133 riktig og at det ikke er flere tvetydigheter som skjuler seg i
1136 <p>Har du andre idéer eller konkrete innspill til hva som kan gjøre
1137 policy tydeligere, tar vi gjerne imot det. Dette er et felt vi ønsker
1138 å være ryddige på.
</p>
1142 <p>Vi får se om de liker mine innspill, som i grunnen er å ikke pusse
1143 på personvernpolicyen men i stedet slutte å spre lesernes
1144 personopplysninger til eksterne aktører.
</p>
1149 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
1154 <div class=
"padding"></div>
1156 <p style=
"text-align: right;"><a href=
"index.rss"><img src=
"http://people.skolelinux.org/pere/blog/xml.gif" alt=
"RSS feed" width=
"36" height=
"14" /></a></p>
1167 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/01/">January (
4)
</a></li>
1169 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/02/">February (
2)
</a></li>
1176 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/01/">January (
3)
</a></li>
1178 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/02/">February (
2)
</a></li>
1180 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/03/">March (
3)
</a></li>
1182 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/04/">April (
8)
</a></li>
1184 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/05/">May (
8)
</a></li>
1186 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/06/">June (
2)
</a></li>
1188 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/07/">July (
2)
</a></li>
1190 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/08/">August (
5)
</a></li>
1192 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/09/">September (
2)
</a></li>
1194 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/10/">October (
3)
</a></li>
1196 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/11/">November (
8)
</a></li>
1198 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/12/">December (
5)
</a></li>
1205 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/01/">January (
7)
</a></li>
1207 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/02/">February (
6)
</a></li>
1209 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/03/">March (
1)
</a></li>
1211 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/04/">April (
4)
</a></li>
1213 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/05/">May (
3)
</a></li>
1215 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/06/">June (
4)
</a></li>
1217 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/07/">July (
6)
</a></li>
1219 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/08/">August (
2)
</a></li>
1221 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/09/">September (
2)
</a></li>
1223 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/10/">October (
9)
</a></li>
1225 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/11/">November (
6)
</a></li>
1227 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/12/">December (
3)
</a></li>
1234 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/01/">January (
2)
</a></li>
1236 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/02/">February (
3)
</a></li>
1238 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/03/">March (
8)
</a></li>
1240 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/04/">April (
7)
</a></li>
1242 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/05/">May (
1)
</a></li>
1244 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/06/">June (
2)
</a></li>
1246 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/07/">July (
2)
</a></li>
1248 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/08/">August (
2)
</a></li>
1250 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/09/">September (
5)
</a></li>
1252 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/10/">October (
6)
</a></li>
1254 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/11/">November (
3)
</a></li>
1256 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/12/">December (
5)
</a></li>
1263 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
11)
</a></li>
1265 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/02/">February (
9)
</a></li>
1267 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/03/">March (
9)
</a></li>
1269 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/04/">April (
6)
</a></li>
1271 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/05/">May (
9)
</a></li>
1273 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/06/">June (
10)
</a></li>
1275 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/07/">July (
7)
</a></li>
1277 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/08/">August (
3)
</a></li>
1279 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/09/">September (
5)
</a></li>
1281 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/10/">October (
7)
</a></li>
1283 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/11/">November (
9)
</a></li>
1285 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/12/">December (
3)
</a></li>
1292 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
1294 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
1296 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
1298 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
1300 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
1302 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
1304 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
1306 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
1308 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
1310 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
1312 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
1314 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
1321 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
1323 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
1325 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
1327 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
1329 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
1331 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
1333 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
1335 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
1337 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
1339 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
1341 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
1343 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
1350 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
1352 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
1354 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
1356 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
1358 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
1360 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
1362 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
1364 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
1366 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
1368 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
1370 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
1372 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
1379 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
1381 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
1383 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
1385 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
1387 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
1389 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
1391 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
1393 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
1395 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
1397 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
1399 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
1401 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
1408 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
1410 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
1421 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
1423 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
1425 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
1427 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
1429 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
9)
</a></li>
1431 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
16)
</a></li>
1433 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
1435 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (
2)
</a></li>
1437 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
145)
</a></li>
1439 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
158)
</a></li>
1441 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
10)
</a></li>
1443 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/dld">dld (
16)
</a></li>
1445 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
23)
</a></li>
1447 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
1449 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
340)
</a></li>
1451 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
23)
</a></li>
1453 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
1455 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
29)
</a></li>
1457 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (
9)
</a></li>
1459 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
18)
</a></li>
1461 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/h264">h264 (
20)
</a></li>
1463 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
42)
</a></li>
1465 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (
15)
</a></li>
1467 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
20)
</a></li>
1469 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
9)
</a></li>
1471 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
8)
</a></li>
1473 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (
2)
</a></li>
1475 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
1477 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (
8)
</a></li>
1479 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
39)
</a></li>
1481 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (
9)
</a></li>
1483 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
287)
</a></li>
1485 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
186)
</a></li>
1487 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
28)
</a></li>
1489 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
1491 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
64)
</a></li>
1493 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
99)
</a></li>
1495 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
1497 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reactos">reactos (
1)
</a></li>
1499 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
1501 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
3)
</a></li>
1503 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
10)
</a></li>
1505 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
1507 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
5)
</a></li>
1509 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
1511 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
52)
</a></li>
1513 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
1515 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
5)
</a></li>
1517 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
50)
</a></li>
1519 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
5)
</a></li>
1521 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
11)
</a></li>
1523 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
47)
</a></li>
1525 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
2)
</a></li>
1527 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/usenix">usenix (
2)
</a></li>
1529 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
8)
</a></li>
1531 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
59)
</a></li>
1533 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
1535 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
40)
</a></li>
1541 <p style=
"text-align: right">
1542 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.6
</a>