MAC-adressen en hash berekening

Naar aanleiding van mijn lezing heeft Stef die daar aanwezig was mij gevraagd of het mogelijk was om met Rainbow tabel of hashcat van de hash terug te rekenen naar originele MAC-adres. Ik was me wel bewust van deze mogelijkheden, maar had hierin geen ervaring en dus niet verder uitgezocht. Stef heeft dit uitgezocht en een blogartikel van gemaakt.

TL;DR dit zijn methoden die praktisch realiseerbaar zijn, niet een theoretische mogelijkheid. Om het daadwerkelijk uit te voeren zal wat geld kosten, maar dit zijn geen onmogelijke bedragen (denk aan bedragen van € 1000-2500). Eigenlijk ben ik wel een beetje verrast hoe bereikbaar deze aanvallen zijn.

Hashcat methode

Hashcat is een programma die met behulp van een GPU (grafische processor) in korte tijd heel veel berekening kan uitvoeren en veel wachtwoorden kan testen.

Stef heeft met behulp van hashcat laten uitrekenen om van een zelf berekende hash het MAC adres terug te vinden. Met de setup die hij heeft hij hier 12 minuten over gedaan waarbij ongeveer 50% van de mogelijkheden waren uitgeprobeerd. Stel dat de laatste poging de goede was zou deze naar verwachting 20 minuten over hebben gedaan.

Dit is echter niet met een snelle opstelling, als je met een moderne dure grafische kaart zou doen zoals bijvoorbeeld Nvidia RTX 3090 zou het resultaat naar verwachting 10x zo snel zijn. Dezelfde berekening zou dan iets langer dan een minuut zijn of om alle mogelijke combinaties uit te proberen maximaal 2 minuten.

Dus met hashcat kan je met de hash binnen 2 minuten het originele MAC-adres terugvinden. Grote aanname is wel dat hier dan de standaard SHA256 berekening gebruikt word, volgens de uitspraken van RMC gebruiken ze een op SHA256 gebaseerde methode (wat dat ook moge inhouden).

Rainbow table methode

Een Rainbow tabel is een soort database waarin je dan alle mogelijk MAC-adressen opslaat met bijbehorende hash berekening. Als je dan een hash adres hebt, kun je door in deze database makkelijk terug vinden welke MAC-adres hier dan bij hoort. Er zijn in dit voorbeeld voor de MAC-adressen 776818655232 mogelijkheden volgens de berekening van Stef, als je dit in een database zou opslaan (uitgaande van 12+9=23 bytes per record) = 18 Terrabyte aan opslag. Gelukkig kun je met wat slimme berekeningen een Rainbow tabel anders opslaan, dan zou je rond minder dan 1 Gb uitkomen. Tegenwoordig kun je een 18 TB HD schijf voor rond de € 750 kopen.

Technische onderbouwing snelheid :

Setup Stef : 512 NVIDIA CUDA 
Speed.#1………:   581.2 MH/s (7.02ms) @ Accel:8 Loops:128 Thr:512 Vec:1

Benchmark Nvidia RTX 3090
Hashmode: 1400 - SHA2-256
Speed.#1………:  9713.2 MH/s (70.57ms) @ Accel:16 Loops:512 Thr:1024 Vec:1

PS in zowel de hashcat als rainbow tabellen ben ik geen expert, deze conclusies heb ik getrokken op basis van eigen internet onderzoek. Als je hier een fout in ziet laat me het weten en ik zal het corrigeren.

MCH2022

Voor mch2022 (vier jaarlijkse hackercamping in Nederland) heb ik een lezing gegeven en heb ik een “TIC80 Byte jam” georganiseerd.

Samen met TDVenlo, Hackerspace Drenthe en Maakplek uit Groningen hadden we een eigen Village waar ook de nodige andere personen zich aansloten. We zaten met onze Village lekker centraal en waren dus een goede uitval basis.

Lezing over wifi tracking

Het wat wel spannend om de lezing in het Engels te doen voor een groot internationaal publiek te geven. Ik schat in dat er ongeveer 200 personen in de zaak waren en achteraf werden er goede vragen gesteld.

TIC80 Byte Jam

De Byte jam is het live programmeren van een visueel effect. Hiervoor kregen de deelnemers 40 minuten en de resultaten waren erg bijzonder en creatief. Ik deed hiervoor de organisatie, dus de mensen die meededen uitnodigen en regelen dat mensen die de techniek deden aanwezig waren.

Gemeente Enschede start rechtszaak tegen AP

Gemeente Enschede gaat rechtszaak aanspannen tegen Autoriteit persoonsgegevens ivm opgelegde boete. Dit zag ik al aankomen gezien de eerste reactie van de gemeente dat ze vol tegen de boete ingaan. Al ben ik verder geen partij in deze rechtszaak ben ik wel heel erg benieuwd hoe lang dit allemaal gaat duren voordat er een uitspraak ligt en wat het de Gemeente Enschede aan advocaat bijstand gaat kosten. Gemeente heeft nu al € 145.000 besteedt en het rechtsproces moet nog starten. Zou me niks verbazen als op einde van de rit de kosten van de advocaten hoger worden dan de oorspronkelijke boete.

De officiële aankondiging van de gemeente Enschede kun je op hun site vinden.

Een paar opmerkingen over het artikel (herhaling punten die ik al eerder heb aangehaald)

De AP staat op het standpunt dat het theoretisch wel mogelijk is om personen te identificeren aan de hand van de verzamelde data. De AP heeft op geen enkele wijze aangetoond hoe dit in de praktijk bij de passantentellingen in Enschede mogelijk was.

AP heeft leefpatronen van 3 personen uit de database kunnen halen. Indien de database echt anoniem zou zijn zou je deze rapporten niet kunnen maken.

Wethouder Jurgen van Houdt: “Laat ik één ding duidelijk stellen: Enschede heeft met de passantentellingen nooit bezoekers in onze binnenstad geïdentificeerd of gevolgd. Dat wilden wij niet. Dat konden wij ook niet. ….

Dat de gemeente het niet zo bedoeld heeft, ontslaat de gemeente niet om goed uit te zoeken of het geleverde product (wifitracking geleverd door City-traffic / RMC) daadwerkelijk privacy veilig is. En dit is meer dan op de blauwe ogen van de leverancier geloven dat het zo is, hier hoort ook een stukje eigen onderzoek bij. Indien de gemeente deze kennis niet in huis heeft zijn er genoeg partijen in Enschede (Universiteit en Saxion) die dit kan beoordelen.

Enschede kreeg tot op heden als enige gemeente een bestuurlijke boete opgelegd van de AP, zonder waarschuwingen en overleg vooraf.

Alle gemeenten in Nederland zou via VNG op 30 nov 2018 een brief van AP moeten hebben ontvangen dat wifi tracking alleen in uitzonderlijke omstandigheden zijn toegestaan. Hierbij moet je denken aan crowd control tijdens erg drukken evenementen. Dit is niet alle bewoners van Enschede 24/7 volgen. Bovendien heb ik vanaf het begin (5 september 2017) vragen gesteld en een officiële klacht ingediend over de privacy en gebruikte techniek.

Jurgen van Houdt : “Een rechterlijke uitspraak is namelijk van belang voor de ontwikkeling van toekomstige slimme digitale toepassingen. Niet alleen in Enschede, maar in vele Nederlandse steden en gemeenten.”

Dat gemeente Enschede een ‘smart city’ wil zijn prima, maar dat moet je juist doen met alle privacy bescherming die mogelijk is. Hier word gesuggereerd dat door verbod op wifitracking een belemmering is in smart city, een tegenstelling die niet klopt. Er zijn genoeg alternatieve privacyvriendelijke manieren om de drukte in de stad (bij benadering) te bepalen, hiervoor is het niet nodig dat je privacy van je burgers te grabbel gooien.

In de media over dit artikel:

Wetgeving 3D geprinte wapens

JStark1809 / Deterrence Dispensed

Gisteren 24 mei is op NOS journaal (vanaf 18:32) en op1 de politie aan het woord geweest over 3d geprinte wapens en een voorstel voor nieuwe wetten. Originele persbericht van de politie is hier te vinden

In 2013 werd door Cody Wilson de eerste 3d geprinte wapen gepubliceerd. Ik heb toen de liberator-tje  hiervan gemaakt, een klappertjes pistool om gesprek hierover op gang te brengen. Dat is toen aardig gelukt, mijn pistool is op verschillende exposities geweest. 

Ondertussen zijn de ontwikkelingen verder gegaan en is men een stuk verder met 3D geprinte wapens. De FGC-9 die in het persbericht wordt genoemd is ontwikkeld door een Duitser specifiek voor de europese markt. Deze ontwikkelaar is van mening dat wapens voor iedereen beschikbaar moet zijn, een mening die ik absoluut niet deel. Ik vind het prima dat er een wapenwet is die het maken en gebruiken van wapens aan strenge regels is onderworpen.

De Liberator is een volledig plastic geweer die praktisch gezien zeer beperkt werkt. De FGC-9 bevat metalen onderdelen, maar is lastig om te produceren en nog steeds niet betrouwbaar, ook volgens de politie zelf. Dus zelfs met deze ontwikkelingen is het nog steeds niet eenvoudig om zomaar een betrouwbaar 3D wapen te printen.

Verbod op download

De politie maakt zich echter wel bezorgd om de ontwikkelingen en zou graag aanvullende wetgeving willen hebben om verdere ontwikkelingen te hinderen of stoppen. Hun voorstel is om het beschikbaar maken van de  ‘blauwdrukken’ strafbaar te maken. Hierbij ga ik even van uit dat ze met blauwdrukken de STLs bedoelen, het bestandsformaat wat je normaal gebruikt voor 3D printers. Met dit verbod zou het downloaden van een dergelijk bestand strafbaar worden en zouden deze bestanden waarschijnlijk op internet geblokkeerd moeten worden.  Als internet ons iets heeft geleerd is dat als eenmaal iets op internet staat dat het niet meer te verwijderen of te blokkeren is, al helemaal niet op internationaal niveau (hoi Piratebay).

Slicer software

Ander voorstel van de politie is dat de software moet voorkomen dat je een wapen kan printen, zonder uit te leggen hoe dit dan zou werken. 3D FDM printers zijn domme apparaten die eigenlijk geen idee hebben wat ze printen. Je hebt een ‘slicer’ nodig om een blauwdruk (STL) te vertalen naar iets wat de 3D printer snapt. Als software moet voorkomen dat wapens geprint kan worden zou je dat in de slicer kunnen doen. Deze moet dan op de een of andere manier herkennen of je een onderdeel van een wapen print. Persoonlijk denk ik dat dit erg lastig is om op een goede manier op te lossen, nog los van het feit dat het waarschijnlijk eenvoudig te omzeilen is.

Conclusie 

Het maken of in bezit hebben van een (3D-geprint) wapen is al strafbaar, hiervoor is geen extra wetgeving nodig. Met het strafbaar stellen van download of gebruik van ‘slimme software’ laat een crimineel zich niet weerhouden om een wapen te maken. 

Met het strafbaar maken van specifiek download is weer een beperking op het internet die dan op de een of andere manier gehandhaafd zou moeten worden zonder inbreuk te maken op privacy en vrije meningsuiting van iedereen. Er zijn voorbeelden te over dat dit soort verboden op internet niet of heel slecht werkt en toch altijd ongewenste bijeffecten heeft.

Wat je wel zou kunnen doen is de kennis van de wapenwet bij 3D hobbyist / algemeen publiek te vergroten en duidelijk maken dat het maken van 3D wapens verboden is (mocht dat nog niet duidelijk zijn). Zo blijft een 3D printer een tool om zelf ontwerpen te maken en printen, zoals deze bedoeld is.

Don’t scan random QR-codes

Portrait of Dave Borghuis, for my Shoot ALL the Hackers! project. Foto by dvanzuijlekom

Hi, so you scanned my QR code. I am a friendly guy so nothing bad happened, but an evil person could do harm to your phone or go to a bad website. So next time think before scanning a random QR code from an untrusted source.

If you want to check a possible unknown url/qr code you could use https://www.url2png.com/ to see what the site is.

Greetings,
Dave

RMC : “This is fine”

Dit artikel is aanvulling op mijn vorige artikel over boete AP aan de gemeente Enschede.

Mijn conclusie is dat ondanks alle beloftes van RMC de gegevens NIET anoniem zijn. Indien de gegevens echt anoniem zou zijn kun je niet leefpatronen uit de data halen. Het feit dat Autoriteit Persoonsgegeven (AP) in hun rapport heeft aangetoond dat dit wel kan (voor 4 personen, o.a. een nachtelijke wandelaar) geeft aan dat de ‘CittyTraffic methode’ niet afdoende is om de gegevens te anonimiseren. Bovendien moet privacy belang worden afgewogen tegen belang van bijhouden statistieken. Hierbij geeft AP aan dat je onbespied moet kunnen rond bewegen, dus wifitracking niet is toegestaan.

RMC geeft aan dat men niet de methode heeft aangepast sinds 1 januari 2019, dus de situatie nu is nog gelijk aan wat AP heeft onderzocht en in hun rapport hebben aangegeven.

Het lijkt me dat gemeenten die de wifi tracking van RMC (en andere soortgelijke partijen) gebruiken nog eens goed kijken naar de uitslag van AP en zich kritisch opstellen naar RMC. Deze partij levert wel de dienst maar krijgen niet te boete, de gemeente krijgt deze en zij zijn ook de partij die nu risico op de boete lopen.

RMC heeft naar aanleiding van uitspraken AP een FAQ gemaakt. Naar mijn mening word het wel erg positief voorgesteld voor RMC, dus hieronder herhaal ik de vragen waarbij ik commentaar heb.

Korte samenvatting :

  • Gegevens worden niet voor 24 uur maar uiteindelijk voor 6 maanden opgeslagen.
  • Sensor staat op een specifieke lokatie, de wifi gegevens kun je hiermee combineren.
  • Van MAC adres word een hash gemaakt van 9 posities. Deze is nog steeds uniek genoeg om een telefoon (en dus persoon) te volgen, wat AP dan ook voor 4 personen heeft gedaan (vanaf pg 48 rapport). Zie ook artikel AP over hashes.

FAQ RMC nav uitspraak AP

Bezoekerstellingen middels wifi, hoe werkt dat?

Eigenlijk is de methode vergelijkbaar met de ouderwetse handklikker. Wij tellen en turven, maar dan automatisch aan de hand van wifi-signalen. Alleen als wifi op een smartphone staat ingeschakeld wordt deze dus geteld.

De wifi-sensoren registreren alle passanten die een apparaat bij zich hebben en daarop wifi aan hebben staan (het apparaat zendt regelmatig zogenaamde probe requests). De wifi-sensor registreert het MAC-adres, tijdstip en signaalsterkte. Dus niet de locatie.

Sensor staat op locatie, dus deze is wel bekend en word later in de statistieken ook hiermee gekoppeld.

Het MAC-adres wordt op de sensor gepseudonimiseerd.

Hash naar 12 posities

Als de sensor gedurende een bepaalde tijd geen signaal meer ontvangt, dan wordt de status aangepast. De data worden met vertraging doorgestuurd naar een centrale server waar de data worden geanonimiseerd en verder worden verwerkt om tot tellingen te komen.

Dezelfde hash maar dan 9 posities (laatste 3 posities verwijderd). Nog steeds uniek

De bewerkingen worden slechts gedaan om te komen tot het aantal bezoekers. De data worden op geen andere wijze bewerkt en/of geanalyseerd en niet langer dan noodzakelijk opgeslagen maar nooit langer dan 24 uur.

Dagtabel is max 24 uur, deze word overgezet naar database waar het 6 maanden wordt opgeslagen.

De tellingen van Citytraffic zijn vergelijkbaar met de methode hoe files in Nederland worden gemeten. De methode voldoet aan alle Europese wetgeving.

Waar worden de verzamelde gegevens voor gebruikt?

De gegevens kunnen worden gebruikt om de drukte in een winkelstraat te meten. Dit levert hele relevante en noodzakelijke informatie op in het kader van openbare bestuur en veiligheid. Het is informatie die door zowel lokale als nationale overheidsorganen wordt gebruikt, zeker bij de bestrijding van de coronapandemie.

Verzamelen van gegevens moet worden afgewogen met belang privacy burgers. AP concludeert dat privacy gegeven zwaarder wegen dan belangen van gemeente. Bovendien zijn er andere privacy vriendelijke methoden beschikbaar, wifitracking is niet de enige manier om bezoekersaantallen te verkrijgen.

Deze gegevens worden ook gebruikt door retailers die vergelijkingen maken met hun eigen bezoekersaantallen of beter personeel willen plannen.

Op basis van deze informatie kan er worden besloten om de toegang tot een winkelstraat tijdelijk te beperken, wanneer blijkt dat het te druk wordt, of worden winkeltijden in algemene zin aangepast

Wat is het verschil tussen wifi-tracking en wifi-tellen?

Bij wifi­-tracking worden individuen gevolgd, aaneengesloten in tijd en plaats. Een wi­fi-telling is gericht op het tellen van groepen op een bepaald moment op een bepaalde plaats. Het verschil tussen wifi­-tracking en wi­fi-telling is simpel: Passanten worden niet gevolgd, maar geteld. Er is niet bekend wie zij zijn, waar zij wonen, waar zij naar toe gaan en welke winkels zij binnen gaan. Buiten het bereik (20meter) van de sensor wordt niets gemeten.

De telefoon kan worden gevolgd door de stad omdat die een uniek (hash) nummer krijgt. Iedere sensor waar deze langs komt krijgt deze hetzelfde hash en dus zou je hem kunnen volgen. AP geeft 4 voorbeelden in rapport dat ze aan hand van de data mensen kunnen volgen.

Hoe anonimiseren jullie de telgegevens?

Om te voorkomen dat een MAC-adres kan worden herleid naar één specifiek apparaat, wordt dit bij telling direct omgezet naar een ander willekeurig nummer op de sensor.

Een MAC adres word omgezet naar hash, hiermee heb je nog steeds een uniek nummer. Iedere keer als je de hash uitrekent van MAC krijg je dezelfde uitkomst, dus kun je terugkijken in de database of je het eerder gezien hebt. Op deze manier kunnen ze zien of je een nieuwe bezoeker bent. Je kunt dezelfde hash terug zijn bij andere sensors, zelfs in andere steden waar RMC deze methode gebruikt. Zo zou je een bezoeker in zowel Enschede als Hengelo terug kunnen zien.

Hierdoor versturen de sensoren nooit MAC-adressen naar de server waar de ruwe tellingen worden verwerkt. CityTraffic werkt alleen met deze niet bestaande nummers. Zodra dit nummer aankomt op de server, wordt het geanonimiseerd.

Hash word word afgeknipt van 12 naar 9 posities, hiermee is het nog steeds uniek.

Dat betekent dat het voor de tweede keer wordt veranderd. We kunnen daarna nooit het nummer meer herleiden naar één apparaat.

Een hash werkt inderdaad maar 1 kant op, maar geeft wel altijd hetzelfde resultaat. Je kunt dus wel kijken of een bepaalde MAC adres dezelfde hash geeft en zo later koppelen met de gegevens in de database. Ik snap hier niet de opmerking ‘tweede keer wordt veranderd’, er word een hash uitgerekend en als het naar server gestuurd worden de laatste 3 posities afgeknipt.

Tot slot wordt de informatie maximaal 24 uur bewaard. De methode voldoet daarmee aan alle Europese wetgeving.

De hash van 9 posities word inderdaad eerst 24 uur opgeslagen in een tijdelijke tabel, deze worden dan dagelijks omgezet naar definitieve database waarin het 6 maanden in opgeslagen blijft.

Wat is de reden dat de AP een boete heeft opgelegd in de zaak rondom wifi-tellingen?

De AP is van mening dat de gemeente zonder grondslag indirecte persoonsgegevens (Mac-adressen) heeft verwerkt van eigenaren/gebruikers van mobiele apparaten waarop de wifi stond ingeschakeld in de binnenstad van Enschede, wifitracking genaamd door de AP. De gemeente Enschede heeft bezwaar aangetekend tegen dit besluit.

We zijn zeer ongelukkig met de boete voor een van onze opdrachtgevers en vinden deze disproportioneel. Het bezwaar van de Gemeente Enschede tegen dit besluit wordt door ons ondersteund. Het tellen van passanten is, zeker in tijden van een pandemie, van groot maatschappelijk belang.

Tellen moet worden afgewogen tegen privacy belang. Dat we nu in periode van covid zitten veranderd dit niet.

Tellen op basis van wifi is daarmee een privacy-veilige en nauwkeurige manier om bijvoorbeeld de drukte in een winkelstraat te meten. Een MAC-adres is niet direct te herleiden naar een individu. Gemeente Enschede telt en volgt niet!

Gegevens zijn wel te traceren naar personen, AP heeft aan de hand van data 4 leefpatronen gemaakt. Als je bekend bent met leefpatronen zou je via een camera of ter plekke kunnen kijken wie dit is. Cittytrafic methode volgt telefoons (en hiermee personen)

Welk standpunten heeft de Gemeente Enschede ingenomen?

De gemeente kan zich niet vinden in deze uitspraak en beraadt zich op eventuele vervolgstappen. De gemeente Enschede neemt de privacy en de bescherming van persoonsgegevens van haar inwoners zeer serieus. Bij de opdrachtverlening voor de wifimetingen in 2017 is binnen het kader van de destijds geldende privacywet- en regelgeving gewerkt. Toen een jaar later de Algemene Verordening Gegevensbescherming (AVG) werd ingevoerd, is actief gehandeld om ook aan de AVG te voldoen. De Autoriteit Persoonsgegevens gaat uit van een theoretisch scenario dat mogelijk individuen zouden kunnen worden geïdentificeerd. De gemeente is van mening dat identificatie van individuen aan de hand van de verwerkte data uit de anonieme wifimeting niet mogelijk is.

“Wij voelen ons ten onrechte gestraft voor iets dat wij niet beoogden en wat ook feitelijk niet is gebeurd. Het waarborgen van de privacy van onze binnenstadbezoekers is altijd een voorwaarde geweest. Bezoekerstellingen zijn nodig om het effect van investeringen en beleid in je stad te meten. Het kunnen monitoren van de drukte in je stad is nu actueler dan ooit, en wij zijn geblinddoekt. Extra wrang is dat bij de Autoriteit Persoonsgegevens nu een door de MOA – expertise center voor marktonderzoek – opgestelde gedragscode voor statistische wifitellingen ter goedkeuring is voorgelegd. De Autoriteit Persoonsgegevens is dus aan de ene kant aan het meedenken, terwijl het aan de andere kant een zware boete uitdeelt.”

Het is voorgelegd, maar ivm onderzoek gaf AP geen antwoord. Brief AP 30 Nov 2018 wifitracking alleen onder specifieke voorwaarden is toegestaan. Volgens gemeente ‘expert’ geraadpleegd die heeft beoordeeld dat het goed was. Het is mij niet duidelijk welke expert dit was en hoe deze evaluatie heeft plaatsgevonden. Als de expert iemand van RMC was krijg je natuurlijk ‘slager keurt zijn eigen vlees’ en is de uitkomst alles behalve objectief. Als op dit punt de gemeente kritisch was geweest hadden ze kunnen inzien dat de privacy van de burgers niet gewaarborgd kon worden en wellicht gestopt met de wifitracking.

Is wifitellen nu verboden in Nederland?

Nee. Wifitellen – volledigheidshalve  “statistisch passantenonderzoek met behulp van een wifi-signaal” genoemd – is toegestaan, mits er goed wordt uitgelegd waarvoor het nodig is en de persoonsgegevens geanonimiseerd zijn. In een brief aan de VNG gaf toenmalig minister Dekker aan dat hiervan sprake kan zijn als toepassing van deze methode nodig is voor het handhaven van de veiligheid of het bewaken van de openbare orde. Dit wordt ook onderschreven in de meest recente uitspraak van de Autoriteit Persoonsgegevens.

Volgens brief AP 30 November 2018 alleen in uitzonderlijke omstandigheden. Denk aan evenementen waarbij belangrijk is om aan crowdcontrol te doen. Dat is dan voor een beperkt gebied voor een beperkte periode. Dit is heel wat anders dan personen 24/7 in gehele binnenstad te volgen, waarvoor deze uitspraak ligt van AP dat dit niet mag.

Wat betekent deze uitspraak voor andere gemeenten die gebruikmaken van wifitellen?

Als uitvoerder garandeert Bureau RMC dat de huidige Citytraffic telmethode technisch voldoet aan alle huidige wet- en regelgeving. Telgegevens worden, nadat ze zijn geanonimiseerd,

AP heeft aan de hand van de gegevens database van 4 personen leefpatronen kunnen bepalen. Indien gegevens echt geanonimiseerd waren had je dit niet kunnen doen. Conclusie is dus dat gegevens NIET geanonimiseerd zijn!

niet langer dan 24 uur bewaard.

Ze staan max 24 uur in dagtabel, gegevens worden dagelijks omgezet in de database waar ze 6 maanden blijven opgeslagen.

Hiermee wordt voldaan aan de AVG voor de verwerking van persoonsgegevens.

Volgens AP niet, vandaar de boete

Opdrachtgevers dienen ook te voldoen aan de AVG. Dat houdt onder andere in dat:

  • Een wettelijke grondslag is bepaald en dat dit goed is vastgelegd. Zie artikel 6, lid 1e op pagina 36.
  • Organisaties die wifi-tellingen inzetten, passanten en/of bezoekers hierover helder dienen te informeren.
  • De bewaartermijn is afgestemd op het doel van de meting.
  • De persoonsgegevens privacy proof worden verwerkt in overeenstemming met de verwerkersovereenkomst en de daaraan ten grondslag liggende wettelijke bepalingen.
  • Er een verwerkersovereenkomst is. Neem gerust contact met ons op als er geen verwerkersovereenkomst is zodat we u kunnen helpen.

Zie hier voorbeelden die kunnen worden gebruikt: VNG en MOA 

Gaat Bureau RMC haar methode veranderen naar aanleiding van de uitspraak in Enschede?

Op dit moment is daar geen reden toe. Bureau RMC behandelt alle gegevens als persoonsgegevens en handelt in lijn met de gedragscode die is opgesteld door de MOA, brancheorganisatie voor marktonderzoekbureaus. Onze methode is privacy proof.

Vind AP niet, zie 4 voorbeelden van persoenen.

Zodra deze gedragscode of andere vorm van wetgeving vereisen dat de meetmethodes aangepast moeten worden, dan zullen we dit uiteraard doen.

Graag, ik zie jullie nieuwe methode graag tegemoet.

Wifi tracking – verweer gemeente Enschede

Ik heb 3 Juni bericht van AP ontvangen dat het onderzoek is afgerond en dat het rapport nu bij de gemeente Enschede ligt zodat zij hun reactie / verweer kunnen geven.

Als deze reactie door het AP is ontvangen zullen zij een eindrapport maken waarin een eindconclusie te vinden is. Deze zal dan ook openbaar zijn.

Met andere woorden het lijkt er op dat na 2 jaar het einde van dit proces in zicht is. De bal ligt nu bij de gemeente Enschede en zou niet zo heel lang moeten duren voordat zij een reactie hebben geformuleerd (hopelijk hooguit een paar maanden).

Corona App

Interview met Rico Brouwer / potkaars

In de huidige COVID-19 pandemie is een nieuw idee ontstaan om een ‘Corona app’ te ontwikkelen. Hierbij zeggen veel mensen dat dit een inbraak op je privacy is, wat begrijpelijk is maar niet helemaal klopt.

Disclaimer : Dit hele blog post belicht vooral de technische kant van een corona app en of dit privacy veilig kan. Er spelen in de maatschappij ook vele andere aspecten zoals sociale kwesties of algemene gezondheidszorg, deze belicht ik hier niet.

Contactonderzoek

Wat nu na een geconstateerde corona besmetting gebeurt is dat de GGD een contact onderzoek uitvoert. Hiermee wordt nagegaan welke contacten de patiënt heeft gehad over de afgelopen 14 dagen en deze personen worden benaderd om uitleg te geven over de mogelijke besmetting en wat ze kunnen doen om verdere verspreiding te voorkomen. Vooral al je al maatregelen kunt nemen voordat een potentieel geïnfecteerde persoon symptomen vertoond kan op de vrij snel een drastisch verschil maken in de uiteindelijke aantallen corona patiënten.

Je kunt je voorstellen dat de patiënt niet altijd een volledige lijst van personen kan geven en dat hierdoor mogelijke besmette personen buiten het blikveld van de gezondheids organisatie vallen.

Ter ondersteuning van de contact onderzoek zou men een app kunnen ontwikkelen die specifiek deze taak ondersteund. Een groep van slimme onderzoekers hebben hiervoor het privacy vriendelijke DP-3T protocol bedacht. Het klinkt heel tegenstrijdig maar ik zal proberen het hier uit te leggen hoe dit werkt.

In de cartoon hebben we dus Alice (de corona besmette patient) en Bob (die bij haar in de buurt is geweest, en dus mogelijk besmet).

De techniek achter 3DP-TD

Op iedere telefoon die hieraan meedoet wordt een dagelijkse sleutel gemaakt die de basis vormt voor een ‘random’* getal dat iedere paar minuten anders is. Deze random getallen worden uitgezonden en de app luistert of hij deze getallen hoort. Op de telefoon wordt een lijst bijgehouden van de ‘random’ getallen die hij heeft gehoord.

Indien Alice ziek wordt en naar de arts/ziekenhuis gaat en na controle positief blijkt te zijn, krijgt ze een code waarmee ze kan melden dat ze ziek is. (Dit om spam en misbruik te voorkomen). Alleen op dit moment wordt haar lijst van dagelijkse sleutels naar de server gestuurd. Er word verder geen andere data verstuurd zoals locatie data, gebruikers gegevens etc.

De andere telefoons halen dagelijks lijst op met mensen die gemeld zijn. In het voorbeeld krijgt Bob dus lijst van de dagelijkse sleutels van Alice. Met deze lijst kan de telefoon van Bob de ‘random’ nummers van Alice berekenen en kijken of deze gezien zijn. De telefoon kan aan de hand van aantal criteria (afstand, duur contact, aantal keer gezien) bepalen of Bob ook risico loopt. Indien dit te laag is krijgt Bob niks te zien, als dit hoog is krijgt Bob een melding. Op deze manier kan Bob zien dat hij potentieel besmet is en eventueel maatregelen nemen. Dit zou kunnen bestaan uit een paar dagen thuis blijven of (als er genoeg testcapaciteit is) een test te laten doen. Vooral omdat Bob deze melding krijgt voordat hij zelf ziek is zou daarmee veel besmettingen voorkomen kunnen worden.

Het enige wat dus naar de server gaat en centraal gebeurt is het ontvangen en versturen van de dagelijkse sleutels van een besmet persoon. Het bepalen of je wel/niet besmet bent gebeurt op je eigen telefoon en is volgens het 3DP-TD protocol niet inzichtelijk door overheid, verzekeringsmaatschappij of wie dan ook. En ja je zou indien je een melding krijg niks op uit doen, er is geen enkele manier om maatregelen af te dwingen.

In mijn optiek zou een op deze manier gemaakte Corona App kunnen helpen op de corona te bestrijden. Het is natuurlijk geen wondermiddel, we zullen nog steeds onze handen moeten wassen, social distancing en testen. Maar het kan wel een middel zijn om de huidige lockdown minder strikt te maken en hopelijk een stapje te maken naar normale samenleving.

Opmerkingen

Punten in lijn van het https://www.veiligtegencorona.nl/ manifest (die ik volledig ondersteun) :

  • Het 3DP-TD protocol ziet er goed uit, maar uiteindelijk ligt het aan de uitvoering of het echt privacy proof is. Met open source code zou je dit kunnen controleren.
  • Deelname moet volledig vrijwillig zijn.

Bluetooth lijkt een geschikte manier om te kijken of iemand bij je in de buurt zit, maar er zijn genoeg situaties te bedenken dat de app wel een code ziet maar dat er geen sprake is van contact. Zo gaat een bluetooth signaal door glas en muren maar een virus niet. Andersom kan de virus nog op een deurkruk zitten van corona besmet persoon die 5 minuten eerder daar was maar dat zal de app natuurlijk niet zien. De app zou hooguit een indicatie kunnen geven of je besmet bent, de werkelijkheid kan natuurlijk altijd anders zijn.

Op 10 April werd bekend dat Apple en Google API functies in hun mobiel besturingssysteem opnemen om dit protocol te ondersteunen. Hiermee wordt het voor de ontwikkelaars een heel stuk makkelijker om een app op de juiste manier veilig te implementeren. Dit zal dan uitsluitend actief op je telefoon worden na toestemming. Ieder land zal wel een eigen app moeten ontwikkelen, vooral het gedeelte van krijgen code en wat te doen als je besmet bent zal per land verschillend zijn.

Volgens inschattingen moet 60% vd bevolking hieraan mee doen om succesvol te zijn. Dit is best wel een hoog percentage en stel dat het allemaal doorgaat ben ik erg benieuwd of we dit halen. Dat google/apple nu ook samenwerkt maakt de kans wel aanzienlijk groter.

Criteria van wanneer Bob wel of niet een melding moet krijgen staat nu nog niet vast en zou door de overheid ism RIVM etc bepaald moeten worden. In het voorstel van DP3-TP staan meer parameters waar men van af zou kunnen wijken, bv hoe vaak je een nieuwe ‘random’ nummer krijgt e.d. Dit zijn onderdelen die dus tijdens de implementatie van de app moet gaan bepalen.

* In dit artikel wordt ‘random’ gebruikt omdat het niet een echt willekeurig getal is maar iets wat berekend wordt door middel van aantal waarden (o.a. je dagelijkse sleutel). Omdat dit berekende waarden zijn kan de telefoon van Bob dezelfde berekening uitvoeren en controleren of de codes van Alice gezien zijn.

City Traffic methode

De methode van City Traffic om gegevens te anonimiseren blijft me toch bezig houden. Hoe ze precies van een MAC adres hun eigen hash maken die opgeslagen wordt in de database is me ondanks vele vragen nog steeds niet duidelijk. Om toch iets te kunnen doen doe ik hieronder wat aannames, als het ander is hoor ik graag van de specialisten hoe het dan wel moet ( of beter laat het zien in deze github code). Wat ik van ze begrijp doen ze het volgende :

  • Pseudo anonimiseren door hashen het MAC adres naar ‘op sha256 gebaseerde eigen methode’. Normaal geeft een sha256() een hex string van 64 tekens, dus ga ik hier van uit.
  • Nogmaals iets met de hash doen wat een resultaat geeft van 17 tekens. Ondanks meerdere malen te hebben gevraagd hoe/wat ze het terug brengen naar 17 teken heb ik geen idee wat ze precies doen. Voor nu ga ik van uit dat ze van de 64 tekens de eerst 17 tekens gebruiken.

Als ik van de hierboven gestelde methode uitga en ik ga voor 17.000.000 ‘adressen’ (ALLE inwoners van Nederland) de eerste 17 tekens van sha256 opslaan in een database, hoeveel dubbele hashes denk je dat ik dan heb? Ik heb het programma gemaakt die precies dit doet, het antwoord is dat ik 0 (!!) dubbele hashes heb. Dus als we deze methode vertalen naar de ‘City Trafic’ methode betekent dit dat het ‘dubbel hashen’ van getallen leuk is maar nog steeds 1 persoon is, en dus een persoonlijk gegeven. Als ik uitga van een stad van Enschede met 5000 bezoekers moet je het aantal karakters terugbrengen naar 4 of minder om een beetje te anonimiseren , (met 4 tekens 184 dubbele records (nog steeds te weinig naar mijn mening), met 5 krijgt men 8 dubbele records, met 6 is iedere record uniek).

Toby Kuiper heeft ook wat meer inhoudelijk naar deze getallen gekeken en komt tot de conclusie dat kans op een dubbel hash wel heel erg klein is (gelijk aan 1500000 x achter elkaar de staatsloterij winnen).

Toestemming gebruik biologisch restmateriaal

Van de week was ik bij het ziekenhuis in Enschede om bloed te laten afnemen. In de wachtkamer hing een tv scherm met een melding over privacy en eventuele mogelijkheid om bezwaar maken voor het gebruik van ‘restmateriaal’.

Normaal blijft er na onderzoek biologisch materiaal over, dit materiaal kan (geanonimiseerd) gebruikt kunnen worden voor wetenschappelijk onderzoek. Volgens het bedrijf Medlon (commercieel bedrijf die bloedonderzoeken voor het ziekenhuis uitvoert) is dit volgens de wet toegestaan. Je kunt via een folder wel hiertegen bezwaar maken, dan word je restmateriaal na onderzoek meteen vernietigd en niet gebruikt voor wetenschappelijk onderzoek.

De wetten die hiervoor van toepassing zijn Burgerlijk Wetboek 7, artikel 458 en 467. Voor de volledigheid citeer ik deze wetten hieronder (tekst in bold door mij toegevoegd) :

Artikel 458

  • 1) In afwijking van het bepaalde in artikel 457 lid 1 kunnen zonder toestemming van de patiënt ten behoeve van statistiek of wetenschappelijk onderzoek op het gebied van de volksgezondheid aan een ander desgevraagd inlichtingen over de patiënt of inzage in de bescheiden, bedoeld in artikel 454, worden verstrekt indien:
    • a.het vragen van toestemming in redelijkheid niet mogelijk is en met betrekking tot de uitvoering van het onderzoek is voorzien in zodanige waarborgen, dat de persoonlijke levenssfeer van de patiënt niet onevenredig wordt geschaad, of
    • b.het vragen van toestemming, gelet op de aard en het doel van het onderzoek, in redelijkheid niet kan worden verlangd en de hulpverlener zorg heeft gedragen dat de gegevens in zodanige vorm worden verstrekt dat herleiding tot individuele natuurlijke personen redelijkerwijs wordt voorkomen.
  • 2) Verstrekking overeenkomstig lid 1 is slechts mogelijk indien:
    • a.het onderzoek een algemeen belang dient,
    • b.het onderzoek niet zonder de desbetreffende gegevens kan worden uitgevoerd, en
    • c.voor zover de betrokken patiënt tegen een verstrekking niet uitdrukkelijk bezwaar heeft gemaakt.
  • 3) Bij een verstrekking overeenkomstig lid 1 wordt daarvan aantekening gehouden in het dossier.

Artikel 467

  • 1) Van het lichaam afgescheiden anonieme stoffen en delen kunnen worden gebruikt voor medisch statistisch of ander medisch wetenschappelijk onderzoek voor zover de patiënt van wie het lichaamsmateriaal afkomstig is, geen bezwaar heeft gemaakt tegen zodanig onderzoek en het onderzoek met de vereiste zorgvuldigheid wordt verricht.
  • 2) Onder onderzoek met van het lichaam afgescheiden anonieme stoffen en delen wordt verstaan onderzoek waarbij is gewaarborgd dat het bij het onderzoek te gebruiken lichaamsmateriaal en de daaruit te verkrijgen gegevens niet tot de persoon herleidbaar zijn.

Ik ben geen jurist maar hieruit lees ik :

  • Artikel 467.1 “…geen bezwaar heeft gemaakt…” – dit is naar mijn mening de essentie waar het om draait, hoe weet je dat er geen bezwaar is. In mijn mening weet je dit alleen als je expliciet er om gevraagd wordt. Aannemen dat er geen bezwaar is tenzij je dit aangeeft lijk met de omgekeerde van wat wenselijk is.
  • Artikel 485.1.a “….toestemming in redelijkheid niet mogelijk….” bij een bloedonderzoek is het altijd wel mogelijk om toestemming te vragen, er is hier geen sprake van levensbedreigenden of spoed situatie. Wellicht dat hiervoor bestaande procedures moeten aangepast maar dat is dan niet een reden om dit te doen.

Samenvattend lijkt me dat je aan persoon / patiënt VOORAF toestemming zou moeten vragen om op restmateriaal wetenschappelijk onderzoek te doen. Nu wordt er van uitgegaan dat je geen bezwaar hebt tenzij je dit aangeeft, dus zeg maar de je opt-out moet doen terwijl je opt-in zou verwachten.

Persoonlijk vind ik het ook niet een prettig idee dat een commercieel bedrijf met je bloed (en eventuele ander biologisch materiaal) aan de haal kan gaan zonder dat vooraf helemaal duidelijk is wat er exact mee gebeurt. Dat het geanonimiseerd gebeurt is goed, maar er zijn genoeg onderzoeken bekend waarbij geanonimiseerd data toch weer naar individuen gekoppeld kan worden. Wellicht ben ik een doemdenker op dit vlak maar het zou zo kunnen zijn dat bv een zorg verzekerings bedrijf getipt wordt over iets waardoor je meer premie moet betalen of zelfs verzekering geweigerd word.

Ik ben geen jurist maar wie kan me aangeven of ik de wet zo goed interpreteer (of dat er inderdaad ruimte hiervoor is)?

Wat vind jij, kan restmateriaal standaard geanonimiseerd gebruikt worden door een commercieel bedrijf voor wetenschappelijk onderzoek?