Centen op het Net

Bruno Leijnse Redacteur bij Trends

Visa en MasterCard leggen de laatste hand aan de beveiliging van Internet transacties met kredietkaarten. Hoe ziet hun standaard eruit ?

Zoveel is zeker : over een jaar of twee is betalen over het Internet heel gewoon. Kredietkaarten-uitgevers Visa International en Mastercard starten begin 1997 met commerciële proeven. “Begin 1998 zijn we operationeel,” verwacht commercieel directeur Hugo Tembuyser van Bank Card Company, de Belgische beheerder van Visa en Eurocard-MasterCard. Softwareleveranciers als IBM, Microsoft en Netscape Communications zijn er klaar voor. Op een ander front heeft DigiCash, patenthouder van een elektronische munt, in Deutsche Bank een respectabele testpartner gevonden. En buiten het Internet is er in eigen land Isabel, het private bankennet dat in mei in betatest ging. Dat is de laatste fase voor de echte inbedrijfstelling.

Om voor de hand liggende redenen zal elektronisch betalen niet één systeem dekken, maar een heleboel, net zoals er momenteel munten en biljetten zijn, cheques, bankcheques, traveler cheques, debetkaarten, kredietkaarten, vooraf betaalde kaarten, overschrijvingen, wisselbrieven en wat al meer.

Maar alle elektronische betaalsystemen zullen tenminste een deel moeten opheffen van de onzekerheid die typisch is voor winkelen op het Internet : anonieme klanten die van anonieme “handelaren” die niet méér zijn dan een plek op een harde schijf producten kopen die ze nooit hebben gezien en die ze betalen met ongrijpbare “centen”.

Om orde te houden in dit potentiële paradijs voor oplichters zal elk betalingssysteem aan minimumnormen moeten voldoen. Het zal garanties moeten kunnen geven op het vlak van :

1. Authenticiteit : het betaalmiddel moet vaststelbaar “echt” zijn.

2. Verifieerbaarheid : beide partijen moeten een bewijs krijgen dat de bewuste transactie heeft plaatsgevonden.

3. Veiligheid : tegen verlies, namaak, dubbel gebruik, wijziging van de inhoud van de transactie, afluisteren enzovoort.

4. Confidentialiteit, waarbij de vraag is of die absoluut mag zijn.

Verder moeten de betalingssystemen uiteraard praktisch, snel, beschikbaar en betrouwbaar zijn.

De kredietkaartbedrijven Visa en MasterCard zijn sterk gestart door in februari akkoord te gaan over de principes van een gemeenschappelijk Secure Electronic Transaction (SET) protocol. SET is niet enkel voor kredietkaarten geschikt, maar voor transacties met alle types bankkaarten. Op 31 mei werd de tweede ontwerpversie voor commentaar publiek gemaakt en in de VS heeft VeriFone, in dat land de belangrijkste verwerker van kredietkaarttransacties, sommige gedeelten ervan al in zijn software ingebed.

Wat opvalt, is dat SET de manier verandert waarop bankkaarttransacties verlopen. Momenteel wordt de transactie door de handelaar in gang gezet (hij laat de kaart controleren). Met SET begint de transactieverwerking met de kaarthouder. Hij contacteert zelf zijn financiële instelling én de handelaar.

Precies omdat de SET-standaard publiek is, kunnen we ook een goed idee krijgen van hoe de principes van authenticiteit, verifieerbaarheid, veiligheid en vertrouwelijkheid met SET worden georganiseerd. Geen paniek. SET wordt automatisch door software uitgevoerd. Het protocol wordt een onderdeel van de gebruikelijke Internet-software, zowel aan de kant van de handelaar als aan de kant van de koper. Als kaarthouder of handelaar merkt u van de resem controles niet meer dan wat geflikker van lampjes aan uw modem en harde schijf.

CONFIDENTIALITEIT.

Hoe houdt SET de gevoelige informatie die u, via bestellingen en betalingsinstructies, over het Internet stuurt, geheim ?

Door twee soorten van encryptie.

Symmetrische encryptie. Dat is een vorm van cijfertaal waarbij zender en ontvanger dezelfde (geheime) code hanteren, de eerste om te encoderen en de tweede om te decoderen. Het systeem is snel voor encryptie van langere berichten, maar moeilijk toepasbaar op het Internet : hoe meldt je immers aan een onbekende handelaar, bij wie je on line wil kopen, op een veilige manier met welke geheime sleutel je je betalingsinformatie encrypteert ? (Hem opbellen om de geheime code over de lijn te fluisteren, is niet echt een verbetering tegenover wat bestaat.)

Asymmetrische encryptie of “publieke-sleutel cryptografie” lost dat probleem op. In dit concept heeft elke gebruiker een “private” én een “publieke” sleutel. De twee zijn wiskundig zodanig met elkaar verbonden dat wat met de ene versleuteld wordt, alleen met de andere kan ontcijferd worden (en vice versa). De handelaar kan dus rustig op zijn website zijn publieke sleutel publiceren. Zijn klanten kunnen die vervolgens gebruiken om hun bestelling aan de handelaar te versleutelen. Als de handelaar de vercijferde boodschap ontvangt, kan hij (en hij alleen) ze met zijn geheime private sleutel opnieuw leesbaar maken. SET gebruikt de bekendste vorm van dit algoritme, RSA, naar de uitvinders Rivest, Shamir en Adleman.

SET combineert nu de twee encryptie-vormen. Eerst wordt de boodschap met een symmetrische geheime code versleuteld, vervolgens wordt de geheime code op haar beurt volgens het RSA-systeem geëncrypteerd. Dat levert een “digitale omslag” op, die samen met de (symmetrisch) geëncrypteerde boodschap over het Internet naar de handelaar gaat.

AUTHENTICITEIT.

Daarmee zijn we nog niet rond. Om te bewijzen dat de boodschap wel degelijk door de afzender is verstuurd en bovendien ongewijzigd is ontvangen, wordt een digitale handtekening aangemaakt. Daarvoor wordt nog een derde encryptiesysteem gebruikt, deze keer een eenrichtingsalgoritme, dat uit de boodschap een uniek “message digest” puurt. Het is niet de bedoeling later uit dit “digest” de oorspronkelijke boodschap te reconstrueren. Dat is niet mogelijk met een eenrichtingsalgoritme. De bedoeling is dat hetzelfde eenrichtingsalgoritme ook door de ontvanger op de (tegen dan ontcijferde) boodschap wordt losgelaten. Het “message digest” van beide oefeningen moet identiek zijn, zoniet is er iets met de info gebeurd.

Daarmee kan de integriteit van de boodschap worden aangetoond, maar nog niet de authenticiteit van de afzender. Daarvoor wordt opnieuw het publieke-sleutelalgoritme aangewend. De afzender encrypteert het digest met zijn private sleutel en maakt daarmee de digitale handtekening af. Want omdat de handelaar over de publieke sleutel van de koper kan beschikken (die is niet geheim), kan hij hem gebruiken om de digitale handtekening te ontcijferen. Als dat lukt, is tegelijk bewezen dat de boodschap met de private sleutel van de koper was vercijferd. Door die handeling wordt ook het “digest” leesbaar, zodat de integriteit van de boodschap kan worden nagegaan.

SET gebruikt trouwens een apart sleutelpaar voor de digitale handtekening enerzijds en voor het vercijferen van de symmetrische sleutel anderzijds.

Blijft toch nog de vraag hoe de ontvanger in dit geval de handelaar aan de publieke sleutel van de zender, de koper, komt. Eigenlijk kan hij die rechtstreeks van de koper ontvangen, maar dat lost een fundamentele vraag niet op. Behoort namelijk de publieke sleutel echt wel aan de persoon die hem stuurt ?

Om dat vast te stellen, voert SET een derde partij ten tonele, de Certificatie Authoriteit (CA). Dat is een elektronische notaris die vaststelt dat persoon of bedrijf X en publieke sleutel Y samenhoren. De certifiërende authoriteit giet dat in een formulier het certificaat dat zij digitaal handtekent met haar eigen private sleutel. Kaarthouders en erkende handelaren krijgen dergelijke certificaten. De bijhorende publieke sleutel van de CA wordt zo ruim mogelijk verspreid, zodat iedereen hem van het Internet kan plukken om een digitale handtekening te controleren. Aangezien SET twee sleutelparen voorziet, moet de CA voor elke belanghebbende ook twee certificaten aanmaken, één voor elk sleutelpaar.

Hoe een financiële instelling deze cruciale authentificatie van zijn kaarthouders en handelaars in de praktijk moet organiseren, wordt niet door het SET-protocol behandeld. Dat is een zaak voor de uitgevers van de bankkaarten (bijvoorbeeld de Bank Card Company in België).

VERIFIEERBAARHEID.

Blijft een laatste puntje. U plaatst een bestelling bij een handelaar en tegelijk stuurt u betalingsinstructies naar uw financiële instelling. Hoe voorkomt u dat de bank een verkeerde bestelling betaalt, terwijl u toch geen info over uw bankrekening wil doorspelen aan de handelaar en evenmin wil dat de bank op de hoogte is van de details van uw bestelling ? SET lost dit op met een nieuwigheid, de “dubbele digitale handtekening”. U maakt, zoals hierboven beschreven, een “digest” van de bestellingsopdracht aan de handelaar en één van de betalingsinstructies aan uw instelling. U koppelt beide digests en berekent een nieuwe digest voor het geheel. Die encrypteert u met uw private “handtekening”-sleutel. U stuurt vervolgens drie elementen naar de handelaar : de bestelling, het digest van de betalingsinstructie aan uw financiële instelling en uw dubbele digitale handtekening. Doordat de handelaar het digest van de betalingsinstructie heeft (maar niet de betalingsinstructie zelf), kan hij de digitale handtekening verifiëren. Hij berekent namelijk het digest van de bestelling, koppelt die aan het digest van de betalingsinfo, berekent het digest van het geheel en vergelijkt dat met het digest in de dubbele digitale handtekening.

Als de handelaar de bestelling accepteert, laat hij dat aan de financiële instelling weten, samen met een digest van de bestelling. De financiële instelling heeft intussen van de koper de betalingsopdracht en dezelfde dubbele digitale handtekening ontvangen. Dankzij het digest van de bestelling dat ze van de handelaar ontvangt, kan ze de dubbele digitale handtekening ontcijferen en tegelijk vaststellen dat de betalingsopdracht op de bestelling slaat waarvoor de handelaar betaling vraagt. Toch kent de bank niet de inhoud van de bestelling…

BRUNO LEIJNSE

Volgende week : DigiCash.Het SET Protocol vindt u op http://www.visa.com/cgi-bin/vee/sf/set/setprot.html?2+0

KREDIETKAARTEN Virtueel klaar voor het Internet.

Fout opgemerkt of meer nieuws? Meld het hier

Partner Content