image

<i>crypto tokens en opensource</i>

dinsdag 27 juli 2004, 09:29 door Redactie, 13 reacties

Op het Security.NL forum kan elke lezer zijn of haar ei kwijt. Sommige lezers zitten echter met een vraag die ze niet in het forum plaatsen. Om deze lezers, en iedereen die met een brandende kwestie zit, toch te helpen, hebben we besloten om elke dag een interessante vraag in de aandacht te zetten. De vraag kan naar vraagbaak@security.nl gestuurd worden, waarna de redactie de meeste interessante vraag online zal zetten. Word je vraag niet gekozen, dan kun je hem natuurlijk altijd zelf op het forum plaatsen.

Om te beginnen hebben we een vraag uit het forum gekozen:

Ik ben op zoek naar (hardware) crypto tokens, eventueel in combinatie met server software, die te gebruiken is vanuit eigen apps (PHP/C/etcera). Er zal dus een duidelijke API bij moeten zitten. De tokens wil ik gebruiken voor strong authentication binnen eigen websites.
RSA, Vasco en dergelijke vallen af omdat deze geen API hebben en alleen werken in combinatie met eigen clients. Let wel, de server software mag best wat kosten en de tokens ook, maar daar moet het wel ophouden met geld verdienen.

Reacties (13)
27-07-2004, 10:23 door Anoniem
Volgens mij kun je die sleutelhangers die elke minuut een
andere code weergeven gewoon koppelen met een of ander OSS
ding. Zonder clients, gewoon via browsers.
27-07-2004, 10:26 door Anoniem
Ik heb een tijdje geleden proeven gedaan met de Rainbow Ikey
3000 (http://www.ikey.nl/), deze kosten iets van 65,- Euro
per stuk en worden redelijk door Linux ondersteund. De Linux
open source drivers (http://www.opensc.org/) zijn nog in
ontwikkeling maar ik kreeg ze in de korte tijd niet echt
goed werkend, de leverancier leverd overigens wel closed
source Linux drivers voor de Ikey 3000
(http://support.introcom.nl/downloads/SafeSign_for_Linux.zip).
Maar eigenlijk is het alleen relevant dat de clients met de
keys overweg kunnen, de keys werken dan als een gewoon
certificaat en zijn dus ook bruikbaar in Mozilla. Het
verschil is dan dat de keys alle crypto bewerkingen
uitvoeren, het certficaat kan dus niet uitlekken.
Het enige dat de server hoeft te doen is het client
certificaat te verifieren en weet niet eens dat deze op een
cryptokey staan, de server kant (Apache) is dus geen probleem.

Groet, Don
27-07-2004, 10:41 door Anoniem
Hey, antwoorden! Bedankt alvast..

Ik heb nog wel een kleine aanvulling (ik had de originele vraag in het forum
gezet): ik wil geen extra client software draaien, dus USB tokens vallen al
af. Ik denk dat challenge/response tokens of one time password tokens de
enige oplossing zijn dan?
27-07-2004, 10:47 door Anoniem
Gezien de vraagstelling lijkt het me dat de steller wel enige kennis van
zaken heeft.

Zo te lezen gaat het specifiek om tokens die een one-time-password
genereren of werken volgens een challenge-response mechanisme.

Met producten van genoemde leveranciers is het best mogelijk een
oplossing te fabriceren is mijn ervaring. Het bezwaar daar tegen komt niet
zo goed uit de vraagstelling (is het te bewerkelijk, te duur of wordt het
onmogelijk geacht?). Misschien dat de vraagsteller dit nog verder kan
toelichten.
27-07-2004, 10:49 door Anoniem
OTP lijsten zijn natuurlijk ook een zeer goedkoop alternatief.
27-07-2004, 11:04 door Anoniem
OK nog een kleine toelichting dan..

De meeste aanbieders van tokens (RSA/Activcard/Vasco/etc...) "verplichten"
je min of meer tot het gebruik van middleware tussen de applicatie en hun
AAA server. Zo zie ik allerlei software die je onder Windows of Solaris moet
installeren voordat je clients kunt gaan authenticeren. dus Als je
bijvoorbeeld Apache onder *BSD wilt gebruiken kun je niet met hun AAA
server communiceren omdat er geen software voor is. Het lijkt mij toch niet
zo ingewikkeld om een AAA server te bouwen en het protocol openbaar te
maken, zodat je bijvoorbeeld in je PHP applicatie tussen de AAA server en
het token kunt gaan zitten?
27-07-2004, 11:17 door Anoniem
Door Anoniem
OK nog een kleine toelichting dan..

De meeste aanbieders van tokens (RSA/Activcard/Vasco/etc...) "verplichten"
je min of meer tot het gebruik van middleware tussen de applicatie en hun
AAA server. Zo zie ik allerlei software die je onder Windows of Solaris moet
installeren voordat je clients kunt gaan authenticeren. dus Als je
bijvoorbeeld Apache onder *BSD wilt gebruiken kun je niet met hun AAA
server communiceren omdat er geen software voor is. Het lijkt mij toch niet
zo ingewikkeld om een AAA server te bouwen en het protocol openbaar te
maken, zodat je bijvoorbeeld in je PHP applicatie tussen de AAA server en
het token kunt gaan zitten?

Tja, het klinkt zo simpel. Dat zou het ook moeten zijn natuurlijk. Met
genoemde tokens is dat inderdaad niet zo te realiseren. Ik kan me wel een
alternatief voorstellen maar dat zie je misschien als te gekunsteld en is
zowiezo niet 123 in dit forum uit te leggen.
27-07-2004, 13:59 door Anoniem
Lijkt me zowaar een gat in de markt...
Als je bekijkt hoe simpel het hele gebeuren eigenlijk is,
maar hoe hoe complex dit door de fabrikanten gemaakt wordt
met al hun closed source gedoe...
Ik heb mezelf ook meerdere malen rot gezocht naar een echt
werkbare oplossing, maar het lijkt onbegonnen werk. En dat
terwijl het enige dat nodig is eigenlijk een niet
gepantenteerd hardware apparaatje is met de volledige
documentatie beschikbaar. Een batterij, simpele chip met
wat GPL software erin en een leuke behuizing is alles...
Productiekosten € 20, verkoop het voor € 50. Iedereen blij.
De opensource wereld schrijft de software, daardoor is de
ondersteuning goed en gaan de verkoopcijfers de lucht in.
Maar goed, was het maar zo'n feest. :)
27-07-2004, 18:22 door Anoniem
Door Anoniem
Hey, antwoorden! Bedankt alvast..

Ik heb nog wel een kleine aanvulling (ik had de originele
vraag in het forum
gezet): ik wil geen extra client software draaien, dus USB
tokens vallen al
af. Ik denk dat challenge/response tokens of one time
password tokens de
enige oplossing zijn dan?
Niet alleen antwoorden, maar ook voedsel voor nieuwe ideeen ;-)
27-07-2004, 19:24 door Anoniem
Ik vond A-Select wel een heel leuk oplossing, onlangs is dat
helemaal Open Source geworden. De demo's die ik heb gezien
werkten of met een bankaire kaart (wordt dan ook gevalideert
door de Bank instelling zelf), maar ook via GSM/SMS
combinatie; misschien zijn er nog meer opties. Zie hier:

http://www.a-select.org/home.html
28-07-2004, 09:54 door Anoniem
Door Anoniem
OK nog een kleine toelichting dan..

De meeste aanbieders van tokens (RSA/Activcard/Vasco/etc...) "verplichten"
je min of meer tot het gebruik van middleware tussen de applicatie en hun
AAA server. Zo zie ik allerlei software die je onder Windows of Solaris moet
installeren voordat je clients kunt gaan authenticeren. dus Als je
bijvoorbeeld Apache onder *BSD wilt gebruiken kun je niet met hun AAA
server communiceren omdat er geen software voor is. Het lijkt mij toch niet
zo ingewikkeld om een AAA server te bouwen en het protocol openbaar te
maken, zodat je bijvoorbeeld in je PHP applicatie tussen de AAA server en
het token kunt gaan zitten?

Huh?????????
Ik gebruik hier RSA en hun server "spreekt" ook gewoon radius. Is zo te zien
genoeg code voor te vinden op google.
30-07-2004, 10:39 door Anoniem
Ja, maar dan kun je nog steeds niet je eigen userdatabase gebruiken, maar
moet je alles naar je RADIUS server overhevelen.
Ik ben er inmiddels achter dat Vasco een library heeft die je kunt gebruiken in
je eigen apps (C of Java), dus dat is wel een aardige optie.
20-08-2004, 09:10 door Anoniem
RSA heeft tevens een SDK die het mogelijk maakt om je eigen geschreven
applicatie d.m.v. hun oplossing te laten authenticeren. Deze API kit is vrij
advanced!
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.