Belgische eID kaart onder Linux

19 juli 2008    

[Wim Coulier - Coulier.org]

Inleiding

Op dit ogenblik is reeds een heel groot deel van de Belgische bevolking in bezit van zijn eID kaart. Bovendien komen er ook meer en meer toepassingen beschikbaar die toelaten om ervan gebruik te maken. Laat ons eerst eens een klein overzicht geven van wat die eID kaart eigenlijk is en wat ermee kan worden gedaan.
De Belgische eID kaart is een zogenaamde smartcard met een PKI chip. Dat vraagt wat meer uitleg. Een smartcard is een plastiek kaart met een chip erop (zoals we die allemaal kennen onder de vorm van onze bankkaarten). PKI is de afkorting van Public Key Infrastructure. Dit is een systeem waarbij aan gebruikers een set van sleutels wordt uitgereikt (publieke en private) die mathematisch aan elkaar gelinkt zijn zodat het gebruik ervan met de ene kan worden bewezen met de andere. Door het bezit van die sleutels te “certifiëren” wordt duidelijk gemaakt wie de eigenaar is van het sleutelpaar door de publieke sleutel op te nemen in een publiekelijk gekend certificaat dat de identiteit van de eigenaar beschrijft. Op die manier kan een actie met de private sleutel eenduidig en onbetwistbaar worden toegewezen aan de eigenaar ervan, door dit na te gaan met de publieke sleutel van zijn certificaat. De belgische identiteitskaart bevat dus een chip die dit soort operaties kan uitvoeren (in tegenstelling to geheugenchips die enkel gegevens kunnen opslaan).
Wat zit er nu in die chip? Er staat heel wat informatie in, waarvan een deel door de burgers kan worden gebruikt en een deel enkel dient om de veiligheid van het systeem te waarborgen. We zullen ons in dit artikel beperken tot het deel dat voor de meeste gebruikers van belang is:

1. De kaart bevat twee PKI certificaten op naam van de houder: eentje om elektronische handtekeningen mee te plaatsen en eentje om jezelf te authenticeren (je kenbaar maken en je identiteit bewijzen ten opzichte van bvb. een website die je bezoekt). Ter herinnering, deze certificaten bewijzen enkel de identiteit van een persoon wanneer deze een actie heeft ondernomen met de private sleutel die ermee gelinkt is.
2. De kaart bevat dus ook twee private sleutels (die overeenkomen met de respectievelijke publieke sleutels die zijn opgenomen in de certificaten). Deze zijn niet publiek, integendeel, zij mogen net enkel gebruikt kunnen worden door de houder van de eID kaart. Daarom zijn er dan ook een aantal veiligheidmaatregelen genomen om ze te beveiligen. Zo is het bijvoorbeeld onmogelijk om deze private sleutels uit de chip van de kaart te lezen of te copiëren. Alle acties die met de private sleutels worden ondernomen moeten dus binnen in de chip op de kaart worden uitgevoerd. Bovendien kunnen zulke acties pas worden uitgevoerd nadat de private sleutel werd vrijgemaakt met een PIN code. Dus zelfs indien de kaart in verkeerde handen valt, kan de private sleutel enkel met de PIN code worden gebruikt. Zoals bij bankkaarten, wordt de PIN code geblokkeerd na drie verkeerde pogingen. Men moet dus goed de unblocking code (PUK code) bewaren voor wanneer dit zich zou voordoen.

Om een elektronische handtekening te plaatsen of je te authenticeren met de eID kaart, heb je dus de PIN code nodig.

3. Naast de certificaten en sleutels, bevat de kaart ook gegevens die zo kunnen worden uitgelezen uit de kaart zonder dat een PIN code is vereist. Dat is onder andere de naam van de houder, zijn geboortedatum en zijn adres. Het lezen van deze gegevens in niet beveiligd. Iedere toepassing op een computer waar de kaart in zit, kan in principe deze gegevens lezen, zonder dat je PIN code wordt gevraagd. Maar natuurlijk is het niet zomaar mogelijk deze gegevens te wijzigen. Daartegen zijn beschermingsmaatregelen genomen, zodat dit enkel bij je gemeente kan gebeuren.

Wat jij kan doen is dus het volgende:

Op sommige websites kan je je leeftijd of adres ermee bewijzen (kan bvb. gebruikt worden om een contract mee op te stellen, of om te bewijzen dat je in de juiste leeftijdscategorie valt). Dit kan ook gebeuren in een fysieke omgeving (aan de ingang van een gebouw bvb.). Hiervoor heb je dus geen PIN code nodig.
Je kan er documenten elektronisch mee tekenen (zodat je die niet meer moet afprinten enkel en alleen voor die handtekening, maar de elektronisch getekende documenten elektronisch kunt doorsturen). Gebruik je eID kaart niet licht om een elektronische handtekening te plaatsen. Zo’n handtekening kan legaal gezien dezelfde waarde hebben als een handgeschreven handtekening. Daarvoor moeten een aantal voorwaarden voldaan zijn. Een dienst zoals Certipost e-Signing zorgt voor jou dat aan die voorwaarden voldaan is.
Je kan ermee toegang verkrijgen tot bepaalde diensten (zoals bvb. MyCertipost). Je kan je niet alleen registreren op basis van de informatie die de site kan uitlezen uit de kaart, je kan je ook authenticeren met de eID kaart. Dit is veel veiliger dan via gebruikersnaam paswoord combinatie. Die laatste kan veel makkelijker door een cracker worden verkregen, terwijl hij bij eID zou moeten beschikken over zowel je eID kaart als je PIN code. Als je de keuze hebt gebruik je dus beter je eID kaart voor authenticatie. Dat verhoogt je veiligheid op het Internet in grote mate.

Installatie

Er is echter één groot nadeel aan de eID kaart: er moet een fysisch contact zijn tussen de computer die de kaart gebruikt en de kaart zelf. Daarom moet de computer zijn uitgerust van een interne of externe kaartlezer, een driver voor die kaartlezer en software die kan communiceren met de eID kaart zelf (de zogenaamde eID middleware).

Een kaartlezer kan je tegenwoordig in de meeste computerwinkels reeds aanschaffen, en zelfs in een aantal grootwarenhuizen. Meestal gaat het dan over een USB kaartlezer van het type ACR 38U, welke ook reeds door de overheid bij verschillende gelegenheden werd verspreid. De driver hiervoor wordt ook meegeleverd met de eID middleware. Voor andere lezers kan het nodig zijn een driver van de fabrikant te installeren. Gelukkig is hier ondertussen een standaard voor, en als je lezer voldoest aan die CCID standaard, is een algemene CCID driver voldoende.

Voor Windows en Mac kan je de drivers en eID middleware downloaden van de website van de overheid. Voor Linux is het haast nog eenvoudiger, maar niet via de website van de overheid. Daar staat een te compileren script, met dependencies die ik nooit opgelost kreeg. Gelukkig is de middleware Open Source software en hebben dus alle grote distributies paketten voorzien die je eenvoudig via de pakketmanager van je distributie kan installeren. Die zal dan ook voor jou zorgen dat de dependencies automatisch mee worden geïnstalleerd. Om het je makkelijker te maken de juiste pakketten terug te vinden heb ik hieronder een lijstje met de namen (zonder versie) van de pakketten voor de eID middleware, ACR 38U driver en de CCID driver opgesomd voor de belangrijkse distributies.

Mandriva Linux

Paketten bestaan vanaf Mandriva 2008.0:

* eID middleware: beid
* ACR 38U driver: acr38u
* CCID driver: ccid

Fedora & Red Hat

Paketten bestaan vanaf RedHat EL 4:

* eID middleware: eid-belgium
* ACR 38U driver: pcsc-lite-acr38u
* CCID driver: ccid

OpenSUSE & SUSE

Paketten bestaan vanaf versie 10.2:

* eID middleware: eID-belgium and eIDconfig-belgium
* ACR 38U driver: pcsc-acr38
* CCID driver: ?? (kon ik niet meteen vinden, indien iemand de naam ervan kent, gelieve me te informeren)

Ubuntu

Paketten bestaan vanaf de Gutsy Gibbon versie:

* eID middleware: beidgui
* ACR 38U driver: libacr38u
* CCID driver: ccid

Debian

Paketten bestaan vanaf de Etch versie:

* eID middleware: beidgui
* ACR 38U driver: libacr38u
* CCID driver: ccid

Configuratie

Beid GUI

Na installatie van de kaartlezer driver en de middleware zou je in staat moeten zijn via de Beid GUI je eID kaart uit te lezen (als je je eID kaart in de aangesloten kaartlezer hebt zitten natuurlijk). Hiertoe moeten wel eerst de pcsc daemon opgestart zijn (dit is software die instaat de PC toelaat smartcards aan te spreken zoals de eID kaart en door de eID middleware wordt gebruikt). Die pcsc daemon wordt normaal meegeïnstalleerd als je de eID pakketten van je distro installeerd, maar daarom nog niet opgestart. Je kan dit manueel doen, of als je niet weet hoe, kan je ook eenvoudigweg je PC herstarten (niet echt de linux manier, maar het werkt relatief snel). Vanaf nu zal dit ook automatisch gebeuren bij het opstarten van de PC en hoef je je daar niets meer van aan te trekken.

Kijk in je menu voor een entry voor de Beid GUI (kan nogal verstopt staan, bij Mandriva 2008.0 is dat bijvoorbeeld onder Tools/More/Belgian eID card viewer). Als je die opstart krijg je zo’n scherm te zien:

Beid GUI blanco

Door op de afbeelding van de chip te klikken zal je kaart worden uitgelezen. Dit gaat niet heel snel, dus het kan zijn dat je even geduld moet hebben. Als je persoonlijke gegevens van de kaart worden gelezen (zoals in de afbeelding hieronder), ben je nu zeker dat je PC nu dus je eID kaart kan gebruiken.

Beid GUI Tux

Voor meer informatie over de configuratie kan je de gids raadplegen op de website van de overheid die je vindt via http://eid.belgium.be/nl/Hoe_installeer_je_de_eID_/Linux/

Toepassingen

Maar het is nog niet omdat je PC je kaart kan gebruiken, dat de toepassingen dat ook kunnen. De toepassingen zelf moeten nog worden geconfigureerd zodat zij van het bestaan van de eID kaart afweten. Dat is goed uitgelegd in enkele gidsen die je hier terugvindt: http://eid.belgium.be/nl/Achtergrondinfo/Handleidingen_voor_softwareupdates/

Deze gidsen stellen je in staat om:

* Firefox zo te configureren zodat je je ermee kan authentificeren aan een website (je identiteit bewijzen, zodat ze met zekerheid weten wie je bent), wat veel veiliger is dan met een gebruikersnaam / wachtwoord.

* Thunderbird zodanig in te stellen dat je je mails elektronisch kan ondertekenen met je eID kaart en dat Thunderbird met eID ondertekende e-mails correct kan valideren. LET OP: Een handtekening geplaatst met je eID kaart is een sterke verbintenis. Ook op een e-mail. Je raakt daar niet of moeilijk onder uit. Let dus wel op wat je tekent.

Een kleine kanttekening: Bij Mandriva 2008.0 bleken een aantal bestanden op een andere plaats dan die die werd vermeld in de gidsen. Zo vind je de registratiefile voor de PKCS#11 module voor Firefox niet in /usr/local/share/beid/beid-pkcs11-register.html zoals in de gids vermeld maar in /usr/share/beid/beid-pkcs11-register.html Ook voor Thunderbird vind je de PKCS#11 module niet in /usr/local/lib/libbeidpkcs11.so, maar in /usr/lib/libbeidpkcs11.so of /usr/lib64/libbeidpkcs11.so als je de 64bit versie gebruikt.

De gids voor OpenOffice werkt echter enkel voor Windows. Hoewel mijn versie van OpenOffice wel mijn eID handtekening certificaat kan lezen, kan ik er geen documenten mee tekenen (OpenOffice crashed). Als iemand anders meer succes heeft, gelieve me te informeren.

Tips voor veilig eID gebruik

De eID kaart kan een krachtige tool zijn en kan daardoor heel wat mogelijk maken wat tot hiertoe niet mogelijk was. Maar dat houdt ook risico’s in. Met de eID kaart kan je bvb. een elektronische handtekening plaatsen die evenwaardig is aan een handgeschreven handtekening op papier. Indien iemand je eID kaart zou kunnen misbruiken, zou die dus in jouw plaats een handtekening kunnen plaatsen en het zou niet zo eenvoudig zijn te bewijzen dat jij niet die handtekening hebt geplaatst! In de papieren wereld is dat risico natuurlijk nog veel groter (daar moeten ze jouw pen niet stelen om je handtekening na te kunnen maken, ze kunnen dat met om het even welke pen). Maar dat is geen reden om niet voorzichtig te zijn met je eID kaart. Hier zijn een aantal tips die je helpen veilig met eID om te gaan:

* Let op dat je het juiste certificaat voor de juiste toepassing gebruikt. Je hebt twee certificaten, één om je aan te melden aan websites of andere toepassingen en één om elektronische handtekeningen te plaatsen (een zogenaamd gekwalificeerd certificaat). Met dat laatste kan je een legale verbintenis aangaan en dat mag je dus niet gebruiken voor andere toepassingen dan elektronische handtekeningen. Spijtig genoeg zijn er sommige websites (zelfs overheidswebsites), die het handtekeningcertifcaat (met na je naam het woord Signature in de naam van het certificaat) vragen te gebruiken in plaats van het authentificatiecerticaat (met na je naam het woord Authentication in de naam van het certificaat). Dit is ten stelligste af te raden. Indien de beheerder van die website van slechte wil is, kan hij je documenten laten ondertekenen zonder dat je het weet waarin je een legale verbintenis aangaat. En het zal zeer moeilijk zijn te bewijzen dat dit buiten je wil om gebeurde. Doe dit dus bij voorkeur niet, zeker niet bij websites die je niet 100% vertrouwd.
* Gebruik je eID kaart enkel op een veilige PC. Een PC die is geïnfecteerd met spyware of virussen kan software bevatten die op afstand door een aanvaller kan worden gecontroleerd en waarmee de aanvaller elke toestaanslag op je toestenbord kan volgen. Op die manier kan zo’n aanvaller dan je PIN code aflezen (tenzij je gebruikt maakt van een kaartlezer met een eigen toetsenbordje), en die zelf gebruiken om een document met je eID kaart te tekenen de volgende keer dat je die erin steekt. Het komt er dus op aan een veilige PC te gebruiken. Als je Linux gebruikt en enkel de software gebruikt die door je distributie werd geleverd (eventueel vanuit de repositories) dan ben je al goed bezig. Maar vergeet niet om ook te zorgen dat je alle software continu up-to-date houdt. Dit kan bij de meeste distributies makkelijk met een daarvoor voorziene tool. Bij Mandriva Linux kan je dat automatisch laten doen via de Mandriva Online Applet.

* Laat je kaart nooit onbewaakt achter. Vanwege het vorige punt is het al best je eID kaart enkel in de kaartlezer te laten wanneer je hem ook echt gebruikt en er niet in te laten zitten. Dat beperkt het risico dat een aanvaller hem misbruikt zonder dat je het beseft. Daarnaast is het natuurlijk ook best je kaart niet onbewaakt te laten slingeren waar andere mensen die kunnen vinden, net zoals je best je bankkaart niet laat slingeren.

* Let op dat wanneer je je PIN code van je eID kaart ingeeft niemand kan meekijken en zo je PIN code te weten komen (shouldersurfing). Als je dan nog je kaart onbewaakt achter zou laten, is het voor die persoon natuurlijk wel erg simpel je kaart te misbruiken.

* En tot slot, net zoals bij een bankkaart, van zodra je niet meer zeker bent dat je kaart nog veilig is (je bent ze kwijt, ze zat in een gestolen portefeuille, …) dan moet je ze zo snel mogelijk laten blokkeren. Dat kan je doen bij de bevolkingsdienst van je eigen gemeente, bij om het even welk politiebureau of 24u/24u bij de eID helpdesk op het nummer 02/5182117.

Maar natuurlijk is het niet zo omdat er risico’s bestaan dat de eID kaart zelf geen goede tool zou zijn. Als je de tips hierboven in gedachten houdt kan je op het Internet veel veiliger aanloggen en documenten volledig elektronisch tekenen met een juridische waarde gelijk aan een papieren handtekening. Dat kan je heel wat tijd en papier besparen.

Popularity: 27% [?]

Stem of voeg toe aanUitleg over het gebruik van deze icons :  Plaatsen/stemmen op MSN Reporter Plaatsen/stemmen op Bligg.be Plaatsen/stemmen op Netjes.be Plaatsen/stemmen op NUjij Plaatsen/stemmen op eKudos Stumble it! Voeg dit artikel toe aan Del.icio.us Voeg toe aan je favorieten op Technorati Voeg toe aan je Google bladwijzers Abonneer je op de RSS-feed van deze site Verstuur deze pagina per e-mail via Feedburner

Reacties

Heb je iets te vertellen?