1. Inhoudsopgave 1. Inhoudsopgave ..............................................................................................................2 2. Inleiding ..........................................................................................................................4 3. Biometrie ........................................................................................................................5 3.1 Wat is biometrie....................................................................................................................................... 5 3.2 Biometrische kenmerken en technieken ................................................................................................. 7 3.3 Biometrische systemen ........................................................................................................................... 7 3.4 Intermezzo: Hammingafstand ................................................................................................................. 7 3.5 Evaluatie van een biometrisch systeem.................................................................................................. 7 3.5.1 Betrouwbaarheid en nauwkeurigheid van het systeem ............................................................... 7 3.5.2 Foutgevoeligheid van het systeem .............................................................................................. 7 3.5.3 Snelheid van het systeem............................................................................................................ 7 3.5.4 Gebruiksvriendelijkheid van het systeem .................................................................................... 7 3.6 Ontwerp van een biometrisch systeem ................................................................................................... 7
4
Technieken..................................................................................................................7 4.1 Digitaliseren van afbeeldingen ................................................................................................................ 7 4.1.1 Hoe komt een digitale afbeelding tot stand?................................................................................ 7 4.1.2 Kleurdiepte ................................................................................................................................... 7 4.2 Kleurmodellen ......................................................................................................................................... 7 4.2.1 RGB- kleurmodel ......................................................................................................................... 7 4.2.2 CMY- kleurmodel ......................................................................................................................... 7 4.2.3 Kleurmodellen en gezichtsherkenning ......................................................................................... 7 4.3 Afstandfuncties en metrieken................................................................................................................. 7 4.3.1 Waarom niet één afstandsbegrip?............................................................................................... 7 4.3.2 Kenmerken van metrieken ........................................................................................................... 7 4.4 Edge detection ........................................................................................................................................ 7 4.4.1 Een vrij eenvoudige methode - Euclidische afstand .................................................................... 7 4.4.2 Het idee........................................................................................................................................ 7
5.
Vingerafdrukken .........................................................................................................7 5.1 Een stukje geschiedenis.......................................................................................................................... 7 5.2 Kenmerken van vingerafdrukken ............................................................................................................ 7 5.2.1 Minutiae......................................................................................................................................... 7 5.3 Classificatie ............................................................................................................................................. 7 5.3.1 Henry Classificatie Systeem ......................................................................................................... 7 5.3.2 Classificatie - rule-based approach .............................................................................................. 7 5.4 Vingerafdruk-authenticatie, overzicht van het proces ............................................................................. 7 5.5 Vingerafdruk nemen (sensor).................................................................................................................. 7 5.6 Pre-processing: thinning.......................................................................................................................... 7 5.6.1 Waarvoor wordt thinning gebruikt? .............................................................................................. 7 5.6.2 Een aantal definities..................................................................................................................... 7 5.6.3 Zhang-Suen Thinning Algoritme ................................................................................................. 7 5.6.4 Waarom juist bovenstaande voorwaarden? ................................................................................. 7 5.7 Minutiae extractie .................................................................................................................................... 7 5.7.1 Crossing Number ............................................................................................................................. 7 5.7.2 Niet-echte minutiae ...................................................................................................................... 7 5.8 Minutiae matching ................................................................................................................................... 7
6.
Maatschappelijke aspecten .......................................................................................7 6.1 Toepassingen.......................................................................................................................................... 7 6.1.1 Voor - en nadelen ......................................................................................................................... 7 6.1.2 Conclusies .................................................................................................................................... 7 2
biometrie.doc
7.
Fraude..........................................................................................................................7 7.1 Inleiding ................................................................................................................................................... 7 7.1.1 Waar kan een fraudeur mee aan komen? .................................................................................... 7 7.1.2 Het maken van een kunstmatige vinger ....................................................................................... 7 7.1.3 Wat kunnen we eraan doen? ........................................................................................................ 7 7.1.4 Fraude met andere biometrische technieken ............................................................................... 7
8. 9.
Referenties ..................................................................................................................7 Bijlagen........................................................................................................................7 Bijlage1.......................................................................................................................................................... 7 Bijlage2.......................................................................................................................................................... 7 Bijlage3.......................................................................................................................................................... 7 Bijlage4.......................................................................................................................................................... 7
3
biometrie.doc
2. Inleiding Authenticatie is belangrijk: kantoren willen alleen hun eigen werknemers in het gebouw hebben, de overheid wil geen terroristen aan boord van een vliegtuig, en jij wilt de enige zijn met toegang tot je bankrekening. We kunnen de volgende toepassingen onderscheiden: - beveiliging van gebouwen (kantoor, huis, vliegveld, kerncentrale), objecten (computer, auto, laptop), landen (migratie-controle, controle op vliegvelden) en informatie (defensie/politie/medische bestanden) - betalen in winkels, betalen via internet, OV-kaart, biometrisch paspoort, etc Traditioneel wordt dit gedaan met pasjes/wachtwoorden/sleutels/handtekeningen/foto's, maar deze hebben als nadeel dat ze overdraagbaar en fraudegevoelig zijn: pasjes en sleutels horen maar in beperkte mate bij jou (en kunnen dus gestolen of doorgegeven worden), foto's en handtekeningen zijn makkelijk te vervalsen, en wachtwoorden zijn te kraken. Daarnaast zijn ze niet erg gebruiksvriendelijk: je sleept een hoop pasjes en sleutels mee, en moet een hoop wachtwoorden onthouden. Biometrie (het herkennen van personen op basis van lichaams- of gedragskenmerken) lijkt hier verandering in te brengen: je hebt je lichaam altijd bij je, het kan moeilijk gestolen worden, en je vingerafdruk is moeilijker te vervalsen dan je handtekening. Bovendien is het niet overdraagbaar: je kunt je vinger niet zomaar uitlenen aan iemand anders, terwijl dat met pasjes en wachtwoorden wel kan. Toepassingen verschijnen dan ook volop: iris-scans op het vliegveld, biometrische kenmerken in je paspoort, en vingerscans om je auto mee te starten. Fabrikanten beloven van alles, overheid en bedrijven geloven erin, en de markt groeit en groeit. Maar hoe werken ze eigenlijk? Zijn ze makkelijk zelf te maken, en makkelijk te omzeilen? Of algemener: waarin verschillen mensen van elkaar, hoe is dat te formaliseren, en hoe kunnen we dat gebruiken om mensen van elkaar te onderscheiden? In deze module zullen we een aantal biometrische kenmerken behandelen (vooral vingerafdruk), gaan we in op de achterliggende techniek, en behandelen kort de maatschappelijke gevolgen. Je leert zelf een biometrisch systeem maken, en leert een bestaand systeem te kraken. De nadruk ligt op het begrijpen en maken van biometrische systemen (en dus vooral op informatica en wiskunde), maar ook andere aspecten komen aan bod, waaronder veel achtergrondkennis van biometrie. Het geeft je een overzicht van het veld en inzicht in de onderliggende technieken.
4
biometrie.doc
3. Biometrie 3.1 Wat is biometrie Biometrie is herkenning van personen op basis van lichaams- en/of gedragskenmerken. De term is afkomstig van de Griekse woorden ‘bios’ (i.e. leven) en ‘metron’ (i.e. maat/meten). Biometrie (in ruime zin) houdt zich bezig met alle aspecten van het meten aan het menselijk lichaam. Welke spiergroepen gebruik je bij het darten? Kunnen we een auto laten besturen door hersengolven? Ook wordt biometrie gebruikt in forensisch onderzoek (CSI), bijvoorbeeld het afnemen van vingerafdrukken of identificeren van lijken. We beperken ons in de module echter tot het meten aan het menselijk lichaam met betrekking tot de identificatie en verificatie van personen. - Verificatie is het bepalen of de persoon wel degene is die hij zegt dat hij is. Een voorbeeld hiervan is de irisverificatie op Schiphol (figuur 3.1). De persoonlijke irisdetails staan op de chip van een zogenaamde Priviumkaart. Bij een grenspassage dien je de kaart in het systeem te plaatsen waarna er een nieuwe irisscan wordt gemaakt. Komt deze scan overeen met de details die op de chip staan dan ben jij inderdaad diegene die je zegt te zijn. Het is dus een 1 op 1 vergelijking tussen je nieuwe en opgeslagen gegevens. We noemen dit ook wel eens een 1:1 match. - Identificatie is in het algemeen het bepalen van je identiteit. Je geeft bijvoorbeeld je vingerafdruk door, waarna het systeem de gehele database doorzoekt op zoek naar de bijbehorende opgeslagen gegevens. Het gaat hier dus om een 1:n match, met n het aantal vingerafdrukken wat in de database is opgeslagen. Figuur3.2 Fingerprint doorlock
Figuur3.1 Irisscanner op Schiphol
In figuur 3.2 zie je een afbeelding van een vingerafdrukdeurslot wat werkt met identificatie. Wil jij toegang krijgen, dan wordt jouw vingerafdruk vergeleken met alle(!) aanwezige vingerafdrukken. Is er een match dan wordt er toegang verleend. Andere termen die nog wel eens voorkomen zijn screening en authenticatie: - Screening is het bepalen of je tot een watch-list (blacklist/whitelist) behoort. Het is feitelijk hetzelfde als identificatie, maar dan met een subset van de database. Handig als je alleen een bepaalde groep mensen door wilt laten (whitelist), of juist een bepaalde groep mensen wilt weren (blacklist). Denk aan het screenen van voetblasupporters bij een wedstrijd: je wilt mensen met een stadionverbod weren, waarbij het je verder niet uit maakt wie de andere personen zijn (zo lang ze maar een kaartje hebben). We zullen de term verder niet gebruiken, behalve om toepassingen aan te duiden waarbij onopvallend wordt gezocht naar bepaalde mensen in een groot publiek (hooligans bij een wedstrijd, criminelen in een winkelstraat, terroristen op een vliegveld, etc). - Authenticatie is een term die we gebruiken voor zowel verificatie als identificatie. Zeggen we authenticatie, dan bedoelen we verificatie/identificatie/screening. Authenticatie kan op verschillende manieren: via iets wat je weet (wachtwoord, pincode), hebt (sleutel, pasje), of iets wat je bent (biometrische kenmerken):
5
biometrie.doc
1. Wat je weet: Het systeem laat je toe, omdat het ervan uitgaat je iets weet wat niemand anders kan weten. Voorbeeld: Met behulp van je inlognaam en wachtwoord kun je je aanmelden bij het leerling-portaal van school (figuur 3.3). Indien beide juist zijn, laat het systeem je toe in het portaal. Het systeem gaat er dus vanuit dat jij het bent op grond van wat je weet.
Figuur3.3 loginscherm
Opgave 1 Geef twee nadelen van bovenstaande manier van authenticatie
2. Wat je hebt: Het systeem laat je toe, omdat het ervan uitgaat je iets hebt wat niemand anders kan bezitten. Voorbeelden: Met behulp van een sleutel maak je de deur van de auto open, start je de auto en rijdt weg. Een eToken (figuur 3.4) is een USB- stick waarmee je bijvoorbeeld veilig je mail kunt lezen of versturen. Je hoeft je niet meer met een wachtwoord aan te melden; het wachtwoord staat versleuteld op de stick. Door de eToken in te pluggen wordt je automatisch aangemeld, en kan je kan je gebruik maken van bepaalde faciliteiten.
Figuur3.4 eToken van Aladdin
Opgave 2 a. Geef twee nadelen van bovenstaande manier van authenticatie b. Geef nog drie voorbeelden van 'bezittingen' om jezelf te authentificeren
3. Wat je bent: Het systeem laat je toe, omdat het ervan uitgaat je bepaalde fysieke en/of gedragskenmerken hebt die niemand anders heeft. Dit is eigenlijk de essentie van biometrie: ieder mens is uniek! Door de drie manieren te combineren kun je de veiligheid vergroten. Indien je bij een bank geld wilt pinnen dan heb je een pinpas (Wat je hebt) en een pincode (Wat je weet) nodig. Mocht je een van beide verliezen of vergeten dan is er qua veiligheid nog niets aan de hand. In figuur 3.5 staat het inlogscherm van Rabobank telebankieren. Wil je gebruik maken van de faciliteiten dan dien je je in te loggen met de gebruikersnummer. Tevens dien je in bezit te zijn van een digipass waarmee je, nadat je het wachtwoord in dit systeem hebt ongetoetst, een cijferreeks te zien krijgt, die je vervolgens weer in het scherm invult.
6
biometrie.doc
Figuur3.5 inlogscherm en digipass van Rabobank
3.2 Biometrische kenmerken en technieken Wat zijn zoal lichaamskenmerken (fysieke kenmerken) en gedragskenmerken die gebruikt worden bij biometrie? Hieronder een kort overzicht: Fysieke kenmerken: 1. vingerafdruk 2. iris 3. oor 4. gezicht 5. DNA Gedragskenmerken: 1. handschrift 2. manier van lopen Figuur3.6 allerlei kenmerken
Opgave 3 a. Noem nog drie fysieke kenmerken die niet op deze pagina's zijn te vinden b. Noem nog twee gedragskenmerken c. Zou een lach gebruikt kunnen worden? Motiveer je antwoord.
We zullen een aantal kenmerken in het kort bespreken: Vingerafdruk: Vingerafdrukken zijn een patroon van bergen en dalen. Ze worden nog voor je geboorte gevormd door je genetische blauwdruk en stochastische omgevingsfactoren zoals de exacte positie van de foetus in de buik, en zijn zo voor iedereen verschillend, zelfs voor één-eiige tweelingen. Je handpalm en voeten hebben eenzelfde soort patroon, en kunnen dus ook voor authenticatie worden gebruikt. Het evolutionaire nut van het patroon is dat ze de grip verhogen die je hebt op objecten en takken, net zoals een autoband een patroon heeft om meer grip te krijgen op de weg. Het patroon wordt gemeten met optische of capacitieve sensoren: de een werkt met een foto, de ander via stroomgeleiding. Beiden komen ze tot 7
biometrie.doc
eenzelfde soort plaatje, waarbij vervolgens wordt gekeken naar het patroon van lijnen: waar beginnen ze, waar splitsen ze zich, etc. Naast optische en capacitieve sensoren zijn er thermische en ultrasound sensoren die de hitte-verdeling en onderliggende structuur weergeven. Porieën in de huid kunnen ook dienen als onderscheidend kenmerk, maar daarvoor is wel een flink gedetailleerde foto nodig (1000dpi). Onderzoek naar vingerafdrukken loopt al sinds 1823, en vingerafdrukscanners zijn het verst ontwikkeld en meest gebruikt van alle biometrische technieken. Ze zijn vrij accuraat, uitermate goedkoop (vanaf $20), en kunnen op een hoop plekken worden toegepast, waaronder in een muis, deurklink en laptop. De betrouwbaarheid kan eventueel vergroot worden worden door het meten van meerdere vingers. Een nadeel is dat vingerafdrukken makkelijk na te maken zijn (zie het fraudehoofdstuk), en dat vingers nog wel eens vies of beschadigd zijn, wat authenticatie moeilijk maakt. Iris Irisscanners werken met het patroon van je iris. Dit patroon wordt (net als bij de vingerafdruk) random gevormd tijdens de zwangerschap, en is zo voor iedereen uniek. Met een normale camera wordt een foto genomen van je oog, worden de randen van je pupil en iris vastgesteld (om het gebied af te bakenen), waarna het patroon van je iris kan worden geanalyseerd. Voordelen van de iris zijn dat ze niet veranderen gedurende je leven, dat iedereen er een heeft, en ze beschermd worden tegen beschadiging. Het dragen van een bril of lenzen maakt niet uit en ook blinden kunnen er mee werken, zo lang ze maar een iris hebben. Wel vormen wimpers en oogleden een probleem doordat ze de iris deels bedekken. Om deze uit het plaatje te filteren zijn extra algoritmes nodig. Irisscanners kunnen makkelijk gefopt worden met een uitgeprint plaatje van je iris, maar aanvullende checks worden gebruikt om dit te voorkomen, bijvoorbeeld door te kijken naar reflectie van licht. Hieronder de reden waarom schiphol heeft gekozen voor de irisscan: "Irisscan is van alle biometrie mogelijkheden verreweg het meest betrouwbaar en veilig. Daarnaast scoort de irisscan goed op gebruikersacceptatie (hygiëne), de performance (snelheid) en de mate van 'proven technology'. De irisscan is volkomen veilig, irriteert de ogen niet en brengt op geen enkele wijze schade toe. Het is vergelijkbaar met een digitale foto die van het oog wordt gemaakt.". Retina De retina is een laagje lichtgevoelige cellen aan de achterkant van je oog. Het vangt licht op van de buitenwereld op waardoor je kunt zien. Een retina-scan is gebaseerd op het patroon van bloedvaten in je retina. Een plaatje hiervan zie je rechts: een foto van de achterkant van je oog. Het punt waar de bloedvaten samenkomen is waar je oogzenuw het oog verlaat. Het patroon van bloedvaten wordt (net als de iris en vingerafdruk) stochastisch gevormd. Het wordt gezien als de meest betrouwbare biometrische kenmerk, aangezien het patroon uiterst uniek is, niet 8
biometrie.doc
verandert gedurende je leven (behalve door sommige ziektes), en goed beschermd is tegen beschadiging. Het aantal missers bij authenticatie is dan ook uiterst laag. Ook wordt het gezien als het meest veilige kenmerk (ivm fraude), aangezien het moeilijk is te veranderen of kopieren. Retina-scanners zijn echter weinig gebruiksvriendelijk: je moet je oogkas tegen de sensor houden en naar een bepaald punt in de scanner kijken. Ook is de aparatuur nogal duur, en kan slechte belichting voor problemen zorgen.
Gezicht: Gezichten kunnen op een aantal manieren onderscheiden worden: via geometrie (afstanden tussen ogen, mond en oren), via een facial thermogram (een hitte-weergave van je gezicht door een infra-roodscanner), of via het patroon van je huid. Ook kunnen dynamische aspecten genomen worden, zoals de verandering van je gezicht bij een gezichtsuitdrukking. Een plaatje van geometrie vind je hiernaast. Gezichten verschillen nog wel eens van pose (schuin, gedraaid, verschillende gezichtsuitdrukkingen), wat herkenning flink moeilijk maakt. De nauwkeurigheid van deze systemen is dan ook vrij laag in vergelijking met andere systemen. In het lab wil het systeem nog wel eens beter presteren dan mensen, maar in omstandigheden in de buitenwereld presteert het soms bar slecht. 3D gezichtsherkenning werkt al een stuk beter, en ook het kijken naar details in de huid is in opkomst. Doordat het mensen van afstand en onopgemerkt kan scannen is het uiterst handig voor screening, bijvoorbeeld het zoeken naar criminelen en terroristen bij een belangrijke wedstrijd, of het zoeken naar valsspelers in een casino. Het kan gekoppeld worden aan huidige beveiligingscamera's (waarvan er een hoop zijn; alleen al 3 miljoen in Londen), waardoor mensen op grote schaal in de gaten gehouden kunnen worden. Dit levert zowel mogelijkheden als gevaren op, zoals bijvoorbeeld het recht op privacy. Thermograms: Thermograms zijn hitte-afdrukken van je gezicht of hand. Het hittepatroon van je lichaam is uniek voor ieder persoon, en kan worden gemeten met een infraroodcamera. Facial thermograms zijn universeel, uniek, makkelijk meetbaar, en breed geaccepteerd, wat het over het algemeen tot een zeer geschikte techniek maakt. Echter, mede doordat infraroodcamera's zo duur zijn zal de techniek maar in beperkte mate gebruikt gaan worden. Zoals vele biometrische kenmerken werkt het goed onder gecontroleerde omstandigheden, maar minder goed in de echte wereld. In het geval van thermograms kan alles wat hitte produceert voor problemen zorgen, bijvoorbeeld huisverwarming en uitlaatgassen.
9
biometrie.doc
Loopgedrag: Het engelse gait is je loop (ook wel: manier van lopen, loopgedrag). Hoewel minder onderscheidend dan een vingerafdruk is het onderscheidend genoeg voor een aantal low-security systemen, zoals het screenen op hooligans of criminelen. Je manier van lopen is afhankelijk van je gewicht, lengte, sexe (man/vrouw), en structuur van je botten en gewrichten. Gewicht en lengte veranderen over de jaren, en je manier van lopen dus ook. Op korte termijn hebben ook schoenen, terrein, en vermoeidheid hun impact, wat herkenning soms moeilijk maakt. Het meten wordt vaak gedaan met een normale of infraroodcamera of met radar. Daarbij wordt gekeken naar de grootte van stappen en snelheid van lopen, maar ook naar rotaties van gewrichten als heup, knie, en enkel. Ook kun je zonder te bewegen worden geidentificeerd, bijvoorbeeld door de te kijken naar de lengte van je benen. Het meten van je loopgedrag kan onopvallend van afstand met een normale camera, wat het uitermate geschikt maakt voor screening. Bovendien werkt het goed van afstand en bij een lage resolutie, en kunnen mensen hun loopgedrag moeilijk verbergen, wat het in sommige gevallen geschikter maakt dan gezichtsherkenning. Wel is het computationeel erg duur doordat gebruik wordt gemaakt van videobewerking. De techniek staat nog in de kinderschoenen, maar vorderingen worden gemaakt. Handtekening en handschrift: Op het eerste gezicht lijkt dit geen goed idee, want handtekening en handschrift zijn makkelijk te kopieeëren. Er wordt echter niet alleen naar het resultaat gekeken, maar vooral ook naar hoe het wordt gemaakt: de snelheid en het ritme waarmee je schrijft, de druk die je uitoefent wanneer je de puntjes op de i plaatst, en de hoek van de pen ten opzichte van het oppervlak. Je handschrift wordt gemeten door het druk-gevoelige scherm of door sensoren in de pen en is daarmee uiterst geschikt voor PDA's.
In principe kunnen we ieder lichaams- of gedragskenmerk gebruiken om een persoon te herkennen, mits het voldoet aan de volgende eisen: 1. universality (universaliteit): iedere persoon dient het kenmerk te hebben. 2. uniqueness (uniciteit): geen twee personen hebben hetzelfde kenmerk. 3. permanence (constantheid): de kenmerken veranderen gedurende het leven van een persoon niet of nauwelijks. 4. collectability (meetbaarheid): de kenmerken dienen meetbaar te zijn. Dat wil zeggen uit te drukken in een kwantiteit.
10
biometrie.doc
Opgave 4 a. In hoeverre voldoet loopgedrag aan deze eisen? b. In hoeverre voldoet een handschrift aan deze eisen?
Biometrische systemen die gebruik maken van deze kenmerken (zoals vingerafdrukscanners en irisscanners) dienen daarnaast hoog te scoren op de volgende onderdelen: 5. performance (snelheid, nauwkeurigheid, betrouwbaarheid) 6. acceptability (gebruiksvriendelijkheid) 7. circumvention (fraudegevoeligheid) A.J. Jain [2] rangschikte biometrische kenmerken volgens de categorieën H (high), M (medium) en L (low). Hieronder staan voor 15 kenmerken deze rangschikking in een tabel weergegeven:
Tabel 3.1 vergelijking tussen verschillende biometrische kenmerken
Vertalingen: - facial thermogram is een hitte-diagram van je gezicht - gait is je manier van lopen - hand vein zijn de aderen in je hand - keystroke duidt op je manier van typen - odor is je lichaamsgeur - palmprint is een afdruk van je hand, vergelijkbaar met een vingerafdruk
Aan de hand van de tabel kunnen we nagaan welke van 15 biometrische kenmerken het 'beste' is. Opgave 5 We maken een scoreverdeling: 1 punt voor H 0 punten voor M -1 punt voor L Merk op: bij circumvention moeten de de scores omgedraaid worden (ga na!) a. Maak een tabel met daarin de totale scores van de 15 kenmerken. b. Welke scores zijn het hoogste? En het laagste? Conclusie? 11
biometrie.doc
c. Lees het artikel van Bijlage1. Conclusie?
Er zijn uiteraard meer factoren die van invloed zijn op de keuze van een biometrisch kenmerk, dit sterk afhankelijk van de context: in kerncentrales is betrouwbaarheid en fraudegevoeligheid van groot belang, terwijl een attractiepark meer de nadruk zal leggen op gebruiksvriendelijkheid. Camerasystemen in Engeland willen mensen onopvallend kunnen herkennen (en maken dus gebruik van gezichtsherkenning), en bij communicatie via de telefoon werkt stemherkenning het handigst. Alle technieken hebben zo hun voor- en nadelen, wat ze geschikt maakt in verschillende situaties. Of we te maken hebben met verificatie of identificatie speelt ook mee bij onze keuze: identificatie (1:N matching) vereist een biometrisch kenmerk met een hogere nauwkeurigheid (performance) dan verificatie (1:1 match), aangezien bij identificatie meer templates van elkaar moeten worden onderscheiden. Mocht je kunnen kiezen tussen identificatie en verificatie, dan gaat de voorkeur uit naar de verificatie. Het is minder gebruiksvriendelijk, maar wel veel betrouwbaarder. Technieken zijn ook te combineren, voor nog meer zekerheid en het voorkomen van fraude. Dit kunnen twee biometrische techieken zijn, of een combinatie met conventionele technieken, alles is mogelijk. Opgave 6 Het loopgedrag van personen heeft geen hogere score volgens opgave 5, maar heeft zeker voordelen ten opzichte van andere kenmerken. Lees het artikel hiernaast [3]. Welke voordelen heeft het loopgedrag ten opzichte van andere kenmerken?
Opgave 7 Voor de toepassingen hieronder: welk biometrisch kenmerk zou je nemen? (kies de beste!) Gebruik je verificatie of identificatie? a. b. c. d. e. f. g.
starten van je auto betalen met creditcard aanmelden bij je PDA het herkennen van bekende fraudeurs in een casino agressiedetectie op straat beveiliging van een kerncentrale beveiliging van USB-sticks
12
biometrie.doc
3.3 Biometrische systemen Hieronder staan een aantal voorbeelden van verschillende biometrische systemen.
Figuur3.7 achtereenvolgens: aderherkenningssysteem, handpalmherkenningsysteem, irisscan en handtekeningherkenningsysteem.
Hiervoor noemden we ook al het privium systeem op schiphol als voorbeeld van een verificatie-systeem, en het vingerafdrukdeurslot als voorbeeld van een identificatie-systeem. DEFINITIE: Een biometrisch systeem is een systeem dat zodanig is ingericht dat deze een persoon, al dan niet automatisch, kan herkennen. Er zijn verschillende methoden bedacht waardoor computers automatisch personen of voorwerpen kunnen herkennen. Vaak zijn deze methoden statistisch van aard. De ouderwetse manier van herkenning wordt gedaan door mensen en wordt nog steeds gebruikt, maar wel in mindere mate. Het doel blijft echter hetzelfde. Hieronder zie je het model van een biometrisch systeem: Biometrisch systeem kenmerk
vastleggen
template
naam
vergelijken
database Figuur3.8 biometrisch systeem
Het systeem bestaat meestal uit twee delen: een enrollmentsysteem om de gebruiker eenmalig te registreren, en een authenticatiesysteem om te bepalen of de persoon voorkomt in de database. Het authenticatiesysteem bestaat uit een verificatie- of identificatiesyteeem. 1. Enrollmentsysteem: Enrollment betekent registratie. Het enrollmentsysteem (figuur 3.9) zorgt ervoor dat de persoon in kwestie zich kan registreren. Gedurende dit proces worden de biometrische kenmerken van de persoon gelezen en vastgelegd in een zogenaamde template of sjabloon. Daarbij wordt tevens de ‘naam’ van de persoon ingegeven. De term 'naam' kunnen we hierbij breed opvatten: het kan je echte naam zijn, een username, pincode, of computer-gegenereerde naam (user001). We gebruiken ook wel de term identiteit.
13
biometrie.doc
Enrolmentsysteem
kenmerk
vastleggen
template
naam
database
Figuur3.9 enrolmentsysteem
Wat wordt opgeslagen is niet de gehele foto (hoeft niet, kan wel), maar enkel de belangrijkste karaktistieken van bijvoorbeeld je gezicht, zoals de afstand tussen ogen, mond en oren. Dit om ruimte te besparen (een hele foto neemt zoveel ruimte in), om identiteitsdiefstal te voorkomen (je wilt niet dat mensen je vingerafdruk uit een systeem kunnen halen en zich vervolgens als jou kunnen voordoen), en omdat je er toch niks aan hebt: vergelijken doe je op basis van enkele kenmerken, niet op basis van een gehele foto. Dat laatste is namelijk vrij complex (het terrein van beeldverwerking), kost veel rekentijd, en gaat nog wel eens mis. Mensen en andere dieren zijn erg goed in beeldverwerking (en gebruiken daar dan ook veel hersencellen voor), maar voor computers is dat vrij lastig. Het vastleggen van kenmerken gebeurt met een sensor, bijvoorbeeld een vingerafdruksensor of irissensor. Een scanner (vingerafdrukscanner, irisscanner) is het gehele apparaat. 2. Verificatiesysteem: Dit systeem zorgt ervoor dat de persoon zich kan aanmelden waarna de persoon wordt geverifieerd. Daarvoor is het altijd nodig om van te voren de identiteit (naam) van de persoon te weten. Verificatietiesysteem
kenmerk
vastleggen
template
vergelijken
Je beweert diegene te zijn
naam
database Figuur3.10 verificatiesysteem
De persoon meldt zich aan bij het systeem, bijvoorbeeld door een kaart door de sensor te halen die zijn naam en iris-template doorgeeft. Er wordt nieuwe biometrische data verzameld en vastgelegd in een template. Het systeem vergelijkt de templates met elkaar, en geeft vervolgens zijn oordeel. 3. Identificatiesysteem: Dit systeem zorgt ervoor dat de persoon zich kan aanmelden waarna de persoon wordt geïdentificeerd. Identificatiesysteem
kenmerk
vastleggen
template
vergelijken
database
14
biometrie.doc
Figuur3.11 identificatiesysteem
De persoon meldt zich aan bij het systeem. Er wordt biometrische data verzameld en vastgelegd in een template. Het systeem vergelijkt de template met alle aanwezige orginele templates in de database. Merk op dat een biometrisch systeem conceptueel kunnen opvatten. De database kan in de scanner zitten, maar ook in de kaart van de gebruiker (zoals bij de privium-kaart). Daarnaast kunnen delen van het systeem ook uitgevoerd worden door mensen, zoals nog wel eens gebeurd in forensisch onderzoek (CSI). Voorbeeld Verifinger (http://www.neurotechnologija.com/) is een vingerafdruk-herkenningssysteem. Je ziet dat het in drie modi kan opereren: a. Enrollment b. Verification c. Identification
Figuur3.12 Verifinger
Bij het vergelijken van templates krijg je een 1op1 overeenkomst bijna of nooit te zien. Als je bij een gezichtsscan iets meer lacht dan de vorige keer, komen de templates niet precies overeen. Is dit erg? Het antwoord is nee. Je kunt bij een biometrisch systeem zelf een drempel (threshold), een mate van tolerantie instellen, waarbij, ook al zijn ze niet 100% identiek, ze toch als identiek gezien worden. In de volgende paragraaf gaan we daar verder op in.
15
biometrie.doc
3.4 Intermezzo: Hammingafstand In deze paragraaf gaan we in op templates, de Hammingafstand tussen templates, en het kiezen van een drempelwaarde (threshold). Willen we biometrisch systeem zodanig inrichten dat deze twee templates automatisch met elkaar kan vergelijken, dan krijgen we dat voor elkaar door te kijken naar de afstand tussen de twee templates. Er zijn verschillende soorten afstandbegrippen in de wiskunde, waaronder de Hammingafstand. Stel dat van een persoon de originele digitale template er uitziet als een rij van 16 bits: 1000 1111 0001 1101 We noemen dit formeel een feature vector; een rijtje van getallen die een bepaald kenmerk representeren. Indien bij aanmelding de vector 1000 1111 0001 1101 wordt vastgelegd, komt deze precies overeen; de persoon wordt toegelaten. Mocht 1000 1111 0001 1100 worden vastgelegd, dan verschilt het origineel op één plaats met de nieuwe template. Kiezen we als drempel een waarde kleiner of gelijk aan 1 dan wordt de persoon toch toegelaten. We gaan het geheel formaliseren: DEFINITIE: De Hammingafstand tussen twee vectoren x, y van dezelfde lengte wordt gedefinieerd als het aantal bits dat we moeten veranderen om de ene vector in het andere te doen veranderen. We noteren dit als volgt: dH (x, y) Voorbeeld Bekijk de vectoren x = 00011 en y = 11011 De Hammingafstand tussen x en y is gelijk aan 2, omdat ze precies op twee plaatsen van elkaar verschillen. Ofwel: dH (x, y) = dH (00011, 11011) = 2 Opgave 8 a. Bereken de Hammingafstand van 0101 0011 en 1010 1111 b. Doe hetzelfde voor 1001 1101 0000 1111 en 1101 1010 0100 1011 Opgave 9 In de database staat de template 1111 0011. We stellen de threshold in op de waarde 2, dat wil zeggen een persoon wordt toegelaten als de afstand kleiner of gelijk is aan 2. Een persoon meldt zich aan. a. De template wordt van deze persoon is 1111 0011. Wordt deze toegelaten? b. De template wordt van deze persoon is 1111 0000. Wordt deze toegelaten? c. De template wordt van deze persoon is 1011 1111. Wordt deze toegelaten?
Zoeken in een database betekent dat de nieuwe template vergeleken moet worden met alle aanwezige templates. Indien we meerdere vectoren (meer dan twee) hebben, kunnen we dus niet spreken over de Hammingafstand, omdat bovenstaande definitie zich beperkt tot paarsgewijze afstand. Om toch te kunnen spreken van de Hammingafstand, passen we de definitie aan en nemen we de minimale afstand van alle paarsgewijze afstanden.
16
biometrie.doc
DEFINITIE: De Hammingafstand tussen vectoren van dezelfde lengte wordt gedefinieerd als de minimale afstand van alle paarsgewijze afstanden. In formulevorm wordt dit:
dH =min{ dH (x, y) | x,y uit een verzameling} Voorbeeld Bekijk x = 00011, y = 11011 en z = 00001. We berekenen de Hammingafstand:
dH (x, y) = dH (00011, 11011) = 2 dH (x, z) = dH (00011, 00001) = 1 dH (y, z) = dH (11011, 00001) = 3 De minimale afstand tussen de drie is gelijk aan 1. De Hammingafstand van deze “codering” is gelijk aan 1. Opgave 10 Bekijk de volgende database van originele templates {0000, 1010, 0011}. We nemen als drempel 1. Een persoon meldt zich aan. a. De verkregen template is 0000. Wordt deze toegelaten? b. De verkregen template is 1101. Wordt deze toegelaten? c. De verkregen template is 1000. Wordt deze toegelaten? Wie je wie deze persoon is?
Opgave 11
Irisscan en Hammingafstand
De Hammingafstand wordt onder andere gebruikt bij irisscans. Lees het artikel in bijlage 2 en beantwoord onderstaande vragen. Het artikel gebruikt een iets andere definitie van Hammingafstand dan hierboven. a. Laat A en B twee vectoren. Wat wordt bedoeld met A⊕B? b. Waarom delen ze door de lengte van A? Kun je eventueel ook delen door de lengte van B? c. (Internet) Uit hoeveel bits bestaat de feature vector van een iris?
Opgave 12
Programmeren
Maak een programma in een taal naar keuze (JavaScript, Java, Delphi, C++, Pascal), waarbij je van twee willekeurige vectoren (van dezelfde lengte) de Hammingafstand bepaalt. Maak gebruik van functies. Zorg tevens voor een gedegen foutenafhandeling. HINT: Hieronder staat het algoritme: Lees van twee vectoren de input Bepaal van beide de lengte Als lengte niet overeenkomt, dan geef waarschuwing. Terug naar begin Als lengte overeenkomt dan vergelijk per positie beide vectoren Als op positie i het karakter overeenkomt doe niets Anders verhoog de afstand met 1
17
biometrie.doc
3.5 Evaluatie van een biometrisch systeem In paragraaf 3.2 vergeleken we biometrische kenmerken/technieken. We zagen dat een vingerafdruk unieker is dan je loopgedrag, en dat DNA-scanners makkelijker te omzeilen zijn dan gezichtscanners. Om precies te weten hoe goed een biometrisch systeem is moeten we het evalueren. Hierbij dienen we rekening te houden met een aantal belangrijke aspecten: a. De geschiktheid van het biometrische kenmerk (universeel, uniek, constant en meetbaar) b. Betrouwbaarheid en nauwkeurigheid van het systeem, waaronder: Hoe vaak laat het systeem een onbevoegde door? (FAR) Hoe vaak weigert het systeem een bevoegde? (FRR) c. Foutgevoeligheid van het systeem, waaronder: Failure To Enroll (FTE) Failure To Acquire (FTA) d. Snelheid van het systeem, waaronder: Matching speed Enrollment time Verification time e. Gebruiksvriendelijkheid f. Fraudegevoeligheid van het systeem g. Kosten van het systeem De geschiktheid van verschillende biometrische kenmerken staan in Tabel 3.1 (blz. 10). De betrouwbaarheid, foutgevoeligheid, snelheid, en gebruiksvriendelijkheid behandelen we hieronder. Fraudegevoeligheid komt aan bod in het fraude-hoofdstuk. Het kostenaspect laten we buiten beschouwing.
3.5.1
Betrouwbaarheid en nauwkeurigheid van het systeem
De betrouwbaarheid van een biometrisch systeem kunnen we meten met statistische methoden, namelijk door te kijken naar het aantal mensen wat ten onrechte wordt geweigerd of ten onrechte wordt toegelaten. Dit hangt sterk samen met de gekozen threshold. Indien een willekeurige persoon zich aanmeldt bij een biometrisch systeem dan kunnen er twee scenario’s voordoen. Behoort de persoon tot diegenen die toegang moeten krijgen, dan kan het systeem deze toelaten (true acceptation) of weigeren (false rejection). Is de persoon niet bevoegd, dan kan deze toch worden toegelaten (false acceptation) of hopelijk worden geweigerd (true rejection). False betekent ten onrechte, en dat wil je dus voorkomen. Hieronder zijn de scenario's uiteengezet: Antwoord Persoon Geoorloofd persoon Niet geoorloofd persoon
Accepted
Rejected
true acceptation false acceptation
false rejection true rejection
Tabel 3.2 4 scenario’s
Opgave 13 Wat zou je erger vinden; een false rejection of een false acceptation? Motiveer je antwoord.
De betrouwbaarheid van een systeem kunnen we nu als volgt meten: Het percentage personen die ondanks de bevoegdheid niet worden toegelaten noemen we False Rejection Rate (FRR). Er geldt: FRR =
aantal keren false rejection × 100% aantal aanmeldingen door bevoegden 18
biometrie.doc
Het percentage personen die ondanks de onbevoegdheid toch worden toegelaten noemen we False Acceptance Rate (FAR). Er geldt:
FAR =
aantal keren false acceptance × 100% aantal aanmeldingen door onbevoegde n
De waarden zijn afhankelijk van de grootte van de threshold dat je instelt. Bij iedere threshold kunnen we de waarde van FAR en FRR uitrekenen. In een van de opgaven gaan we dit doen. We zouden graag willen dat FRR en FAR geminimaliseerd worden. Ze zijn echter afhankelijk van elkaar. Verklein je de ene fout dan vergroot je de andere en andersom. Stel dat je het tolerantieniveau verhoogt (we maken het systeem toleranter), dan verlaag je de FRR, wat betekent dat er meer bevoegden worden toegelaten (zoals het hoort!). Echter, het leidt er ook toe dat er meer onbevoegden worden doorgelaten (FAR stijgt). Dit is logisch: hoe toleranter een systeem, hoe meer mensen het toelaat (bevoegden én onbevoegden). Hoe intoleranter (strikter) een systeem, hoe minder mensen het toelaat. Hieronder (figuur 3.13) zie je de mogelijke grafieken waarbij zowel FRR als FAR zijn uitgezet tegen het tolerantieniveau. 100
100 FRR
FAR
%
%
0 0
∞
0 0
∞
tolerantieniveau
tolerantieniveau
Figuur3.13 FRR en FAR uitgezet tegen het tolerantieniveau.
Beide grafieken plaatsen we in één assenstelsel. Je ziet dat een verhoging/verlaging van het tolerantieniveau tegelijkertijd een positief als negatief effect heeft: verlaag je de FRR dan verhoog je de FAR en andersom. De twee grafieken hebben een snijpunt. We noemen dit punt Equal Error Rate (EER). Het geeft het aantal personen weer wat ten onrechte wordt toegelaten/geweigerd, en vormt daarmee een goede indicatie van de betrouwbaarheid van een systeem. Hoe lager deze waarde des te betrouwbaarder is het systeem.
100 FRR
FAR
%
0
0
∞ tolerantieniveau Figuur3.14 - ROC curve - invloed van tolerantieniveau voor FAR en FRR
19
biometrie.doc
We kunnen tevens FRR en FAR tegen elkaar uitzetten. In figuur 3.15 zie je dit weergegeven aan de hand van twee krommen: de geïdealiseerde lijn en de werkelijke lijn. Beide figuren (figuur 3.14 en 3.15) zijn ROC-curves, wat staat F voor (Receiver Operating Characteristic).
1
R R
0 FAR
0
1
Figuur3.15 ROC curve - FAR vs FRR
De betrouwbaarheid van verschillende biometrische technieken is hieronder weergegeven:
Tabel 3.3 [14]
Opgave 14 Welke van de twee foutsoorten (FAR en FRR) heeft te maken met de gebruiksvriendelijkheid van het systeem? Bij welke hoort de veiligheid/betrouwbaarheid? Motiveer je antwoord. Opgave 15 Hiernaast zie je nogmaals een grafiek waarbij FAR is uitgezet tegen FRR. De stippen gegeven de verschillende tolerantieniveaus T aan. a. Geef in de grafiek het punt EER aan. b. Waarom zal FAR = 0 en FRR = 0 in de praktijk niet voorkomen? c. Gegeven zijn de drie systemen: 1. highly secure system 2. forensic system 3. civilian system Omcirkel het deel van de grafiek die bij deze 3 systemen hoort. Verklaar je nader.
1
F R R
0
FAR
1
Figuur3.16 FAR vs FRR
20
biometrie.doc
Opgave 16
Figuur3.17 ROC curves
Om een biometrisch systeem te testen op betrouwbaarheid, worden vaak standaarddatabases gebruikt van bijvoorbeeld vingerafdrukken of gezichten. Zo kun je beter een vergelijking maken met andere systemen of bepaalde aspecten in het systeem zelf. Een van de standaarddatabases die gebruikt wordt bij vingerafdrukken is afkomstig van de FVC2002 (Fingerprint Verification Competition 2002). Deze bestaat uit vier databases gemaakt met verschillende sensoren: • • • •
DB1: optical sensor "TouchView II" by Identix DB2: optical sensor "FX2000" by Biometrika DB3: capacitive sensor "100 SC" by Precise Biometrics DB4: synthetic fingerprint generation
Het programma Verifinger is gebruikt om Bij ieder databases de ROC curve te plotten (figuur 3.17). a. Geef bij iedere kromme de waarde van FRR bij FAR = 0,001%. b. Geef bij ieder van de krommen de waarde van EER. c. Stel dat het syteem gebruikt gaat worden bij Schiphol Airport voor paspoortcontrole (tegenwoordig gebruikt men onder andere de irisscan). Jaarlijks heeft Schiphol 3.214.700 passagiers. We maken gebruik van de de optische sensor “FX2000: . Hoeveel personen verwacht je die ten onrechte toegang tot ons land verkrijgen? Hoeveel personen worden ten onrechte geweigerd?
Opgave 17 In deze opgave gaan we de waarde van FRR en FAR bereken aan de hand van enkele iriscodes en daarmee gaan we een ROC- curve tekenen. Stel dat je een verzameling hebt van 12 iriscodes behorende bij 4 verschillende personen. Dat wil zeggen dat er per persoon 3 samples zijn genomen. a. Waarom zou je 3 samples nemen in plaats van slechts een enkele? De iriscodes hebben in deze opgave een lengte van lengte 16 bits (normaal is dat 512 bytes!). De 12 iriscodes zijn als volgt genummerd: 21
biometrie.doc
Persoon A: A1: 1001 1000 0000 0000 A2: 1001 1000 0000 0000 A3: 1001 1000 0001 0000 Persoon B: B1: 1011 1000 0000 1111 B2: 1001 1001 0000 0000 B3: 1001 1000 0000 0000 Persoon C: C1: 0001 1000 1111 0011 C2: 0001 1110 1111 0011 C3: 0001 1001 1111 0011 Persoon D: D1: 0000 1000 0101 0000 D2: 0000 1000 0101 0000 D3: 1001 1000 0110 0011 We kunnen voor ieder paar iriscodes de bijhorende Hammingafstand berekenen. b. Hoeveel paren zijn er totaal? Hoe vaak moet je dus de berekening uitvoeren? Om de FRR te berekenen dienen we niet ieder paar met elkaar te vergelijken, maar alleen de paren behorende bij dezelfde persoon. En indien we A1 hebben gematched met A2 hebben we automatisch, wegens symmetrie, A2 gematched met A1. Deze halen we er daarom ook uit. De paren A1-A1, A2-A2 en A3-A3 zijn tevens overbodig (waarom?). We krijgen dus de volgende vergelijkingen: template A1 A2
vergelijking A2, A3 A3
template B1 B2
vergelijking B2, B3 B3
template C1 C2
vergelijking C2,C3 C3
template D1 D2
vergelijking D2, D3 D3
We hebben dus in totaal 12 “aanmeldingen” door bevoegden. We nemen als threshold achtereenvolgens de waarden 0, 2, 4, 6, ….,16. c. Bereken de FRR bij iedere threshold. . d. Stel dat we in totaal 70 gebruiker hebben waarbij iedere gebruiker 10 samples heeft. Hoeveel vergelijkingen dienen er gemaakt te worden? Er zijn verschillende manieren om de FAR te berekenen. We kunnen bijvoorbeeld A1 vergelijken met ieder element uit het rijtje B1, B2, B3, C1,…,D3. Dit gaan we niet doen. We maken de volgende vergelijkingen: 22
biometrie.doc
template A1 B1 C1
vergelijking B1, C1, D1 C1, D1 D1
template A2 B2 C2
vergelijking B2, C2, D2 C2, D2 D2
template A3 B3 C3
vergelijking B3, C3, D3 C3, D3 D3
We hebben dus in totaal 24 “aanmeldingen” door onbevoegden We nemen als threshold wederom de waarden 0, 2, 4, 6, ….,16. e. Bereken de FAR bij iedere threshold. f. Zet de waarden van c. en e. uit in een grafiek. Neem horizontaal FAR van 0% t/m 100%. Neem verticaal FRR van 0% t/m 100%. g. Geef een “schatting” van EER.
3.5.2
Foutgevoeligheid van het systeem
Het kan zo zijn dat een aantal personen zich niet kunnen laten registreren doordat ze bijvoorbeeld niet de benodigde biometrische kenmerken hebben (afwezigheid van vingers) of omdat deze te “zwak” aanwezig zijn (bij ouderen en handwerklieden), waardoor er geen template gemaakt kan worden. Dergelijke fouten noemen we Failure To Enroll (FTE). Hieronder een aantal oorzaken waardoor deze fout kan optreden: a. (vingerafdruk): huidziekte, droge of versleten vingerafdruk (bij ouderen) b. (stemherkenning): heesheid c. (iris-scan): staar Zelfs als mensen succesvol geregistreerd zijn, kan het voorkomen dat ze zich (tijdelijk) niet kunnen authenticeren. Er wordt dan een template gemaakt van het biometrisch kenmerk, maar deze bevat de verkeerde of te zwakke informatie. Dergelijke fouten noemen we Failure To Acquire (FTA). Een match wordt daardoor bemoeilijkt. Hieronder een aantal oorzaken waardoor deze fout kan optreden: a. vieze vingers, snee in je vinger, verkeerde vinger, vinger schuin erop gelegd b. verkoudheid, mompelen, teveel achtergrondgeluid, stem is veranderd over de jaren c. oogleden dicht, kijkt niet goed in de scanner, slechte belichting Voorbeeld Hieronder zie je een overzicht van bovengenoemde fouten. De tabel betreft het onderwerp gezichtsherkenning, waarbij onder 3 verschillende belichtingssterkte (in Lux) de fouten zijn berekend.
23
biometrie.doc
Tabel 3.4 FTE en FTA [8]
3.5.3
Snelheid van het systeem
De snelheid van het systeem is tevens een belangrijke factor. Het is een maat voor efficiency. Dit betreft onder andere de snelheid waarmee het systeem een template kan maken en de snelheid waarmee de templates worden vergeleken. We maken onderscheidt tussen: a. matching speed: snelheid waarmee het systeem twee templates met elkaar kan vergelijken. Dit wordt vaak uitgedrukt in het aantal matches per seconde (800 vingerafdrukken/sec) b. enrolment time: tijd die nodig is om een persoon te registreren c. verification time: tijd die nodig is om een persoon te verifiëren
3.5.4
Gebruiksvriendelijkheid van het systeem
Systemen kunnen erg verschillen in gebruiksvriendelijkheid, en zijn dan ook meer of minder geaccepteerd onder het publiek. Retina-scanners vereisen dat je je oogkas tegen de scanner drukt (net als bij een microscoop), terwijl iris-scanners van afstand werken (enkele decimeters). Loopgedrag-detectie kan al helemaal van afstand (enkele meters) en zonder interactie met de gebruiker, wat voor- en nadelen heeft: de gebruiker hoeft niks te doen (voordeel), maar heeft ook geen controle over de identificatie (nadeel). Gebruiksvriendelijkheid hangt ook af van FRR, FTE en FTA. Als bevoegd persoon wil je zo min mogelijk geweigerd worden (FRR), ook als je eens een keer vieze vingers hebt (FTA). Snelheid en fraudegevoeligheid spelen ook een rol: je wilt zo snel mogelijk door kunnen, en wilt absoluut niet dat iemand er met je identiteit vandoor gaat.
24
biometrie.doc
3.6 Ontwerp van een biometrisch systeem In paragraaf 3.3 hebben we een beschrijving gegeven van een biometrisch systeem (zie hieronder). Biometrisch systeem vastleggen
kenmerk
template
naam
vergelijken
database Figuur3.18 biometrisch systeem
In dit hoofdstuk gaan we het systeem op een dieper niveau bekijken. We laten de gestippelde pijlen voor het gemak weg: Biometrisch systeem kenmerk
sensor
resultaat
preprocessing
feature extraction eextraction exx
naam
template
matchen
database Figuur3.19 biometrisch systeem
Hoe gaat het in zijn werk: a. Met behulp van een sensor wordt het biometrisch kenmerk gescand en met een A/D (analog to digital) converter omgezet in een digitaal beeld. b. pre-processing (voorbewerking) van de digitale afbeelding. Dit proces kost eigenlijk de meeste tijd. Afhankelijke van het biometrisch kenmerk kun je de volgende processen verwachten: 1. image - enhancement: verbetering van de kwaliteit van de afbeelding, bijvoorbeeld het eruit halen van ruis. 2. normalization: alle afbeeldingen ongeveer gelijk maken. Bijv: de kleurwaarden waaruit de afbeelding bestaat worden teruggebracht naar een vooraf bepaalde range van kleurwaarden 3. segmentation: de achtergrond wordt gescheiden van de voorgrond. Voordat er überhaupt aan gezichtsherkenning kan worden gedaan, dient de computer eerst te weten waar het gezicht zich in die afbeelding bevindt (gezichtsdetectie). Je scheidt dus het gebied waarin je geïnteresseerd in bent van de achtergrond. 4. binarization: je maakt van de afbeelding een puur zwart-wit afbeelding 5. thinning: je maakt van alle contouren van de afbeelding een contour met een breedte van één enkele pixel. c. feature-extraction haalt er handige features (kenmerken) uit, bijvoorbeeld het aantal bergen, aantal dalen, en gemiddelde afstand tussen bergen en dalen. (Dit zijn geen handige features, maar daar komen we later op), bijvoorbeeld AB = 0111, AD = 111 en GA = 0011. d. de features worden opgeslagen in een template, 01111110011 25
biometrie.doc
e. de template wordt opgeslagen in de database (bij enrollment) of wordt gematched met de bestaande templates (identificatie) of gematched met de 'naam' (verificatie). Het matchen gebeurt met een bepaald matchingsalgoritme, bijvoorbeeld de Hammingafstand. Opgeslagen templates kunnen eventueel in klassen worden ingedeeld om minder te hoeven zoeken. f. het resultaat wordt zichtbaar: het systeem geeft de persoon wel/niet toegang, print een foutmelding, of geef aan dat enrollment is gelukt. De verschillende pre-processing-technieken worden behandeld in het volgende hoofdstuk. Niet alle technieken worden besproken, omdat deze eigenlijk behoren bij het vakgebied computervision of digital image analysis en nogal complex zijn.
Stel dat je zelf een biometrisch systeem wil maken, dan heb je het volgende nodig: 1. een computer met database (voor het opslaan van de templates) 2. een sensor (voor het lezen van de biometrisch gegevens) en application device (voor het geven van de uitvoer) 3. software: voor het uitvoeren van alle stappen in het systeem: pre-processing, feature-extraction, het maken van de template, het matchen, etc. Vervolgens kun je het systeem als volgt maken: 1. bepaal menselijk kenmerk waarop te scannen (bijv structuur van gezicht) 2. bepaal de te meten kenmerken (bijv afstanden tussen ogen, neus, mond, en oren) 3. bedenk een handige representatie (bijv 6 decimale cijfers) 4. bouw de scanner 5. bepaal de drempelwaarde 6. zorg voor een pc met database, een link naar de scanner, en een output device 7. schrijf code voor: (1) preprocessing en feature extraction, (2) het vastleggen van de kenmerken in een template, en (3) het vergelijken van de nieuwe template met de opgeslagen templates 8. je systeem is nu klaar: laat mensen zich registreren en ze kunnen het voortaan gebruiken Mocht je al een werkende scanner hebben, dan kun je stappen 1-4 overslaan. Alle keuzes hebben gevolgen: • sensoren zijn meer/minder accuraat, gebruiksvriendelijk en fraudegevoelig • de features moeten handig gekozen worden (bij iedereen aanwezig, makkelijk detecteerbaar, zelfs detecteerbaar bij ruis) • zoekalgoritmes verschillen in snelheid en betrouwbaarheid • indelen in klassen versnelt het zoeken maar vereist extra software en kan problemen geven
Opgave 18
Identification demo
(computer)
We gaan in deze opgave een biometrisch systeem uitproberen. 1. unzip IDdemo.zip in de map /hulpsoftware/. Het programma werkt alleen op Windows 2000/XP met microsoft .NET framework 2. unzip IDDemo_db1000.zip, ook in de map /hulpsoftware/, en kopieer het bestand wat eruit komt (idkit.db) naar de IDdemo map waar je het bestand idkit.db overschrijft. Je overschrijft nu een lege database met een database van 1000 vingerafdrukken. Eventueel zou je beide stukken software (IDdemo en de vingerafdrukken database) ook kunnen downloaden van http://www.innovatrics.com/products/iddemo/, alleen dan moet je ze installeren en waarschijnlijk geeft je school daar geen rechten voor (anders zou je vanalles kunnen gaan installeren). a. Speel met de sofware, en doorloop de interne database (browse database). Je ziet dat de structuur van vingerafdrukken flink kan verschillen. Kun je van één persoon ook meerdere vingers registreren? b. download de fvc-vingerafdruk-database: http://bias.csr.unibo.it/fvc2002/Downloads/DB1_B.zip en doorloop de plaatjes. Je ziet dat ook de kwaliteit van vingerafdrukken flink kan verschillen. Bij de 26
biometrie.doc
Fingerprint Verification Contest (fvc) is expres gekozen voor verminkte plaatjes (schuin, te vaag, te hard gedrukt, etc) om het de scanners moeilijk te maken. c. Start IDdemo en ga naar settings: - Zet scanner settings op browse (zodat je plaatjes kan importeren ipv ze van een scanner te moeten lezen) - zet 'number of best candidates' op 4. Probeer wat plaatjes (registreren en daarna matchen), kijken of de matcher ze goed matched. Doet de software aan verificatie of identificatie? d. Vermink een vingerafdruk, bijvoorbeeld in Microsoft Paint (start > uitvoeren > mspaint). Kijk tot hoever je kunt gaan totdat identiticatie niet meer lukt. De blauwe balk geeft aan hoe goed de matching is. Hoe kan het zo lang goed gaan? Hoe zou het matchen werken? PS: Bij het sluiten van de software krijg je een foutmelding. Gewoon negeren.
27
biometrie.doc
4 Technieken 4.1 Digitaliseren van afbeeldingen Een digitale afbeelding bestaat een eindig aantal pixels (hokjes). Het woord 'pixel' is een samentrekking van de woorden 'picture' en 'element'. Hieronder zie je een digitale foto van een van de auteurs van deze module. Een klein deel van de gitaar is uitvergroot. De pixels zijn te herkennen als hokjes.
Figuur4.1 uitvergroting van een deel van de gitaar
Een afbeelding bestaande uit gekleurde pixels noemen we een bitmapafbeelding. We kunnen een bitmapafbeelding dus vergelijken met een tekening die gemaakt is op ruitjespapier. Er is slechts één spelregel: de tekening moet zo gemaakt worden dat per vakje slechts één kleur gebruikt mag worden en zodanig dat hele vierkanten ingekleurd moeten worden. Bovenstaande afbeelding is een voorbeeld van een bitmapafbeelding. Willen we een afbeelding van bijvoorbeeld een vingerafdruk in een computer plaatsen dan betekent dat we de continue (analoge) scala aan kleurwaarden die een vinger heeft, terug moeten brengen naar een discontinu (discrete) aantal kleurwaarden (het geheugen is eindig!!!). Hoe dat precies gaat, komen we in de volgende paragraaf op terug. In figuur 4.2 zie je een persoon aan een tafel zitten. De afbeelding bestaat uit 12 x 19 = 228 pixels. De pixel helemaal links bovenaan heeft als coördinaten (0,0). De pixel rechts onderaan heeft als onderaan heeft als coördinaten (19,12). We noteren dit als pixel[0,0] en pixel[19,12].
Figuur4.2
28
biometrie.doc
4.1.1
Hoe komt een digitale afbeelding tot stand?
Hieronder staat een korte beschrijving van het principe van de werking van een scanner:
Figuur4.3 principe werking van een scanner [5]
Fig1 toont een willekeurig zwart-wit plaatje. Om het plaatje wordt een raster gelegd (fig2). Elk hokje wordt op basis van het originele figuur zwart of wit gevuld (fig3). Een zwart hokje wordt weergegeven met een 1, en een wit hokje met een 0 (fig4). Deze rijen van nullen en enen worden vervolgens achterelkaar gezet (!) tot één lange string. Om het originele plaatje terug te krijgen voldoet het om de rij weer te verknippen en onder elkaar te zetten.
4.1.2
Kleurdiepte
De kleurdiepte is het aantal bits dat wordt gebruikt om de kleur van één pixel te definiëren. Met slechts één enkele bit kunnen we twee "kleuren" maken: zwart en wit (zoals hierboven), maar het zouden ook de kleuren groen en geel kunnen zijn. Hieronder zie je een schema met de verschillende kleurdiepten. Omdat we kleur nog niet formeel hebben gedefinieerd, is slechts gewerkt met grijswaarden: 1 bit Dit wordt ook wel een monochrome of zwart/wit afbeelding genoemd. We hebben slechts twee kleuren, zwart en wit, waarbij zwart wordt voorgesteld door een 0 en wit door een 1.
2 bits: de waarden 00, 10, 01 en 11
3 bits: de waarden 000 t/m 111
29
biometrie.doc
……….
8 bits Iedere pixel gebruikt 1 byte (8 bits). We hebben totaal 256 (0 t/m 255) verschillende grijswaarden.
4.2 Kleurmodellen In de natuur om ons heen komen oneindig veel kleuren en kleurgradaties voor. Iedere kleur heeft namelijk zijn eigen specifieke golflengte. Hieronder staat het zichtbare spectrum.
. Figuur4.4 zichtbaar spectrum.
Om al deze kleuren in een computer te kunnen representeren hebben we oneindig veel getallen nodig, namelijk één getal voor elke golflengte. Dit is natuurlijk niet realiseerbaar, omdat een geheugen met oneindige grootte niet kan bestaan. Om die kleuren te digitaliseren maken we gebruik van kleurmodellen (model = vereenvoudigde vorm van de werkelijkheid). We bespreken in de volgende paragraaf de twee belangrijkste modellen, namelijk: • •
4.2.1
het RGB- model het CMY- model
RGB- kleurmodel
Kleuren kun je maken door bestaande kleuren te mengen. Bij het digitaliseren van een afbeelding wordt hiervan gebruikt gemaakt. Een manier om kleuren te beschrijven is met behulp van het RGB- model (de primaire kleuren/basiskleuren zijn Rood, Groen en Blauw). Dit model is een vereenvoudiging van de manier waarop de mens kleuren waarneemt. De kleuren worden in dit model genoteerd als een triple (R,G,B), waarbij de eerste waarde de hoeveelheid (= intensiteit) aan rood weergeeft, de tweede de hoeveelheid aan groen en de derde de hoeveelheid aan blauw. De kleur zwart is de afwezigheid van kleur. Geven we een uitdrukking met behulp van procenten, dan kunnen we zwart dus noteren als (0%, 0%, 0%). De kleur wit is de maximale aanwezigheid van al de drie kleuren. We kunnen wit noteren als (100%, 100%, 100%). In de praktijk gebruiken we voor het aangeven van een kleur niet een uitdrukking in procenten, maar in bits. Voor de codering elk van de basiskleuren, dat wil zeggen rood, groen of blauw, wordt namelijk 1 byte gebruikt (8 bits). Dat wil zeggen dat er 256 ( = 2 8 ) verschillende gradaties rood, groen en blauw zijn. Omdat deze kleuren elk afzonderlijk een waarde toegekend wordt ( variërend van 0 t/m 255 ) zijn er 256 x 256 x 256 = 16.777.216 verschillende kleuren mogelijk. Dit is al een stuk beter dan oneindig veel kleuren. En aangezien een mens slechts 400.000 kleur-nuances kan onderscheiden, hebben we meer dan genoeg! Zwart wordt genoteerd als (0, 0, 0) en wit als (255, 255, 255). Indien we voor een kleur 3 bytes gebruiken, noemen we dit ook wel 24-bits kleuren of true colors. Hieronder zie je nogmaals de persoon aan de tafel. Dit keer zijn de kleuren erbij gezet. 30
biometrie.doc
Figuur4.5 RGB kleurwaarden.
Het beeldscherm van een computer maakt onder andere gebruik van het RGB- model. Indien je het beeldscherm van dichtbij bekijkt (bij oudere modellen) zie je de drie basiskleuren bij elkaar zitten. Het model wordt ook wel additief genoemd, omdat de drie kleuren aan zwarte achtergrond (beeldscherm is dan uit) worden toegevoegd om zo de andere kleuren te krijgen. Figuur4.6 rgb kleurwaarden en beeldscherm
Door te werken met verschillende onderlinge verhoudingen van rood/groen/blauw kunnen verschillende kleuren ontstaan. Een verandering in de verhouding betekent dan ook een verandering van kleur. Hiernaast zien we het dat: - rood + groen = geel - rood + blauw = paars/magenta - blauw + groen = turkoise/cyaan - rood + groen + blauw = wit Figuur4.7 additief
Opgave 19 De kleuren in het model worden vaak als een kubus afgebeeld, waarbij de triple (R,G,B) wordt beschouwd als coördinaten in én op de kubus. De oorsprong heeft als coördinaten (0,0,0). Dit representeert de kleur zwart. Elk van de kleuren rood, groen, blauw, magenta, cyaan en geel, evenzo zwart als wit, wordt voorgesteld als een van de hoekpunten van de kubus. a) In de afbeelding zijn bij enkele van de hoekpunten al de kleuren ingevuld: zwart=(0,0,0), wit=(255,255,255), geel=(255,255,0) en rood=(255,0,0). 31
biometrie.doc
Vul onderstaande tabel verder in: hoekpunt
kleur
(0, 0, 0) (255, 0, 0) (0, 255, 0) (0, 0, 255) (255, 255, 0) (255, 0, 255) (0, 255, 255) (255, 255, 255)
zwart rood
geel
wit
Voor een mooie overgang van de ene kleur naar de andere kleur worden de hoekpunten verbonden met rechte lijnen (anders hadden we ook geen kubus!). We beginnen in (255,255,255) en lopen in de richting van (255,255,0). We krijgen dan een "geleidelijke" overgang van wit naar geel. b. We trekken een lijn van (0,0,0) naar (255,255,255) (een lichaamsdiagonaal). Schrijf een aantal coordinaten op die je tegenkomt. Welke kleurwaarden zijn dat? Hoeveel van deze kleurwaarden hebben we in totaal?
4.2.2 CMY- kleurmodel Dit model wordt beschreven met de drie kleuren Cyaan, Magenta en Geel. We krijgen andere kleuren door substractie, dit in tegenstelling tot de het RGBmodel waarbij we de andere kleuren krijgen door additiviteit.
Een printer werkt met het CMY- model. In in principe kun met deze kleuren iedere kleur krijgen, maar in de praktijk blijkt het niet mogelijk puur zwart te krijgen (je krijgt dan donkerblauw). Om toch puur zwart te creëren wordt vaak toch de kleur zwart (blacK) bij dit model gebruikt. We noemen dit het CMYKmodel.
Figuur4.8 substractief
Opgave 20 Om de kleuren die je op de monitor ziet ook te kunnen printen, moet er een conversie plaatsvinden van RGB naar CMYK. Dit wordt door de printerdriver gedaan. In deze opgave ga je de formule onderzoeken die betrekking heeft op deze conversie. Hiernaast staat een CMYK- kubus: a. Geef bij de overige hoekpunten in de kubus de juiste kleuren. b. Geef een formule om het RGB- model om te zetten in het CMYK- model. c. Een grijswaarde is bijvoorbeeld (120,120,120), uitgedrukt in de RGBwaarde. Welke CMY-waarde hoort hierbij?
32
biometrie.doc
Opgave 21
programmeren
Schrijf een programma in een taal naar keuze (JavaScript, Java, Delphi, C++, Pascal), met de volgende specificatie: Het programma kan een willekeurige .bmp afbeelding inlezen en laten zien. De afbeelding kan worden geconverteerd naar grijswaarden én naar puur zwart-wit (binarization). HINT: Om bij een RGB- waarde de juiste grijswaarde te vinden maak je gebruik van de volgende formule: Grijswaarde = 0,30 x rood + 0,59 x groen + 0,11 x blauw Deze formule wordt gebruikt om tv-programma’s die in kleur worden uitgezonden op een zwart-wit tv te kunnen bekijken. Hieronder zie je een aantal grijswaarden met de bijbehorende kleuren.
Figuur4.9 bron: http://www.pragma-ade.nl/articles/art-colo.pdf
PS: het wordt een stuk ingewikkelder indien je een willekeurige afbeelding (bijvoorbeeld .jpg) inleest. In Delphi krijg je dan bijvoorbeeld zoiets als: if (ExtractFileExt(open.FileName) = '.jpg') or (ExtractFileExt(open.FileName) = '.jpeg') then begin jpg := TJpegImage.Create; jpg.LoadFromFile(open.FileName); bitmapImage.Picture.Bitmap.Assign(jpg); jpg.Free; end;
Om de kleuren samen te vatten:
figuur4.10 RGB/additief (links), CMYK/substractief (rechts), [15]
33
biometrie.doc
Voor nog meer feeling met kleurmodellen (RBG, CMYK) en kleurcodes (asboluut, relatief, hexadecimaal), kun je gebruik maken van een zelfontwikkelde kleurenmixer. Je kunt deze vinden bij http://www.few.vu.nl/~jdruiter/biometrie/hulpsoftware/. Merk op dat RGB alleen werkt bij een zwarte achtergrond, en CMYK bij een witte achtergrond. 4.2.3
Kleurmodellen en gezichtsherkenning
Gezichtsherkenning gebeurt in 5 stappen, die we eventueel in kleinere stappen kunnen verdelen: 1. afbeelding maken 2. vindt het gezicht in de afbeelding (gezichtdetectie, segmentation) 3. extraheer de kenmerken (feature extraction) 4. vergelijk de templates (matching) 5. doe een uitspraak Gezichtsdetectie is het vinden van een gezicht of van gezichten in een afbeelding. Een van de gemakkelijkste manieren om een gezicht uit een omgeving te filteren is door ervoor te zorgen dat indien je een kleurenfoto neemt, je dat doet bij een monochrome achtergrond. Je haalt alle pixels van de achtergrondkleur weg en houdt het gezicht over. De omgeving op straat is echter niet zo gecontroleerd: verschillende kleuren, weinig contrast, meerdere gezichten, gezichten die elkaar overlappen, slechte belichting, etc. Om daar de gezichten uit de vissen is best complex. Mensen zijn er goed in (en we gebruiken er dan ook miljoenen neuronen voor), maar om het te formaliseren is lastig. Stel je voor: 100x100 gekleurde pixels, hoe herkennen we daar een gezicht in? Oplossingen komen in de vorm van edge detection en neurale netwerken. Een andere manier is skindetection. Dit bespreken we hieronder. Het RGB-model gebruikt de kleuren Rood, Groen en Blauw. In al die drie de kleuren zit impliciet een component helderheid. Het YCbCr-model is een model waarbij helderheid gescheiden wordt van kleur; het wordt veel gebruikt in videosystemen. De Y geeft de waarde van de luminantie (helderheid) weer. Cb is de kleur blauw, waarbij de helderheid eruit is gehaald. Cr is de kleur rood waar tevens de helderheid uit is gehaald. Er geldt: Y = 0,288 x R + 0,588 x G + 0,114 x B + 16 Cb = 0,148 x R - 0,291 x G + 0,439 x B + 128 Cr = 0,439 x R - 0,368 x G - 0,071 x B + 128 De componenten Cb en Cr geven een indicatie of een pixel tot de huid behoort of niet [7]. In figuur 4.11 zie je Cb en Cr tegen elkaar uitgezet. De cluster van punten geven de kleuren weer van de huid. Je ziet dat huidskleur eigenlijk een vrij compact gebied bestrijkt en gelukkig niet verspreidt is over het geheel. We hebben te maken met huid indien: 140 < Cb < 165 105 < Cr < 135 Figuur4.11 bron [7]
Opgave 22
programmeren
a. Schrijf een programma met de volgende specificatie: Het programma kan een willekeurige .bmp afbeelding inlezen en laten zien. De afbeelding detecteert een gezicht of gezichten met behulp van het YCbCr-model. Zorg ervoor dat de huid wit wordt. De rest wordt zwart. Test het programma uit op een aantal afbeeldingen. Datasets zijn hier te vinden: 34
biometrie.doc
o o o
jpg: http://www2.imm.dtu.dk/~aam/datasets/imm_face_db.zip bmp: http://www2.imm.dtu.dk/~aam/datasets/face_data.zip moeilijk: http://vasc.ri.cmu.edu/idb/html/face/frontal_images/index.html
b. Lees de tekst van Bijlage3. Welke algoritme passen ze hier verder nog toe?
4.3 Afstandfuncties en metrieken Een biometrisch systeem dient twee templates (in de vorm van een feature vector) automatisch met elkaar te vergelijken. We krijgen dat voor elkaar door te kijken naar de afstand tussen de twee templates. Is de afstand klein genoeg dan hebben we een match. Er zijn verschillende soorten afstandbegrippen in de wiskunde. Een ervan hebben we al in paragraaf 3.4 behandeld: de Hammingafstand. In deze paragraaf gaan we dieper op het begrip afstand in. We kijken naar zogenaamde metrieken. Opgave 23 Gegeven is het assenstelsel van hiernaast met daarin twee punten X en Y. a. Geef de coördinaten van X en Y b. Bereken de afstand van X naar Y.
y Y X 1 0
1
x
Naar alle waarschijnlijkheid zul je bij opgave 23 de Stelling van Pythagoras hebben gebruikt. Je hebt de Euclidische afstand berekend, namelijk de lengte van de schuine lijn. DEFINITIE: Stel X = (x1, y1) en Y =(x2, y2) twee willekeurige punten in het platte vlak (R²). De Euclidische afstand tussen X en Y wordt gedefinieerd door: d(X, Y) =
(x1 − x 2 )2 + (y1 − y 2 )2
Er zijn ook andere afstandsbegrippen die we op het platte vlak kunnen definiëren, zoals: 1. Euclidische afstand 2. Manhattan afstand 3. Chebyshev afstand 4. Absolute afstand 5. Gewogen absolute afstand Voorbeeld Bij de Manhattan afstand (ook wel: city block distance) kun je denken aan afstanden die een taxi moet afleggen door de de blokken-indeling van Manhattan New York. Hiernaast zie je de Euclidische als Manhattan afstand tegen elkaar uitgezet. Rood/blauw/geel zijn de Manhattan afstand (allemaal dezelfde lengte: 12), groen de Euclidische afstand (lengte = √(6² + 6²) = √72 ≈ 8.48) 35 Figuur 4.12 Euclidische vs Manhattan afstand
biometrie.doc
Daarnaast zijn er afstandsbegrippen op andere verzamelingen dan R². De Hammingafstand is een afstandfunctie op de verzameling van binaire rijen van een bepaalde lengte. De Hausdorffafstand is een afstandsbegrip tussen twee verzamelingen. Dit wordt onder andere gebruikt bij face-detection. 4.3.1
Waarom niet één afstandsbegrip?
Iedere afstandsfunctie heeft voordelen en nadelen t.o.v. andere functies. Een voordeel van de Euclidische afstand is dat deze niet verandert indien we een figuur gaan roteren. We noemen dit rotatie-invariant. Indien we een vinger iets schuin op de sensor plaatsen dan blijft de afstand tussen twee relevante punten van de vinger hetzelfde als voorheen. Zo zijn er tevens een aantal functies die invariant zijn onder vervorming. Vaak worden er zelfs combinaties van functies gebruikt. 4.3.2
Kenmerken van metrieken
Bovenstaande afstandsfuncties zijn metrieken. Welke eigenschappen een metriek heeft, wordt hieronder opgesomd. DEFINITIE: Laat V een willekeurige verzameling en x, y en z uit V. We noemen d een afstandsfunctie of metriek op V als deze voldoet aan de volgende eisen: 1. d (x, y) ≥ 0 voor alle x, y uit V. 2. d (x, y) = 0 ⇔ x = y 3. d (x, y) = d (y, x) voor alle x, y uit V (symmetrie) 4. d (x, y) + d (y, z) ≥ d (x, z) voor alle x, y en z uit V (driehoeksongelijkheid) Voorbeeld We nemen de Euclidische afstand. Zie de definitie op de vorige bladzijde. We gaan bewijzen dat d een metriek is op de verzameling van punten op R². Commentaarregels zijn bij de berekeningen bijgevoegd. • d(x, y) ≥ 0 ⇔ De optelling van twee kwadraten is altijd positief. De wortel kan hieruit getrokken worden. We krijgen dus een niet-negatieve uitkomst. •
d (x, y) = 0 ⇔
(x1 − x 2 )2 + (y1 − y 2 )2 = 0
⇒ (x1 − x 2 )2 + (y1 − y 2 )2 = 0
we gaan links en rechts kwadrateren omdat kwadraten altijd positief zijn móeten beide delen wel 0 zijn
⇔ (x1 − x 2 )2 = 0 en (y1 − y 2 )2 = 0 ⇒ x1 − x 2 = 0 en y1 − y 2 = 0 En andersom: triviaal • •
d(x, y) = d(y, x) ⇔ Omdat voor alle a en b geldt (a − b)2 = (b − a)2 volgt de bewering (ga na!). We gaan bewijzen dat d (x, z) ≤ d (x, y) + d (y, z). Dit is het meest lastige van de vier regels. (x1 − x3 )2 + (y1 − y3 )2 ≤
Ofwel:
(x1 − x 2 )2 + (y1 − y 2 )2 + (x 2 − x3 )2 + (y 2 − y3)2
(x1 − x 2 + x 2 - x 3 )2 + (y1 − y 2 + y 2 − y3 )2 ≤ (x1 − x 2 )2 + (y1 − y 2 )2 + (x 2 − x3 )2 + (y 2 − y3)2
Noem a = x1 − x 2 , b = x 2 − x3 , c = y1 − y 2 en. We krijgen: (a + b)2 + (c + d)2 ≤ a2 + c 2 + b2 + d2 (a + b)2 + (c + d)2 ≤ a2 + c 2 + b2 + d2 +2 a2 + c 2
links en rechts kwadrateren
b2 + d2
(a + b)2 + (c + d)2 ≤ a2 + c 2 + b2 + d2 +2 (a2 + c 2 )(b2 + d2 )
wortels samenvoegen haakjes wegwerken
36
biometrie.doc
a2 + 2ab + b2 + c 2 + 2cd + d2 ≤ a2 + c 2 + b2 + d2 +2 (a2 + c 2 )(b2 + d2 )
wegstrepen en delen door 2
ab + cd ≤ (a2 + c 2 )(b2 + d2 )
kwadrateren
(ab + cd)2 ≤ (a2 + c 2 )(b2 + d2 )
haakjes wegwerken
a2b 2 + 2abcd + c 2d2 ≤ a2b2 + a2d2 + c2b2 + c 2d2
wegstrepen
2abcd ≤ a2b 2 + c 2b2
0≤ a2d2 − 2abcd + c2b2 0≤ (ad − cb)2 Omdat een kwadraat altijd groter of gelijk is aan 0 volgt de driehoeksongelijkheid.
Opgave 24 Is de Hammingafstand een metriek?
37
biometrie.doc
4.4 Edge detection Edge detection, het detecteren van randen in een afbeelding, wordt onder andere gebruikt bij segmentatie van een afbeelding en bij vingerafdruk-herkenning. Er zijn verschillende methoden: met eerste afgeleiden zoals Sobel, Prewitt en Canny en met tweede afgeleiden [10]. Omdat deze methoden vrij ingewikkeld zijn, introduceren we een eenvoudige methode. 4.4.1
Een vrij eenvoudige methode - Euclidische afstand
We kunnen de afstand tussen twee pixels uitdrukken als een verschil in kleur. Stel pixel p1 heeft een kleurwaarde kleur = (r,g,b) en pixel p2 heeft een kleurwaarde kleur1 = (r1,g1,b1). We definiëren de afstandsfunctie tussen twee kleuren als: DP (kleur, kleur1)= (r − r1)2 + (g − g1)2 + (b − b1)2 De functie berekent de Euclidische afstand tussen kleur en kleur1 en is een metriek. 4.4.2
Het idee
We bekijken de kleurwaarde van ieder pixel[i,j] uit een afbeelding en vergelijken deze met de directe rechterbuurman en directe benedenbuurman. Indien de vergelijking een te groot verschil oplevert met de een of met de andere kleurwaarde dan behoort de pixel[i,j] tot de rand. We maken deze zwart. De andere worden wit. Opgave 25 Waarom dienen we zowel de rechterbuurman als de benedenbuurman te nemen? HINT: Bekijk bijvoorbeeld de afbeelding:
Hieronder staat het algoritme voor edge-detection: Voor ieder pixel [i,j] uit de afbeelding doen we het volgende: 1. Bepaal de kleurwaarde (r,g,b) van pixel[i,j]. Noem deze kleurwaarde kleur 2. Bepaal de kleurwaarde (r1,g1,b1) van de rechterbuurman van pixel [i,j]. Noem deze kleur1. 3. Bepaal de kleurwaarde (r2,g2,b2) van de benedenbuurman van pixel [i,j]. Noem deze kleur2. 4. Bereken met behulp van de afstandsfunctie (paragraaf 4.4.1): D p (kleur,kleur1) en D p (kleur,kleur2). 5. Indien D p (kleur,kleur1) of D p (kleur,kleur2) boven een van te voren gestelde parameter t (threshold) komt, behoort pixel[i,j] tot de rand. We maken deze zwart. De andere worden wit. Opgave 26 a. We bekijken pixel[3,5]. Geef de uitdrukking voor de rechterbuurman en voor de benedenbuurman. b. We bekijken een willekeurige pixel[i,j]. Geef een uitdrukking voor de rechterbuurman en voor de benedenbuurman. c. Op de volgende bladzijde staat een afbeelding bestaande uit vijf kleurwaarden. Bereken voor pixel[8,6] of deze in aanmerking komt voor de rand. Maak gebruik van threshold t = 150. d. Geef in de tekening voor iedere pixel aan of deze tot de rand behoort. Doe dit door het hokje zwart te kleuren. Maak gebruik van threshold t = 150. Laat de pixels die niet op de rand liggen wit van kleur.
38
biometrie.doc
kleurwaarde (200,100,0)
kleurwaarde (20,150,200)
kleurwaarde (200,0,20)
kleurwaarde (0,200,150)
Opgave 27
kleurwaarde (255,255,255)
Programmeren
Implementeer bovenstaande algoritme in een programmeertaal naar keuze (JavaScript, Java, Delphi, C++, Pascal). Test deze uit.
39
biometrie.doc
5. Vingerafdrukken 5.1 Een stukje geschiedenis Alphonse Bertillon (1853–1914), werkzaam bij de politie van Parijs, ontwikkelde een methode om criminelen te identificeren. Hij kwam tot de conclusie dat een aantal lichaamskenmerken na een bepaalde leeftijd niet of nauwelijks meer veranderen. Hij maakte een systeem, bekend onder de naam Bertillonage, waarbij er elf lichaamkenmerken van een persoon werden gemeten. Deze werden vervolgens op een kaart in een database bewaard. De kenmerken zijn onder andere: 1. lichaamslengte 2. lengte van rechteroor 3. breedte van rechteroor Het systeem werd tot 1903 gebruikt. In 1903 werd een nieuwe gevangene, Will West, in de gevangenis van Leavenworth gebracht. De lichaamskenmerken van hem werden gemeten en op een kaart genoteerd. Een van de gevangenisbewaarders die de maten nam, had het vermoeden dat hij de gegevens die op de kaart stonden al eerder had gezien. Een tijd later vond de gevangenisbewaarder inderdaad een kaart van een persoon met nagenoeg dezelfde maten. William West was een gevangene die twee jaren daarvoor in Leavenworth werd gebracht.
Figuur5.2 Wiil West links, rechts William West
Ook na hermeting bleken de twee gevangen dezelfde maten te hebben, ook al waren ze geen familie. Dit was het een van de redenen voor het “faillissement” van bertillonage als methode om criminelen te identificeren, en werd het zoeken naar een nieuwe methode. Die werd gevonden in de vorm van de vingerafdruk, een kenmerk wat wél bij beide verschillend was. In 1903 werd het systeem in de VS en Europa vervangen door een vingerafdruk-identificatiesysteem, ontwikkeld door Sir Richard Edward Henry, die werkzaam was bij Scotland Yard. Tegenwoordig word nog steeds gebruik gemaakt van vingerafdrukken. 40
biometrie.doc
5.2 Kenmerken van vingerafdrukken Een vingerafdruk is een verzameling patronen van bergen en dalen. De breedte van een berg is ongeveer gelijk aan 500 µm. Een vallei varieert tussen 100µm en 350 µm .
bergen
dalen
Een plaatje staat hiernaast. De zwarte lijnen (inkt) zijn bergen, de witte zijn dalen. Vingerafdrukken worden nog voor je geboorte gevormd, deels door je genen, deels door stochastische omgevingsfactoren (positie van de foetus, temperatuur, voeding, etc). Hierdoor zijn alle vingerafdrukken verschillend, zelfs die van eeneiige tweelingen.
Figuur5.3 vingerafdruk
Hieronder staan een aantal redenen waarom vingerafdrukken gebruikt kunnen worden voor herkenning van personen: 1. universeel: ieder persoon, uitzonderingen daargelaten, kan een vingerafdruk achterlaten. 2. uniciteit: geen twee personen hebben dezelfde vingerafdruk (gebleken uit vergelijking van miljarden vingerafdrukken, maar nog niet bewezen!). 3. constant: de kenmerken van een vingerafdruk veranderen niet of nauwelijks gedurende het leven van een persoon. Na beschadiging groeit hetzelfde patroon weer terug. Wel kan veroudering het patroon vervagen, en kunnen littekens in de weg zitten. 4. meetbaarheid: de kenmerken van een vingerafdruk zijn makkelijk het systeem in te krijgen. Wel moet je actief je vingers ergens opleggen, het kan niet op afstand. Vingerafdrukscanners zijn het verst ontwikkeld van alle biometrische technieken. 5. kosten: het maken van een systeem dat gebaseerd is op vingerafdrukken is niet duur, tenminste niet in vergelijking met andere systemen. 6. fraude: een vingerafdruk is moeilijker te frauderen dan een foto of handtekening, maar makkelijker dan een iris of netvlies. We komen hierop terug in het fraudehoofdstuk Een vingerafdruk vertoont verschillende kenmerken/features. We noemen een aantal: 1. Indien je “vluchtig” naar een vingerafdruk kijkt (globaal niveau) zie je een mooie continue glooiing van bergen en dalen. We kunnen een richtingsveld (directional field) maken die de richting aangeeft van de bergen. Een voorbeeld staat in figuur 5.4. Zo’n richtingsveld wordt vaak voor segmentatie van de vingerafdruk gebruikt.
Figuur5.4 richtingsveld van een vingerafdruk
2. Op een globaal niveau vinden we tevens zogenaamde singulariteiten. Dit zijn punten waaromheen de bergen en dalen draaien. We komen hierop terug in paragraaf 5.4.2 3. Kijk je gedetailleerder (locaal niveau) dan zie je allerlei imperfecties. Sommige bergen houden plots op en andere splitsen zich in twee. We noemen deze imperfecties minutiae. In paragraaf 5.2.1 gaan we hierop in. 4. Op het laagste niveau zien we zweetporiën (figuur 5.5). 41
biometrie.doc
Figuur5.5 zweetporiën
5.2.1
Minutiae
Hieronder een overzicht van de meestvoorkomende minutiae: a. Island (eiland): een geïsoleerd stukje lijn. b. Bifurcation (splitsing): een lijn vertakt zich in twee andere lijnen. c. Dot (punt): een lijn met een even grote breedte als lengte d. Termination: einde van een lijn
bifurcation termination
Er zijn er echter meer. Vaak bestaan ze uit een combinatie van een bifurcation en termination.
dot
Figuur5.6 een aantal minutiae
De locaties en orientatie van minutiae zijn uniek van persoon tot persoon, en dat is dan ook waar naar gekeken wordt tijdens het matchen. Soms wordt ook gekeken naar het type minutiae (island, bifurcation, etc). Om met minutiae te kunnen rekenen, worden deze in een Carthesisch coördinaatstelsel geplaatst. Dit stelsel is het 'ordinaire' coördinaatstelsel waar wij vanaf de brugklas mee hebben gewerkt.
Figuur5.7 Carthesisch coördinaatstelsel
Een coördinaat is hierbij een geordend paar (x,y), waarbij x de afstand is tot de x-as en y de afstand tot de y-as. We beperken ons tot de positieve coördinaten. Hiernaast zie je een deel van vingerafdruk. We plaatsen deze in het coördinaatstelsel. De coördinaten van de bifurcation is (4, 6).
y-as
0 F
x -as igFiguur5.8 coördinaat van een bifurcation
42
biometrie.doc
Opgave 28 Geef de coördinaten (in decimalen) van nevenstaande minutiae. Noem ze m1, m2 …..
y -as
0
x-as
De template T die in de database wordt opgenomen bestaat uit een vector van minutiae. Laat n het aantal minutiae in de template T. We schrijven: T = { m1 , m 2 ,...., mn } waarbij mi = (xi, yi) met i ∈ {1, 2, …, n} We hebben naast de afzonderlijke coördinaten nog een derde parameter nodig om minutiae te beschrijven. Bekijk onderstaande afbeeldingen. De linkerafbeelding behoort bij een template en de rechter bij een input fingerprint. Wat is het probleem?
y-as
y-as
0
0 x -as Figuur5.9 locaties van minutiae. Template (links), input fingerprint (rechts)
x -as
43
biometrie.doc
De twee vingerafdrukken van hierboven zijn niet afkomstig van dezelfde persoon ook al komen de coördinaten van de minutiae overeen. Om ze toch y-as te kunnen onderscheiden maken we gebruik van de hoek (orientatie) van de minutiae.
θ
y1
Hiernaast zie je een termination. We bekijken de hoek θ die deze termination maakt met de horizontale as. Er geldt: 0º ≤ θ ≤ 360º 0
x1
x -as
Figuur5.10 orientatie van minutiae
We krijgen: Een minutia m kun je beschrijven aan de hand van een triplet (x, y, θ) waarbij (x, y) de coördinaten zijn van m en θ de desbetreffende hoek. Laat n het aantal minutiae in de template vector T. Dan: T = { m1 , m 2 ,...., mn } waarbij mi = (xi, yi, θi) met i ∈ {1, 2, …, n} In het echt wordt worden de coördinaten niet uitgedrukt in het Carthesisch stelsel maar in pixelposities, bijvoorbeeld pixel[4,67]. Om de exacte posities te vinden moeten we eerst de afbeelding voorbewerken met een thinning-algoritme, zodat het alleen nog maar bestaat uit lijnen van 1 pixel breed. Hebben we het eenmaal voorbewerkt dan is het vrij eenvoudig om de minutiae eruit te halen. We behandelen thinning verderop in het hoofdstuk.
5.3 Classificatie Stel, we hebben het over een vingerafdruksysteem op schiphol wat dagelijks duizenden passagiers te verwerken krijgt en momenteel al enkele miljoenen templates in de database heeft. Als al deze templates in één lange tabel staan kun je je voorstellen dat het zoeken nogal veel tijd kost (response time), en dat willen we natuurlijk niet, we willen een realtime systeem. Voorbeeld: bij identificatie dient de verkregen template vergeleken te worden met alle n templates in de database. Stel de database bestaat uit 20.000 templates en het matchingsalgoritme kan een match maken in 0,15 seconden. Indien het algoritme de verkregen template met alle 20.000 templates gaat vergelijken dan duurt dit in totaal 3000 seconden, ofwel 50 minuten! Niet bepaald gebruiksvriendelijk. Wat kunnen we daaraan doen? We dienen het aantal vergelijkingen die het systeem moet maken te reduceren. We krijgen dit voor elkaar door de vingerafdrukken in te delen in klassen (classificatie). Het zoeken naar de juiste afdruk vindt dan plaats in een deel van de database en niet in de gehele database. Er zijn door de jaren heen verschillende classificatiesystemen ontwikkeld, elk met een eigen benadering van de anatomische kenmerken van vingers. Vaak worden technieken gecombineerd. Om een aantal te noemen [11]: 1. 2. 3. 4. 5. 6. 7.
Rule-based approaches Syntactic approaches Structural approaches Statistical approaches Neural network-based approaches Multiple classifier-based approaches Miscellanea 44
biometrie.doc
Hieronder zie je een overzicht van personen die bepaalde technieken hebben toegepast om vingerafdrukken te classificeren. Je ziet dat de feature minutiae niet in de tabel voorkomt. Er zijn echter wel technieken die met behulp van minutiae vinerafdrukken kunnen classificeren. In de volgende parafen bespreken we een aantal classificatiemethoden, te beginnen met de oudste, het Henry Classificatie Systeem. Deze methode wordt niet meer gebruikt, maar vele moderne technieken zijn erop gebaseerd. note: we hadden het hierboven over een rekentijd van 50 minuten bij 20.000 templates. Met het Henry systeem zal dit gereduceerd worden, maar voor ons voorbeeld is het nog niet zaligmakend: maken we gebruik van Henry dan duurt dit alsnog 1/3 van de response time, ofwel 1000 seconden (17 minuten). F i g u u r 5 . 9 F i Figuur5.11 [11]
Merk op dat classificatie alleen speelt bij identificatie (1:n matching). Bij verificatie (1:1 matching) is er zo weinig te matchen dat classificatie geen zin heeft.
5.3.1
Henry Classificatie Systeem
Het Henry classificatie systeem systeem werd ontworpen door de Brit Sir Richard Edward Henry en werd gebruikt voor forensisch onderzoek [1]. Het systeem is gebaseerd op het globale patroon van vingers. Hij verdeelde de vingerafdrukken zelf in drie hoofdgroepen (klassen): a. Arch (boog): b. Loop (herhaling) c. Whorl (spiraalvormige draaiing)
Figuur5.12 Arch, Loop en Whorl
45
biometrie.doc
(Henry maakt eigenlijk gebruik van 5 klassen. Hij splitste de loop in right loop en left loop. Vaak wordt tevens tented arch gebruikt, een arch met een scherpe curve). Iedere vinger krijgt een apart nummer variërend van 1 tot en met 10. Daarnaast krijgen ze waardes, afhankelijk van het patroon. Vingers met lussen of bogen krijgen de waarde 0. Heeft een vinger een spiraalvorm dan krijgt deze een waarde afhankelijk van de vinger. Hieronder staan de vingers met bijbehorende nummers en waardes afgebeeld:
Figuur5.13 nummering en waardes per vinger. Nummering aan de bovenkant, waardes aan de onderkant van de vinger
De formule die Henry gebruikte is als volgt: Primary Grouping Ratio =
1 + totaal aantal van de even vingers 1 + totaal aantal oneven vingers
Als een persoon bijvoorbeeld een spiraalvorm op zijn rechterwijsvinger heeft en nog een op zijn linkerduim en linkerpink, dan is het totaal van de even vingers 16 + 4 + 1 = 21, het totaal van de oneven vingers is gelijk aan 0. We krijgen: 1 + 21 22 Primary Grouping Ratio = = 1+ 0 1 We zeggen: deze persoon heeft een Henry Classificatie (Primary Grouping Ratio) van 22/1. Opgave 29 a. Welke Primary Grouping Ratio krijg je indien er geen spiraalvormen voorkomen? b. Welke Primary Grouping Ratio krijg je indien alle vingers voorzien zijn van spiraalvormen? c. Ga met een berekening na dat er in totaal 1.024 groepen/klassen zijn.
Het Henry systeem werd veel gebruikt in handmatig forensisch onderzoek, maar geeft problemen bij automatische herkenning (bijvoorbeeld in de beveiliging). Zo zijn alle 10 vingers vereist, is het moeilijk voor de computer om het globale patroon te bepalen, en kost het veel rekentijd. Tegenwoordig worden andere classificatie-methodes gebruikt. Opgave 30 Met behulp van het programma Fingerprint Creator (http://www.optel.com.pl/software/english/method.htm) kun je je eigen kunstmatige vingerafdrukken maken. Je kunt bijvoorbeeld aangeven hoeveel minutiae de vingerafdruk gaat bevatten. Tevens kun je aangeven of je te maken wilt hebben met een whorl, loop en dergelijke. Probeer het programma uit. 46
biometrie.doc
5.3.2
Classificatie - rule-based approach
Deze manier van classificatie is gebaseerd op het aantal en de posities van bijvoorbeeld singulariteiten. Singulariteiten zijn kenmerken die zichtbaar worden indien van een vingerafdruk een richtingsveld wordt genomen (figuur 5.4). Het zijn punten waaromheen de bergen en dalen draaien. core
Er zijn twee singulariteiten: delta en core. Er bestaat een relatie tussen deze manier van classificeren en de klasse-indeling die Henry heeft gebruikt. In tabel 5.1 staat deze weergegeven: een left loop bestaat dus uit een Core en een Delta.
Henry klasse Left loop Right loop Whorl Arch Tented arch
Core
Delta
1 1 2 0 1
1 1 2 0 1
delta
Figuur5.14 singulariteiten - core en delta
Tabel 5.1 relatie tussen Henry klasse en het aantal singulariteiten
5.3.3 Classificatie - structural approach Deze manier van classificeren is gebaseerd op de globale sctructuur van een vingerafdruk. Het proces staat hieronder aangegeven.
Figuur 5.15 structural approach classificatie. Left en right zijn left loop en right loop.
47
biometrie.doc
5.4 Vingerafdruk-authenticatie, overzicht van het proces We verdelen vingerafdruk-authenticatie in een aantal hoofdcomponenten (zie ook bladzijde 24): a. Met behulp van een sensor wordt een vingerafdruk genomen. b. pre-processing van de digitale afbeelding. Bijvoorbeeld: • image-enhancement: verbetering van de kwaliteit van de afbeelding, • normalization: alle afbeeldingen ongeveer gelijk maken. Bijv: de kleurwaarden waaruit de afbeelding bestaat worden teruggebracht naar een vooraf bepaalde range van kleurwaarden • segmentation: de achtergrond wordt gescheiden van de voorgrond. • binarization: je maakt van de afbeelding een puur zwart-wit afbeelding • thinning: je maakt van alle contouren van de afbeelding een contour met een breedte van één enkele pixel. c. minutiae-extraction d. matching van minutiae Een aantal van deze componenten behandelen we in de volgende paragrafen. Binarization hebben we al in opgave 25 besproken. Segmentation is in paragraaf 4.4 aan de orde geweest. Image-enhancement en normalization behandelen we niet. Dit zijn onderwerpen die zich meer lenen voor het vak computer-vision of image–processing.
48
biometrie.doc
5.5 Vingerafdruk nemen (sensor) Er zijn twee mogelijkheden om een vingerafdruk te nemen. De eerste mogelijkheid is door een afdruk op papier te maken en deze eventueel te digitaliseren. De tweede mogelijkheid is een direct digitale scan met behulp van een sensor; een digitale versie is dan reeds beschikbaar. In forensisch onderzoek wordt vooral de eerste variant gebruikt, in de beveiliging alleen de tweede. Hiernaast een versimpelde weergave van een scanner. De analog-todigital converter zet het analoge scannersignaal om in een digitale template. Er kan van alles mis zijn met de vingers die worden aangeboden: te droog, te nat, vies, beschadigd, verkeerd op de scanner gelegd, etc. Om te voorkomen dat er een verkeerde template wordt opgeslagen (bij enrollment) of dat er onnodig wordt gezocht naar matchende templates (bij authenticatie), vindt vaak na de A/D converter een quality check plaats. Hierbij wordt gekeken of de vingerafdruk wel voldoet aan de eisen. Mocht dit niet zo zijn, dan wordt aangegeven dat het is mislukt (waarna je het opnieuw kunt proberen), en draagt het sowieso bij aan de FTE (Failure To Enroll) en FTA (Failure to Acquire) rate.
sensor
Scanner
A/D converter
database figuur 5.16 vingerafdruk scanner
Er zijn een aantal soorten sensoren:
Figuur5.17 optisch
Een optische sensor verlicht met een LED de vinger. Door projectie via een prisma op een CDD-camera is de foto gereed.
Figuur5.18 capacitief
Een capacitieve sensor werkt met stroomgeleiding: de bergen van je vinger raken de scanner (en geleiden dus stroom), en de dalen niet. Dit wordt opgemerkt door de scanner, die vervolgens eenzelfde soort plaatje kan maken als de optische sensor. 49
biometrie.doc
Een thermische sensor maakt gebruik van het feit dat er een temperatuurverschil is tussen de vinger en de lucht. Een serie van temperatuurgevoelige sensoren registeren deze verschillen en zetten deze om in een beeld.
Figuur5.19 ultra sound
Een ultra sound sensor maakt gebruik van weerkaatsing van geluid. Alle sensoren komen tot eenzelfde soort beeld (de vingerafdruk), maar op verschillende manieren. Elk heeft zo zijn voor- en nadelen, wat duidelijk zal worden in het fraude-hoofdstuk.
50
biometrie.doc
5.6 Pre-processing: thinning Om van een vingerafdruk de minutiae te kunnen bepalen, dienen we verkregen randen (na edge-detection) uit te dunnen tot een breedte van slechts één pixel. We noemen dit proces thinning of skeletonization. De zo verkregen afbeelding noemen we een skeleton. Hieronder staat het proces afgebeeld.
Figuur5.20 thinning
In de paragraaf 5.4.3 introduceren we een thinning algoritme dat van een willekeurige zwart-wit afbeelding een skeleton kan maken. Ieder thinning algoritme moet minstens voldoen aan drie voorwaarden: a. de originele eindpunten blijven deels behouden b. de pixels blijven altijd verbonden c. de originele vorm wordt grotendeels behouden
5.6.1
Waarvoor wordt thinning gebruikt?
Thinning wordt veel gebruikt in software voor patroonherkenning (handschrift herkenning en OCR = Optical Character Recognition). Fotobewerkingsprogramma’s zoals Photoshop maken tevens gebruik van thinning om van een bitmapafbeelding een vectorafbeelding te maken. Biometrische technieken gebruiken het om makkelijker features (zoals minutiae) van een biometrisch kenmerk te kunnen bepalen. Opgave 31 Ga naar http://www.cosc.canterbury.ac.nz/mukundan/covn/Thin.html. Voer het thinning algoritme uit. Probeer zelf een figuur te tekenen en pas daar tevens het algoritme op toe. Opgave 32 Zie de WinTopo software in de map /hulpsoftware/. Op de voormalige website stond het volgende: In order for WinTopo to extract vectors from a raster image it needs to determine which parts of the image constitute lines, and where those lines start and end. For example, the lines may be fairly obvious to a human observer, until the image is magnified, at which point it may be seen that the lines are several pixels wide, uneven along the edges and fade out into the background. The approach used by WinTopo is to reduce thick or blobby regions down to single pixel width items, so that the image is transformed into lines of pixels. This process is called thinning. WinTopo provides 5 thinning methods, each utilising different mathematical algorithms and producing different results: 51
biometrie.doc
1. 2. 3. 4. 5.
Stentiford Thinning Zhang Suen Thinning Best Combination [Not in Freeware version] Simple Edge detection [Not in Freeware version] Canny Edge detection
The Stentiford and Zhang Suen methods both produce pixels lines at the centre of thick regions, whereas the Simple and Canny Edge methods produces pixels at the edges of thick regions. Probeer de WinTopo software en test verschillende algoritmen uit. Werken ze een beetje? Helpen ze jou bij het identificeren/verificeren? En zou de computer er wat aan hebben?
5.6.2
Een aantal definities
We bekijken een pixel die na het proces van edge detection op de rand ligt en noemen deze p. De pixel wordt omgeven door 8 buren zoals in figuur 5.21 is aangeven. We nummeren de buren p2, p3, p4, p5, p6, p7, p8 en p9, waarbij 1, indien p i zwart is pi = 0, indien p i wit is
p9 p2 p3 p8 p p4 p7 p6 p5 Figuur5.21 Moore neighborhood
We noemen dit raster rondom p met de 8 buren ook wel de Moore neighborhood van p. Opgave 33 (internet) In plaats van de Moore neighborhood bestaat tevens het begrip Neumann neighborhood. Wat is het verschil?
We bekijken een willekeurige pixel p op de rand. DEFINITIE: N(p) = het aantal van p met kleurwaarde 1. We noteren: N(p) = p2 + p3 + p4 + p5 + p6 + p7 + p8 + p9 DEFINITIE: Loop het raster af volgens de rij p2, p3, p4, p5, p6, p7, p8, p9, p2 We noteren: S(p) = het aantal overgangen (transities) van 0 naar 1 die we vinden in bovenstaande rij. Voorbeeld Voor nevenstaand raster geldt N(p) = 4, omdat er precies 4 buren zijn met een kleurwaarde van 1. Dit zijn p3, p7, p8 en p9 Er geldt tevens S(p) = 2, omdat er zowel van p2 naar p3 als van p6 naar p7 een overgang is van 0 naar 1.
1
0
1
1
1
0
1
0
0
52
biometrie.doc
Opgave 34 a. Bekijk de nevenstaande rasters. Bereken bij ieder van de rasters N(p) en S(p).
a)
0
1
0
0
1
0
b)
0
1
1
0
1
0
c)
1
1
1
0
1
0
1
1
b. Geef de minimale waarde van N(p). Wat is de maximale waarde van N(p)? 0 0 0 0 0 0 1 Illustreer dit met plaatjes. c. Geef de minimale waarde van S(p). Wat is de maximale waarde van S(p)? Illustreer dit met plaatjes.
Waar is dit allemaal goed voor? We willen een aantal pixels p van de rand verwijderen, zodat we een contour van de rand overhouden met een breedte van één pixel. Aan de hand van de waarden van N(p) en S(p) wordt deze beslissing genomen. Indien N(p) = 1 dan heeft p slechts één enkele buur; p mag niet verwijderd worden. Opgave 35 a. Bekijk pixels p waarvoor geldt: N(p) = 0. Mogen deze verwijderd worden? Verklaar je antwoord. b. Bekijk pixels p waarvoor geldt: N(p) = 1. Mogen deze verwijderd worden? Verklaar je antwoord. c. Bekijk pixels p waarvoor geldt: S(p) = 2. Mogen deze verwijderd worden? Verklaar je antwoord.
5.6.3
Zhang-Suen Thinning Algoritme
Hieronder staat het algoritme van Zhang en Suen [12] beschreven. We bekijken daartoe slechts zwart-wit afbeeldingen en pixels p die na edge detection op de rand liggen. We maken tevens gebruik van de Moore neighbourhood van p (zie figuur 5.21) Zhang-Suen Thinning Algoritme: Herhaal de volgende stappen totdat er niets meer te markeren valt: A. Markeer (true) alle pixels p die voldoen aan de voorwaarden a. t/m d. We noemen dit de eerste iteratie. B. Aan het einde van deze eerste iteratie worden alle gemarkeerde pixels verwijderd. C. Markeer (true) alle pixels p die voldoen aan de voorwaarden e. t/m h. We noemen dit de tweede iteratie. D. Aan het einde van deze tweede iteratie worden alle gemarkeerde pixels verwijderd. De eerste iteratie: a. b. c. d.
S(p) = 1 2 ≤ N(p) ≤ 6, het aantal buren van p ligt tussen de 2 en 6. (p2 = 0 of p4 = 0 of p6 = 0), dat wil zeggen minstens één van p2 , p4 , p6 heeft kleurwaarde 0. (p4 = 0 of p6 = 0 of p8 = 0), dat wil zeggen minstens één van één van p2 , p4 , p8 heeft kleurwaarde 0.
De tweede iteratie: e. f. g. h.
S(p) = 1 2 ≤ N(p) ≤ 6, , het aantal buren van p ligt tussen de 2 en 6. (p2 = 0 of p4 = 0 of p8 = 0), dat wil zeggen minstens één van p2 , p4 , p8 heeft kleurwaarde 0. (p2 = 0 of p6 = 0 of p8 = 0), dat wil zeggen minstens één van één van p2 , p6 , p8 heeft kleurwaarde 0.
Opmerkingen: 1.
Formeel wordt p2 = 0 of p4 = 0 of p6 = 0 genoteerd als p2 x p4 x p6 = 0.
2.
Let op het verschil tussen de nummering van de pixels bij c en g, en bij d en h
53
biometrie.doc
Figuur 5.22 vertoont een zwart-wit afbeelding waarop we het thinning algoritme toe gaan passen. We plaatsen en verschuiven het 3x3 masker over de pixels met een donkere waarde (p = 1), zodat het centrum van het masker precies p is.
Figuur5.22 een willekeurige zwart-wit afbeelding
p9 p2 p3 p8 p p4 p7 p6 p5 p9 p2 p3 p8 p p4 p7 p6 p5
Figuur5.23 het thinning proces
We markeren alle pixels p als true als ze aan alle condities hebben voldaan. Aan het einde van iedere iteratie verwijderen we de gemarkeerde pixels, dat wil zeggen: ze krijgen de waarde 0. Indien er op een gegeven moment geen pixel meer van waarde verandert, stopt het algoritme. We hebben een contour van één pixel breed.
5.6.4
Waarom juist bovenstaande voorwaarden?
Hieronder bespreken we de voorwaarden die zijn gesteld in het Zhang-Suen Thinning Algoritme. De voorwaarde N(p) ≥ 2 zorgt ervoor dat we geen eindpunten verwijderen, immers indien N(p) = 1 dan hebben we een eindpunt. Als N(p) = 0 dan hebben we een geïsoleerd punt. De breedte is 1. De voorwaarde N(p) ≤ 6 zorgt ervoor dat de vorm van de rand grotendeels behouden blijft, want anders zouden we teveel pixels verwijderen. De voorwaarde S(p) = 1 zorgt ervoor dat de randen met elkaar verbonden blijven. Dit was namelijk een van de voorwaarden die is gesteld waaraan een thinning algoritme moet voldoen. Hieronder kun je zien wat er mis gaat indien er een pixel wordt verwijderd met S(p) = 1.
p
Figuur5.24 Er geldt S(p) = 2. Indien p wordt verwijderd, krijgen we een discontinuïteit
54
biometrie.doc
Voorbeeld (deels) We bekijken de volgende afbeelding
We gaan met behulp van het algoritme hiervan een skeleton maken. De eerste pixel die we op de rand tegenkomen is p[2,2]. We noemen deze p. We plaatsen er het masker overheen:
p9 p2 p3 p8
p
p4
p7 p6 p5
Er geldt: 1. 2. 3. 4.
S(p) = 1, want er is een overgang van 0 naar 1 (van p3 naar p4): true 2 ≤ N(p) ≤ 6, want AB(p) = 3: true p2 × p4 × p6 = 0, want p2 is 0: true p4 × p6 × p8 = 0, want p8 is 0: true
Omdat aan alle condities is voldaan, krijgt p nadien alle pixels zijn doorlopen de kleurwaarde 0. De volgende pixel is p[2,3]. We noemen deze wederom p. We plaatsen daarover het masker. Let wel: de kleurwaarde van p8 is nog steeds gelijk aan1. p9 p2 p3 p8
p
p4
p7 p6 p5
Er geldt: 1. S(p) = 1, want er is een overgang van 0 naar 1 (van p3 naar p4): true 2. 2 ≤ N(p) ≤ 6, want AB(p) = 5: true 3. p2 × p4 × p6 = 0, want p2 is 0: true 4. p4 × p6 × p8 ≠ 0: false Omdat aan conditie 4 niet is voldaan, behoudt deze p de kleurwaarde 1. De volgende twee pixels behouden tevens de kleur. De pixel p[2,6] krijgt de waarde 1 (ga na!).
55
biometrie.doc
De eerste pixel van de volgende rij is p[3,2]. We noemen deze wederom p. We plaatsen daaroverheen het masker:
p9 p2 p3 p8
p
p4
p7 p6 p5 Er geldt: 1. S(p) = 1, want er is een overgang van 0 naar 1 (van p9 naar p2): true 2. 2 ≤ N(p) ≤ 6, want N(p) = 5: true 3. p2 × p4 × p6 = 0 : false 4. p4 × p6 × p8 = 0, want p8 is 0: true p krijgt als alle pixels zijn doorlopen de kleurwaarde 1.Volgen we dit proces dan krijgen we na de eerste iteratie als resultaat:
t
f
f
f
t
f
f
f
f
t
t
t
t
t
t
Ofwel:
Opgave 36 Maak bovenstaand voorbeeld zelf af. Opgave 37 Gebruik het thinning algoritme op de volgende afbeelding:
56
biometrie.doc
Opgave 38
programmeren
Implementeer het Zhang-Suen algoritme in een taal naar keuze (JavaScript, Java, Delphi, C++, Pascal). Test deze uit op een aantal afbeeldingen uit een van de standaarddatabases die gebruikt worden bij FVC2002 (Fingerprint Verification Competition 2002: http://bias.csr.unibo.it/fvc2002/download.asp. Hieronder staat een voorbeeld van het gebruik van het algoritme. We hoeven er alleen niet voor te zorgen dat de vingerafdruk enhanced (verbeterd) wordt. Dit valt buiten de stof. Zie opmerking onder de afbeelding.
Figuur 5.25 voorbeeld van Thinning
PS: Je kunt ook gebruik maken van een aantal afbeeldingen die je hebt gemaakt met behulp van het programma Fingerprint Creator ( http://www.optel.com.pl/software/english/method.htm). Het voordeel daarvan is de afbeeldingen zo gemaakt kunnen worden dat er geen ruis in zit!!!
57
biometrie.doc
5.7 Minutiae extractie 5.7.1 Crossing Number De meest gebruikte methode om minutiae uit een afbeelding te extraheren is met het principe van CN (Crossing Number). Hieronder staat de definitie. DEFINITIE: CN(p) = het aantal buren van p met kleurwaarde 1 na thinning Voorbeeld Hieronder staat een fragment van een afbeelding van een vingerafdruk na thinning. Bekijk pixel p. Dit is een minutiae, namelijk een termination (ending point). Indien we het 3x3 masker op p plaatsen (figuur 5.27) krijgen we: CN(p) =1, omdat p slecht een buurman heeft met kleurwaarde 1, namelijk p3. Voor de andere pixels geldt CN ≠ 2.
p9 p2 p3 p
p8
p
p4
p7 p6 p5 Figuur5.26 p is een termination
Figuur5.27 Er geldt CN(p) = 1
Voorbeeld Hieronder staat wederom een fragement van een afbeelding van een vingerafdruk na thinning. Bekijk pixel p. Deze is een minutiae, namelijk een bifurcation. Indien we het 3x3 masker op p plaatsen krijgen we: CN(p) = 3, omdat p twee buurmannen heeft met kleurwaarde 1, namelijk p3 en p9. Voor de andere pixels geldt CN ≠ 3.
p9 p2 p3 p
p8
p
p4
p7 p6 p5 Figuur3.28 p is een bifurcation
Figuur3.29 Er geldt CN(p) = 3
STELLING: Minutiae zijn die pixels waarbij CN(p) = 1 of CN(p) = 3. Dit geldt voor bifurcaties en terminaties. Geldt het ook voor islands en dots? Opgave 39
programmeren
Pas het programma dat je gemaakt hebt bij opgave 38 aan, zodat je van een vingerafdruk de minutiae gaat bepalen. Geef van deze de coördinaten uitgedrukt in pixelposities en markeer deze in de afbeelding met een rode kleur. Je hoeft niet te letten op de richtingshoek van de minutiae.
58
biometrie.doc
5.7.2
Niet-echte minutiae
Door thinning en door een vingerafdruk van slechte kwaliteit kan het zo zijn dat bepaalde punten waarvan wij denken dat deze minutiae zijn, eigenlijk nep zijn [13]. Hieronder staan een aantal van deze niet-echte minutiae:
Figuur5.30 niet-echte minutiae
Een Spur levert een niet-echte termination op. Een Hole en een Traingle leveren beide een niet-echte bifurcation op. Een spike levert zowel een niet-echte ending als bifurcation op. Hoe kun je deze verwijderen? Er zijn geen “echte” algoritmen die daar uitsluitsel over geven, slechts heuristieken [13] (algoritmen die een antwoord geven op een bepaald probleem en hopelijk in de buurt van het optimale (exacte) antwoord zitten). Ze worden aangetoond door middel van experimenten. Je zou bijvoorbeeld kunnen zeggen dat indien twee minutiae dicht bij elkaar zitten en een (bijna) tegenovergestelde richting hebben, we deze niet als echt hoeven te zien (Spur). Minutiae die op het uiteinde (neem een band van een aantal pixels) van een afbeelding zitten kunnen we het beste als niet echt beschouwen, aangezien er een grote kans is dat ze inderdaad niet echt zijn.
59
biometrie.doc
5.8 Minutiae matching In deze paragraaf gaan we in op het matchen van minutiae. Zoals we reeds hebben gezien, kun je een minutia m beschrijven aan de hand van een triplet (x, y, θ) waarbij (x, y) de coördinaten zijn van m en θ de desbetreffende hoek. Laat n het aantal minutiae in de template vector T. Dan: T = { m1 , m 2 ,...., mn } waarbij mi = (xi, yi, θi) met i ∈ {1, 2, …, n} . Indien een persoon zich registreert, wordt de zo verkregen feature vector vergeleken met alle template vectoren uit de database. Formeler: Laat m het aantal minutiae in de input fingerprint F. Dan: F = { m'1 , m'2 ,...., m'm } waarbij mj ’ = (x j, y j, θ j) met j ∈ {1, 2, …, m} Een minutia uit T komt overeen met een minutia uit F als zowel de x- coördinaten als en de y- coördinaten dichtbij elkaar liggen. We maken wederom gebruik van de Euclidische afstand. We definieren (voor alle i.j):
dr ( mj ’, mi ) = (x j'− xi)2 + (y j'− yi)2 Indien bij een gegeven threshold r geldt: (x j'− xi)2 + (y j'− yi)2 ≤ r
(*)
komen de coördinaten overeen. Dat wil nog niet zeggen dat de minutiae overeenkomen. Een minutia uit T komt overeen met een minutia uit F als ook de hoeken dichtbij elkaar liggen. We definieren een afstandsfuntie op de verzameling van hoeken. We krijgen;
d θ ( mj ’, mi ) = min(| θ j'− θi |, 360° -| θ j'− θi |) waarbij | …| de absolute waarde We nemen het minimum van de waarden | θ j'− θi | en 360° -| θ j'− θi | omdat we bijvoorbeeld willen dat de afstand tussen 345° en 5° niet 340° is, maar 20°. Indien bij een gegeven threshold θ geldt: min(| θ j'− θi |, 360° -| θ j'− θi |) ≤ θ
(**)
komen de hoeken overeen. Als zowel (voor dezelfde i en j) wordt voldaan aan (*) en (**) dan komen de minutiae overeen[11].
60
biometrie.doc
6. Maatschappelijke aspecten 6.1 Toepassingen Biometrische technieken zijn overal toe te passen: als vervanging en aanvulling op bestaande technieken, en op plekken waar eerst nog geen beveiliging was. Denk aan het biometrisch paspoort, geldautomaten in Japan, portable irisscanners in het leger, verificatie bij betaling via internet, enzovoorts. Een onderverdeling zou kunnen zijn: - beveiliging van gebouwen (kantoor, huis, vliegveld, kerncentrale), objecten (computer, auto, laptop), landen (migratiecontrole, controle op vliegvelden) en informatie (defensie/politie/medische bestanden) - anders: betalen in winkels, betalen via het Internet, OV-kaart, biometrisch paspoort enzovoorts
6.1.1
Voor - en nadelen
Het gebruik van biometrie in dergelijke toepassingen biedt voor- en nadelen. Voordelen komen voort uit de nadelen van huidige technieken (pasjes/wachtwoord/foto). Om een aantal te noemen: het meeslepen van pasjes en sleutels, het onthouden van wachtwoorden, massale fraude met creditcards, en vervalsing van paspoorten. Om aan te geven hoe groot het huidige probleem is: per jaar in de VS: • miljarden dollars fraude met uitkeringen (mensen met meerdere identiteiten die zo 2x een uitkering ontvangen) • 450 miljoen aan creditcard fraude (creditcard/code gestolen) • 3 miljard aan pinpas-fraude • minimaal 3000 Mexicanen per dag die illigaal de grens oversteken Deze nadelen/problemen komen voort uit het feit dat conventionele technieken zijn gebaseerd op dingen die je hebt (pasjes, sleutels) of die je weet (wachwoord, pincode). Dat wat je hebt moet je meeslepen, kun je verliezen, of kan gestolen worden, en dat wat je weet kun je vergeten of kan geraden worden. Biometrie brengt hier verandering in doordat het gebaseerd is op biometrische kenmerken, en die heb je altijd bij je, kunt je niet verliezen, zorgen niet voor ballast, en kunnen niet gestolen worden. Het zou betrouwbaarder en minder fraudegevoelig zijn en zou daarmee de samenleving veiliger maken en fraude verminderen. Daarnaast is het soms gebruiksvriendelijker dan de conventionele technieken doordat je niks hoeft te onthouden of mee te slepen. Biometrie kan ook voor een kostenbesparing en grotere snelheid zorgen. Zo zou het priviumsysteem op shiphol sneller werken dan handmatige paspoortcontrole, en worden dure helpdesk-telefoontjes voorkomen door te werken met een vingerafdruk in plaats van een wachtwoord. Uit onderzoek blijkt namelijk dat tussen de 20% tot 50% van alle helpdesktelefoontjes in bedrijven wordt gemaakt om het wachtwoord te resetten, en dat dat gemiddeld $38 per reset kost. Invoering van biometrie is een investering (en kost dus geld), maar kan zich terugverdienen over tijd. Nadelen/bezwaren/risico's zijn er een stuk meer, maar zijn niet allemaal even erg of veelvoorkomend: 1. Het grootste probleem is identity theft, het stelen van je identiteit. Stel dat iemand je toegangspas of wachtwoord steelt, dan kun je makkelijk een nieuwe aanvragen. Bij biometrie is dat onmogelijk; je kunt moeilijk een nieuwe vinger aanvragen! Is je vingerafdruk eenmaal gestolen, dan heb je een probleem voor de rest van je leven: Andere mensen kunnen toegang krijgen tot jouw informatie en rekeningen, kunnen betalen onder jouw naam, misdaden begaan onder jouw naam, etc. Dit melden aan de autoriteiten leidt tot blokkering van je vingerafdruk, waardoor fraude wordt voorkomen, maar je ook zélf geen toegang meer hebt. Een manier om fraude bij identiteitsdiefstal te voorkomen, is door gebruik van meerdere biometrische kenmerken of een combinatie met wachtwoord/pasje/sleutel: Mocht je vingerafdruk gestolen worden, dan heeft de dief ook nog een irisscan/pasje/wachtwoord nodig. Een andere manier is fraudedetectie, zoals 61
biometrie.doc
momenteel wordt gebruikt door creditcardmaatschappijen. Hierbij checken ze op onregelmatige patronen in je bestedingen, en blokkeren bestedingen die buiten het patroon vallen. Het stelen van je identiteit is te voorkomen door biometrische gegevens te beveiligen. Denk aan het gebruik van speciale hardware, encryptie van de database, en het opslaan van templates in plaats van de gehele foto. Het wordt dan moeilijker voor hackers om de data eruit te halen en opnieuw te gebruiken. Een andere maatregel is goede wetgeving, waardoor bedrijven en overheden niet zomaar je data kunnen doorverkopen. Merk op dat identiteitsdiefstal momenteel ook al een probleem is. In de VS vinden jaarlijks 3.3 miljoen gevallen plaats van identiteitsdiefstal en 6.7 miljoen gevallen van creditcardfraude. In dat laatste geval vragen fraudeurs bijvoorbeeld een creditcard aan op jouw naam, om vervolgens geld op te nemen en spullen te kopen waarna jij de rekening krijgt. Biometrie maakt de kans op identiteitsdiefstal kleiner (en zo de kans op fraude kleiner), maar maakt het probleem groter áls het gebeurt. 2. Een ander probleem van biometrie is privacy, het privé houden van persoonlijke informatie. In Engeland hangen momenteel 3 miljoen camera's, waarvan sommige met software voor gezichtsherkenning.
Figuur6.1 “pratende” camera’s in Engeland en tourniquets (‘hufterproof’) op Voorschoterlaan (bron: http://www.nrc.nl/)
Tegelijkertijd vereist het biometrisch paspoort een centrale database van gezichten. De link is snel gelegd: stel dat de camera's en centrale database gekoppeld worden, dan kunnen mensen op elke plek in het land geïdentificeerd worden (zonder dat ze het weten), en kunnen zelfs hele reispatronen worden vastgelegd. Koppel dat met een OV-kaart dat gelinkt is met je identiteit (komt eraan in Nederland) en auto's met een uitzendende identiteit (is al zo in Engeland), en je kunt nergens meer heen zonder geïdentificeerd te worden. Koppel het met je strafdossier, je medische en financiële gegevens, je chat/mail/bel-gegevens, en een lijst van verdachte personen, en de overheid weet ineens enorm veel van alle mensen die in de dorpsstraat op weg zijn naar de supermarkt. Dit biedt mogelijkheden (identificeren van criminelen en terroristen, statistieken over de wijk, achteraf oplossen van misdaden), maar ook gevaren. Het ligt maar net aan de intenties van de overheid, en gezien de aard van mensen en de geschiedenis die we achter ons hebben (Nazi-Duitsland, dictaturen, politiestaten) kunnen we niet altijd zeker zijn van goede intenties. Zodra de overheid je vijand wordt zou je willen dat ze nooit zo sterk was geworden. De huidige strijd tegen het terrorisme leidt tot vergaande inbreuken op de privacy, en de vraag is in hoeverre dat wenselijk is. 3. Andere bezwaren hebben betrekking op fraude, nauwkeurigheid, en gebruiksvriendelijkheid. Sommige biometrische systemen zijn makkelijk te omzeilen (fraude), niet nauwkeurig (waardoor ongeoorloofde mensen toch toegelaten worden) en niet gebruiksvriendelijk. Dit kunnen redenen zijn om een (bepaald) biometrisch systeem niet te gebruiken. Zo zijn vingerafdrukscanners makkelijk te omzeilen, is gezichtsherkenning niet zo nauwkeurig, en zijn retina-scans weinig gebruiksvriendelijk. Bij lage nauwkeurigheid vormt zicht nog een ander probleem: het verdenken van onschuldige mensen. Stel dat een vingerafdrukscanner een false-match rate heeft van 1 op de 10.000. Bij het vergelijken van een gevonden vingerafdruk met 100.000 afdrukken in een database van criminelen leidt dit tot 10 onterechte verdenkingen en misschien zelfs onterechte veroordelingen. In het verleden zijn genoeg fouten gemaakt 62
biometrie.doc
door de rechtbank waardoor mensen onterecht achter de tralies zijn gekomen. Onnauwkeurige biometrie zou dit probleem kunnen verergeren. 4. Een bezwaar wat niet genoemd zal worden, maar wel duidelijk aanwezig is, komt uit de onderbuik: de angst voor het onbekende. Elke nieuwe techniek heeft tijd nodig om geaccepteerd te worden. De trein, elektriciteit, computers, allemaal hadden ze hun periode van wantrouwen en angst. Bij biometrie komt het beeld op van kille scanners die ons wel/niet toegang geven, en databases die onze identiteit vastleggen, maar het zal een kwestie van tijd zijn voor ook deze techniek geaccepteerd wordt. Naast angst voor het onbekende, geldt ook een angst voor controleverlies. Een overheid die je op allerlei manieren in de gaten houdt en je dwingt je identiteit prijs te geven maakt ze machtig en jou machteloos. Het voelt als wantrouwen, in de gaten gehouden worden, gedwongen worden, en een lijdend onderdeel zijn van een politiesysteem. Gebruiksvriendelijke of onopgemerkte biometrie kan helpen mensen meer in hun waarde te laten. 5. Als laatst zijn er culturele en religieuze bezwaren. Sommige mensen denken dat biometrische scanners schade kunnen toebrengen een het lichaam, of dat ze niet hygiënisch zijn. Sommige christenen vrezen dat biometrie op den duur zal leiden tot een vorm dictatuur zoals die in het bijbelboek Openbaring van Johannes (13:16-18) is beschreven: "niemand kan kopen of verkopen zonder het 'merkteken van het beest' in zijn voorhoofd of handpalmen gegrift' te hebben". Deze gedachte hangt samen met de voorspelde komst van de antichrist en de daarmee samengaande vervolging van gelovigen. In Nederland hebben we niet veel chistenen, maar in de VS des te meer, waaronder een groot aantal streng gelovigen.
6.1.2
Conclusies
Zoals gezegd, er zijn meer nadelen dan voordelen, maar de voordelen zijn zeer groot, en de nadelen niet allemaal even erg of veelvoorkomend. De geschiktheid van biometrie zal afhangen van de toepassing, waarbij voor elke toepassing gekeken moet worden wat de voor- en nadelen zijn ten opzichte van andere technieken. Met de huidige problemen (massale fraude, weinig gebruiksvriendelijkheid) en een samenleving waarin identiteit steeds belangrijker wordt, lijkt biometrie de juiste weg te gaan, maar de vele nadelen geven aan dat we er nog lang niet zijn. Er zal een continue zoektocht moeten zijn naar betere algoritmes om de betrouwbaarheid te verhogen en betere hardware voor minder fraudegevoeligheid en meer gebruiksvriendelijkheid. Wetgeving is nodig om de privacy te waarborgen, en tijd om acceptatie te krijgen van het publiek. Biometrie verkleint de kans op identiteitsdiefstal, maar maakt het probleem veel groter áls het gebeurt. Voor extra beveiliging kunnen we biometrische technieken combineren met andere biometrische techieken (multimodal biometrics), of kunnen we een combinatie maken met conventionele technieken (wachtwoord/pasje/sleutels). Een voorbeeld is een computer met wachtwoordbeveiliging die na het inloggen voortdurend kijkt naar je typgedrag (keystroke dynamics) om er continu zeker van te zijn dat jij hebt bent die achter de computer zit. zie de discussie op: http://tinyurl.com/5rvk8j
Opgave 40
casus biometrie op scholen
(internet)
zie de discussie op: http://tinyurl.com/5rvk8j Welke argumenten spelen er? En zijn er ook onderbuikgevoelens? Gelden onderbuikgevoelens ook als argumenten? Wat voor nut zou een landelijke database van iedereen in Nederland hebben? Gaat het werken?
63
biometrie.doc
Opgave 41
casus biometrie op scholen
(internet)
In Engeland en Amerika zijn de laatste jaren duizenden scholen begonnen met de implementatie van biometrische systemen. Genoemde voordelen zijn het controleren op spijbelen, het beter eten (in grote scholen zijn vaak gaarkeukens, en met identificatie is te controleren of ze daar wel heen gaan of gaan snacken bij de lokale friettent), het beveiligen van kluisjes, en het vervangen van identiteitskaarten van de bibliotheek. Nadelen zijn dezelfde als on het hoofdstuk hierboven, met de nadruk op privacy en identiteitsdiefstal. Een tabel van voor- en nadelen is te vinden op www.leavethemkidsalone.com, een site tegen het gebruik van vingerafdrukken op scholen. Kies een van de volgende opdrachten: •
•
Schrijf een betoog over het onderwerp biometrie op scholen, waarin je door duidelijke argumenten een ander probeert te overtuigen waarom je tegen biometrische systemen op scholen bent. Schrijf een betoog over het onderwerp biometrie op scholen, waarin je door duidelijke argumenten een ander probeert te overtuigen waarom je voor biometrische systemen op scholen bent.
Maak bijvoorbeeld gebruik van de volgende sites: http://en.wikipedia.org/wiki/Biometrics_in_schools www.leavethemkidsalone.com Fingerprinting of UK school kids causes outcry Child fingerprint plan considered
Opgave 42
casus biometrisch paspoort
(internet)
Marjolein Brouwers [9] heeft binnen D66 onderzoek gedaan naar de invoering van biometrie in reis- en identiteitsdocumenten. Ze heeft gekeken naar het maatschappelijk draagvlak binnen haar parij. Samenvatting van de inhoud: Over weinig onderwerpen worden zoveel politieke en maatschappelijke discussies gevoerd als over veiligheid en criminaliteitsbestrijding. Meer toezicht op het doen en laten van mensen in bepaalde situaties wordt steeds vaker toegepast. Maar gaat dat niet ten koste van de privacy? En hoe verhouden nationale en internationale doelstellingen zich tot elkaar? In dit rapport wordt onderzocht welke mogelijkheden er zijn om biometrische technieken toe te passen in reis - en identiteitsdocumenten. Het rapport (in pdf-formaat) is te vinden op: http://www.d66net.nl/materialen/archives/000647.php a. Lees het rapport. Je kunt downloaden via bovenstaande link. b. Voer de enquête tevens uit op school, en vergelijk je conclusies met de conclusies van Marjolijn Brouwers. Haar conclusies staan achter in het rapport, hoofstuk 5. De enquete-vragen zijn te vinden in de bijlage (achter in dit document).
64
biometrie.doc
7. Fraude 7.1 Inleiding Waar beveiliging is, daar zijn mensen die deze willen omzeilen. Mensen die geen toegang tot iets hebben en dat wel graag krijgen, doen soms de meest de meest ingenieuze dingen. In dit hoofdstuk zullen we kijken naar handige technieken, waarbij we de nadruk leggen op fraude (iets vervalsen, bedrog). Ook zullen we, als maker van een biometrisch systeem, bespreken wat we hieraan kunnen doen. We nemen als voorbeeld een vingerafdrukscanner op Schiphol. Hoe kunnen we deze omzeilen? Allereerst zijn er de standaard manieren: je glipt langs de scanner als iemand anders zich aanmeld, springt over het hekje, koopt een medewerker om, of molt de machine. Dit is gemakkelijk te voorkomen met goede hardware, goed personeelsbeleid, en een bewaker bij de scanner die een oogje in het zeil houdt. Dan zijn er een aantal hightech manieren: je kraakt de hardware of software op een manier dat hij jou (en misschien wel iedereen) doorlaat. Een van die manieren is om de database te kraken, een template eruit te halen, en die vervolgens opnieuw aan te bieden aan het systeem. Zulke technieken vereisen echter gedegen kennis, specialistische apparatuur, en veel tijd op de plek des onheil. Misschien mogelijk op een afgelegen plek, maar niet op schiphol. Bovendien is hier prima tegen te beveiligen door het gebruik van een speciale interface, het encrypten van plaatjes in de database, en het toezicht laten houden door een bewaker. Een laatste oplossing is fraude (ook wel: misleiding, bedrog, vervalsing): het presenteren van een (neppe) vinger van iemand die wél toegang heeft. Dit roept een aantal vragen op: waar kan een fraudeur allemaal mee aankomen, hoe komt hij/zij daaraan, hoe maak je een kunstmatige vinger en wat kun je ertegen doen.
7.1.1
7.1.2
Waar kan een fraudeur mee aan komen? De vingerafdruk van de vorige persoon. Door tegen de scanner te blazen (warme lucht) zet de vorige vingerafdruk zich uit en zal zich daardoor als vorige (geldige) vingerafdruk aanbieden. Drukken op een stuk plakband werkt soms ook. De geregistreerde vinger. Deze kan nog aan het lijf vast zitten (als in: je wordt gedwongen om je vinger tegen de scanner te houden), of hij kan zijn afgehakt. Dit laatste is gebeurd in Maleisië, waarbij autodieven een Mercedes wilden stelen met vingerafdrukbeveiliging. Na wat gedoe kregen ze er genoeg van telkens de persoon moeten dwingen zijn vinger tegen de scanner te houden, en besloten ze deze af te hakken. Een kunstmatige vinger. Dit kan zomaar een vinger zijn (in de hoop dat het systeem een fout maakt of toevallig een template in zijn database heeft die er op lijkt), een genetische kloon van de vinger, of een kunstmatige kopie van de vinger. Het eerste is nogal naïef, het tweede momenteel onmogelijk, maar het derde is interessant, aangezien het makkelijk zelf te doen is. In de volgende paragraaf gaan we daar verder op in.
Het maken van een kunstmatige vinger
Kunstmatige vingers zijn op allerlei manieren te maken, afhankelijk van wat nodig is en wat je tot je beschikking hebt. Capacitieve sensoren vereisen meer werk dan optische, zeker als getest wordt op aanvullende biometrische kenmerken (hartslag, temperatuur, bloeddruk). Het maken van kunstmatige vingers kan met gelatine, latex, en siliconen. We beginnen met een voorbeeld: het onderzoek van Tsutomu Matsumoto. Deze Japanse wiskundige heeft 11 commerciële vingerafdruk systemen weten te omzeilen (van de 11 die hij er testte), met gebruikmaking van huishoudmaterialen van onder de $10. Hij deed dit in 2 experimenten/processen. In het eerste proces maakt hij van zijn eigen vinger een pasvorm (mold) in free molding plastic, verkrijgbaar in hobbyshops. Daarover giet hij vloeibare gelatine (een mengsel 65
biometrie.doc
van gelatine en water) en laat die hard worden in de koelkast. Het resultaat is een kunstmatige vinger, die de biometrische systemen in 80% van de gevallen wist te foppen. Matsumoto's slides staan hieronder:
66
biometrie.doc
Figuur7.1 bron: http://crypto.csail.mit.edu/classes/6.857/papers/gummy-slides.pdf
Deze methode is snel, makkelijk, en goedkoop, en omzeilt zowel optische als capacitieve sensors. Echter, gummi vingers kunnen niet gebruikt worden als er een bewaker bij de scanner staat aangezien deze de fraude zou detecteren. Ook moet de persoon zijn vingerafdruk nadrukkelijk achterlaten in de pasvorm. Dit kan gedwongen, met de persoon onder narcose, of met slimme praatjes ("het is voor een onderzoek"), maar al deze manieren dragen risico's met zich mee. Deze problemen worden opgelost in het volgende proces, proces 2. Het vergaren van de vingerafdruk kan door de vingerafdruk ergens vanaf te halen (bijvoorbeeld een deurklink, glas, cd-hoes, etc), te verduidelijken met chemicaliën, vast te leggen met digitale camera, nogmaals te verduidelijken, en vervolgens te printen. Onderstaand proces geeft dat weer.
Figuur7.2 Het maken van een vingerafdruk of papier
67
biometrie.doc
Het resultaat is een plaatje van een vinger. Sommige optische scanners zijn hiermee te foppen, maar veel ook niet, en capacitieve scanners (die testen op de 3d structuur van de vinger) al helemaal niet. Bovendien zou de bewaker het opmerken. Wat we nodig hebben is een dun 3D-gelatine-laagje-met-vingerafdruk wat je over je eigen vinger kan leggen. Op die manier merkt de bewaker niks, en hebben we een 3D structuur van een vinger (voor de capacitieve scanner) met de vingerafdruk van iemand anders. Zo'n gelatine-laagje kan gemaakt worden met het vertrouwde gelatine, en met een photo-sensitive printedcircuit bord (PCB): een koperen plaat die je kan etsen met ultraviolet licht. In plaats van de digitale vingerafdruk op papier te printen, printen we het op een transparant, leggen dat op het PCB (als een soort masker), en stellen het geheel bloot aan ultraviolet licht, waardoor de PCB de 3D-structuur van de vinger bevat. Vervolgens doen we hetzelfde als in het eerste proces: we gieten een dun laagje gelatine over de plaat, en laten het hard worden in de koelkast. Het gevolg is het 3D-gelatine-laagje wat je over je vinger kan leggen, met alle voordelen van dien, en wederom met een succes ratio van 80%. Onderstaande slides geven het geheel weer:
68
biometrie.doc
Figuur 7.3 bron: http://crypto.csail.mit.edu/classes/6.857/papers/gummy-slides.pdf
7.1.3
Wat kunnen we eraan doen?
Tijd om van rol te verwisselen: we laten de fraudeur voor wat die is, en kruipen in de rol van ontwikkelaar. Deze nobele persoon is altijd bezig zijn systeem beter te beveiligen, om zo fraude tegen te gaan, en verkopen op te schroeven. Zoals we hierboven hebben gezien zijn vingerafdruksystemen vrij makkelijk te misleiden: optische sensoren zijn te foppen met een plaatje van je vinger, capacitieve sensoren met een gummi vinger, en bewakers met een gelatinelaagje over je echte vinger. Reden genoeg voor fabrikanten om extra beveiliging toe te voegen. Een van die mogelijkheden is het gebruik van meerdere authenticatiemechanismen, bijvoorbeeld door ook te vragen naar een pasje, wachtwoord, of ander biometrisch kenmerk (meerdere vingerafdrukken, combinatie van vingerafdruk en iris, etc). Hoewel dit fraude een stuk moeilijker maakt, zal het ook meer gewenste personen buiten sluiten, en kost het meer tijd en moeite voor de gebruikers. Een groot voordeel van biometrie is het gebruikersgemak, en als dit wegvalt zijn we deels terug bij af. Een andere mogelijkheid is het testen op levende vingers door te kijken naar temperatuur, stroomgeleiding, bloeddruk, etc. Dit is echter makkelijk te omzeilen met het gelatinelaagje over je vinger: het laagje geeft de juiste vingerafdruk, je vinger de juiste gegevens over temperatuur, stroomgeleiding, etc. Er moet gezegd worden dat het laagje wel een verschil maakt (het haalt de temperatuur wat naar beneden), maar omdat mensen onderling zo verschillen (koude/warme handen, droog/vochtig, intact/beschadigd), en omstandigheden zo verschillen (binnen/buiten, warm/koud weer), moet het systeem een hoop waardes goedkeuren (hoge tolerantie), waardoor ook de vinger met gelatinelaagje doorgelaten zal worden.
69
biometrie.doc
Een laatste mogelijkheid is het gebruik van ultrasonisch sound om de onderliggende structuur weer te geven, inclusief de bloedstromen. Om dit na te maken zou een gehele vinger nagemaakt moeten worden, iets wat voorlopig nog niet mogelijk is. Samengevat in een schema: Beveiliging:
Hoe te omzeilen:
uitgeprint plaatje van de vinger gummi vinger of gelatinelaagje over echte vinger lik het plaatje of de kunstmatige vinger; speeksel geleidt stroom add: bloeddruk en warmtesensor gelatine plaatje over je echte vinger; je echte vinger geeft de benodigde informatie door add: bewaker die controleert gelatine plaatje over je echte vinger; een gummi vinger zou niet werken ultrasound sensor: kijken naar wordt moeilijk. Misschien een tweedelig laagje over je structuur in de onderliggende vinger? (wel moeilijker te maken) huidlaag
optische sensor capacitieve sensor add: stroomgeleiding
Tabel 7.1 beveiliging van scanners en hoe ze te omzeilen
7.1.4
Fraude met andere biometrische technieken
Hierboven hebben we gezien hoe fraude gepleegd kan worden met vingerafdrukscanners. Kunnen we dit soort technieken ook toepassen op irisscanners, stemherkenners enzovoorts? Wel.., dat verschilt. Vingerafdrukken zijn makkelijk te verkrijgen, ook zonder dat de gebruiker het weet. Voor gezicht en stem geldt hetzelfde, maar het wordt een stuk moeilijker bij de iris, retina, etc. Bovendien zijn deze een stuk moeilijker na te maken. Systemen gebaseerd op iris en retina zijn dus fraudebestendiger dan systemen gebaseerd op vingerafdruk en stem. Opgave 43
Fraude bij internetbankieren
Stel, een bank in Nederland biedt internetbankieren aan waarbij mensen via het Internet geld kunnen overmaken naar andere personen en hun saldo op kunnen vragen. Om ervoor te zorgen dat alleen de rekeninghouder toegang heeft tot zijn rekening maakt het bedrijf gebruik van stemherkenning: Een template van de stem is opgeslagen in de database en wordt bij het bellen gematched met de nieuwe stem. Als deze genoeg overeenkomst, krijgt de gebruiker toegang. a. Hoe zou je dit systeem kunnen omzeilen? (en zo toegang krijgen tot iemands anders z’n bankrekening) b. Wat kunnen we daar aan doen? Opgave 44
(internet)
Bekijk de Mythbusters video: http://gagspace.com/video/how_to_hack_a_fingerprint_scanner en beantwoord de volgende vragen. a. Waar test het geavanceerde deursysteem op, en hoe kan het zo gemakkelijk te omzeilen zijn? b. Vergelijk het fraudeproces met het proces wat hierboven is beschreven (proces 2). In hoeverre komen ze overeen? c. In de video hebben ze het rond 06:20 over een missende stap. Wat zou dat kunnen zijn? Opgave 45 Bij deze opgave dien je een vingerafdrukscanner te hebben. We gaan namelijk deze vingerafdrukscanner omzeilen. Er zijn verschillende scanners op de markt, zelfs voor een redelijke prijs! De goedkoopste is waarschijnlijk de microsoft fingerprint reader van 45 euro. Het precieze stappenplan (inclusief benodigde materialen) staat op de site http://cryptome.org/gummy.htm, appendix A. Lees deze eerst zorgvuldig door. Je kunt ook gebruik maken van de site http://www.ccc.de/biometrie/fingerabdruck_kopieren, van de Computer Chaos Club. Daarbij is tevens een video gepubliceerd hoe je dit bewerkstelligt. Als er geen geld is voor een fingerprint reader, kan ook gewerkt worden met de software IDDemo, te vinden in de map /hulpsoftware/. Hierbij gaat het puur om het vinden van een vingerafdruk en het digitaliseren. 70
biometrie.doc
8. Referenties [1] The Henry Classification System, Copyright © 2003 International Biometric Group [2] A. K. Jain, A. Ross, S. Prabhakar, "An Introduction to Biometric Recognition", IEEE Trans. on Circuits and Systems for Video Technology, Vol. 14, No. 1, pp 4-19, January 2004 [3] Mark S. Nixon, John N. Carter, "On gait As Biometric: Progress And Prospect", http://eprints.ecs.soton.ac.uk/10101/01/nixon_eusipco04.pdf [4] http://cnx.org/content/m12493/latest/ [5] www.candea-informatica.nl [6] http://scgwww.epfl.ch/courses/Biometrics-Lectures-2006-2007/05-Biometrics-Lecture-5-Part2-2006-1120.pdf [7] Diedrick Marius, Sumita Pennathur, and Klint Rose "Face Detection Using Color Thresholding, and Eigenimage Template Matching" [8] E.P. Kukula & S.J. Elliott, Ph.D. "Securing a Restricted Site – Biometric Authentication at Entry Point" [9] Marjolein Brouwers."Het lichaam als wachtwoord, De invoering van biometrie in reis - en identiteitsdocumenten" [10] Algorithms for edge detection, Srikanth Rangarajan [11] D. Maltoni, D. Maio, A.K. Jain, S. Prabhakar, “Handbook of Fingerprint Recognition” [12] Parker, J., R., “Practical Computer Vision using C”, Wiley Computer Publishing, 1994. [13] “Minutiae Verification in Fingerprint Images Using Steerable Wedge Filters”, Sharat Chikkerur, Venu Govindaraju [14] http://en.wikipedia.org/wiki/Biometrics#Performance [15] http://www.steve.gb.com/science/photomorphogenesis.html Meer informatie voor de geïnteresseerde: - H3: Biometrie - http://en.wikipedia.org/wiki/Biometric - http://science.howstuffworks.com/biometrics.htm/printable - visual introduction by the BBC - biometrics FAQ - vergelijking van biometrische technieken - http://perso.orange.fr/fingerchip/ huge site, treats all possible biometric characteristics - biometric authentication: how do I know who you are, slides by Anil K. Jain - "an introduction to biometric recognition", uitgebreidde paper - H4: Technieken - The henry classification system - H5: Vingerafdrukken - history of fingerprints (1) - history of fingerprints (2) - how fingerprint scanners work - fingerprint FAQ - H5: Maatschappelijke aspecten: - overzicht van voor- en nadelen van biometrie - biometics, a grand challenge, slides by Anil K. Jain - "Nieuw identificatiesysteem kijkt naar aderpatroon" - "Biometrie met een toetsenbord" - "Coffeeshop Maastricht scant vinger en gezicht" - H6: Fraude: - de slides van Tsutomu Matsumoto (groter, in kleur) - de paper die erbij hoort (met meer informatie) - stappenplan voor het maken van kunstmatige vingers: zie bovengenoemde paper, appendix A - meer papers over het omzeilen van een biometrische scanners: http://www.optel.pl/fake.htm - de mythbusters hacken een vingerafdruk-scanner (video) - CCC: artikel, video - "Biometric sensors beaten senseless in tests" - "Irisscan totaal onbetrouwbaar" 71
biometrie.doc
9. Bijlagen Bijlage1 Irisscan totaal onbetrouwbaar door Johan van den Dongen en Bart Olmer
AMSTERDAM - De irisscan, geroemd als het meest betrouwbare en snelle identificatiemiddel bij bijvoorbeeld grensbewaking, is niet waterdicht. Op drie eenvoudige manieren kunnen criminelen zich voordoen als iemand anders en fluitend langs de controle lopen. Irisscanapparatuur blijkt in de praktijk geen onderscheid te maken tussen een echt oog en een fotokopietje. Ook zwartwitfoto's, bedrukte contactlenzen en uitvergrote portretfoto's, zelfs uit iemands kindertijd, worden doodleuk geaccepteerd. Het probleem wordt bevestigd door dr. Arnout Ruifrok van het Nederlands Forensisch Instituut (NFI). Volgens Ruifrok, die bij het NFI verbonden is aan de afdeling beeldanalyse en biometrie, is het mogelijk een foto van een iris te maken, hier de pupil uit te knippen, het plaatje voor het oog te houden en door de controle te komen. "De irisscanner herkent de opening van de pupil en bepaalt vanuit het middelpunt van de pupil wat de iris is. Ook is het mogelijk om, gebruikmakend van bedrukte contactlenzen, irisscanners te foppen", aldus Ruifrok in een justitierapport over identiteitsfraude.
Alternatief De betrouwbaarheid van de irisscan wordt in ons land zo groot geacht, dat het systeem is ingevoerd als alternatief voor de standaard paspoortcontrole. Reizigers die in het bezit zijn van een irispas, waarin de chip zit met hun ingescande iris, hoeven bij de grenspassage alleen even hun oog voor het lensje te houden. Als de gegevens in de chip zijn vergeleken met de unieke gegevens van het echte oog, mogen ze doorlopen naar het vliegtuig. Maar ook vele duizenden medewerkers op Schiphol legitimeren zich met een dergelijke irispas. Cabinepersoneel, douaniers, marechaussees, bagagepersoneel en schoonmakers kunnen zo gaan en staan waar ze willen. Hoe verbijsterend simpel het systeem omzeild kan worden, staat beschreven in een Amerikaans onderzoek, dat ook bekend is bij het ministerie van Justitie. Daarin wordt zelfs geadviseerd hoe men een zo goed mogelijke fotokopie van het oog kan maken. Zo wordt afgeraden een flitser te gebruiken, vanwege de weerspiegeling op de foto. De onderzoekers hebben tests gedaan met meerdere types irisscanners en softwarepakketten. In vrijwel alle gevallen accepteerden de scanners het kopietje als een echt oog, zelfs bij afbeeldingen met een lage resolutie en met zwartwitfoto's. Nog schrijnender is dat de systemen voor het lapje te houden zijn met foto's uit de kindertijd, zelfs van twintig jaar geleden. " Na wat oefening was het gemakkelijk om de systemen te passeren met de nepirissen", aldus de Amerikaanse onderzoekers. © 1996-2007 Uitgeversmaatschappij De Telegraaf B.V., Amsterdam. Alle rechten voorbehouden.
72
biometrie.doc
Bijlage2
bron: http://cnx.org/content/m12493/latest/
73
biometrie.doc
Bijlage3
bron: http://www.stanford.edu/class/ee368/Project_03/Project/reports/ee368group15.pdf
74
biometrie.doc
Bijlage4
Het enquêteformulier (wordt gebruikt in opgave 51 - biometrisch paspoort) "Biometrie is een technologie die bepaalde persoonlijke gedrags- of fysieke kenmerken kan meten en vastleggen. Hierbij valt niet alleen te denken aan de, uit het forensisch onderzoek bekende, vingerafdruk of het DNA onderzoek, maar ook aan schriftherkenning, stemgeluid, handscan, gezichtsherkenning, irisscan, wandelgang en zelfs lichaamsgeur. Door gebruik te maken van deze technieken kan de identiteit van een persoon op elektronische wijze geverifiëerd worden. Biometrie is strikt persoonsgebonden." Geslacht:
man vrouw
Leeftijdscategorie:
18-25 25-35
35-45 45-55
55+
Opleiding:
1) Bent u al eens in aanraking gekomen met een biometrische toepassing? (bijvoorbeeld in winkels of op luchthavens) ja nee 1a) Van welke techniek werd gebruik gemaakt? vingerafdruk gelaatsherkenning irisscan anders, nl: 1b) Voor welke toepassing? (bijvoorbeeld toegang tot gebouw, toegang tot bepaalde diensten, douane) 1c) Waar was dat?
2) Wat was uw ervaring hiermee?
75
biometrie.doc
3) Welke nadelen heeft volgens u het gebruik van biometrie? (meerdere antwoorden mogelijk) Levert nooit volstrekte zekerheid Inbreuk op privacy Weet niet welke gegevens opgeslagen worden Weet niet wat er met gegevens gebeurt Opslag van gegevens in centrale databank Problemen bij diefstal of verlies Bang voor gezondheidsrisico’s Anders, nl.:
Toelichting:
4) Welke voordelen heeft volgens u het gebruik van biometrie? (meerdere antwoorden mogelijk) Bestrijding criminaliteit Bevorderen veiligheid Biometrisch kenmerk hoeft niet onthouden/meegenomen te worden Kan niet aan iemand anders overgedragen worden (persoonsgebonden) Kan zonder aanknopingspunten niet worden herleid tot personen Anders, nl.:
5) Wat vindt u van de verschillende hieronder staande technieken? 5a) Vingerafdruk onacceptabel twijfelachtig
acceptabel geen mening
onacceptabel twijfelachtig
acceptabel geen mening
onacceptabel twijfelachtig
acceptabel geen mening
5b) Irisscan
5c) Gezichtsherkenning
76
biometrie.doc
6) Hoe gebruiksvriendelijk acht u de verschillende technieken? 6a) Vingerafdruk zeer klein klein
groot zeer groot geen mening
zeer klein klein
groot zeer groot geen mening
zeer klein klein
groot zeer groot geen mening
6b) Irisscan
6c) Gezichtsherkenning
Toelichting:
7) Waar verwacht u dat biometrie gebruikt gaat worden? (meerdere antwoorden mogelijk) 7a) Luchthavens 7b) Banken 7c) Winkels 7d) Zorginstellingen 7e) Bibliotheken 7f) Toegang tot overheidsdiensten 7g) Openbaar Vervoer 7h) Voetbalstadions 7i) Uitgaansgelegenheden 7j) Anderes, nl.:
8) Bent u voorstander van biometrie bij de volgende toepassingen? 8a) Luchthavens 8b) Banken 8c) Winkels 8d) Zorginstellingen 8e) Bibliotheken 8f) Toegang tot overheidsdiensten 8g) Openbaar Vervoer 8h) Voetbalstadions 8i) Uitgaansleven
nee nee nee nee nee nee nee nee nee
ja ja ja ja ja ja ja ja ja
geen mening geen mening geen mening geen mening geen mening geen mening geen mening geen mening geen mening
77
biometrie.doc
9) Denkt u dat het toepassen van biometrie in reis- en identiteitsdocumenten helpt bij de bestrijding van identiteits- en look-alike fraude? nee
ja
geen mening
10) Vertrouwt u het de overheid toe om uw biometrische persoonskenmerken te beheren? nee
ja
geen mening
De overheid neemt regelmatig maatregelen om het toezicht in de samenleving te vergroten, bijvoorbeeld ter bestrijding van fraude en andere vormen van criminaliteit, illegaliteit, etc. Deze maatregelen kunnen ten koste gaan van privacy 11) Vindt u dat er te vaak sprake is van aantasting van de privacy bij toezichtsbevorderende maatregelen? nee
ja
geen mening
Toelichting:
Opmerkingen:
78
biometrie.doc