Blog‎ > ‎

My personal vision about future of authentication

posted Mar 14, 2015, 6:09 AM by Sami Lehtinen   [ updated Mar 15, 2015, 3:17 AM ]
I'm thinking about credit card form device which would have full surface touch screen and slidable USB connector for charging and connecting to computer. Wireless charging would be nice too. It would also naturally feature Bluetooth and NFC connectivity as well as have very small CCD camera to read QR codes in cases where no other communication solution is available.

A few use cases:
  1. Pure NFC authentication to open doors or to login web sites or what ever mobile applications
  2. PIN-code to activate high security identity and then NFC authentication to open high security doors or to login to bank or tax authorities or and so on
  3. Bluetooth authentication for low security seamless proximity locking like car doors or to login generic low security web sites where you usually use crappy passwords
  4. Challenge response using number keyboard or QR codes for medium security identification like over telephone or any other situation. Also if high security identity is used, PIN code is required before getting the response code.
  5. Receiving signing request over Bluetooth, NFC, USB or QR code from web site or application to sign high security transactions. In this case the card will display information about the transaction you're going to sign. This prevents scams by malware where you think you're paying 5€ to charity, but in reality you're transferring half a million to some random Nigerian bank.
  6. Biometric identification could be also used for low security purposes instead of PIN code. But currently it's a technical problem. Also if true physical presence is required it's better to use on location sensors, card could provide required information to identify the user with the sensor. Of course all these measures can be combined with other things. Like it's card and on door biometric detector, which makes sure you're really there. If it's only over NFC identification which tells that yes, you're here, there could be relay attacks and it doesn't mean that you're really there. It just means that your identification information is available right now. Of course this could be also used in some cases as feature. It makes sure someone authorized you right now. As well as the card can display the information (once again) what you're exactly authorizing the other person to do.
So card can have multiple identities, those identities can be 'remotely readable', require NFC or USB mode, as well as PIN before activation for higher security purposes. Display can be used to show signing requests as well as to confirm identity of the service which is requesting authentication. For tinfoil head guys the display can naturally snow key fingerprints so it's possible to confirm that nobody's playing with the keys.

Naturally the authentication database and service should be open for anyone. So it can be used. One of show stoppers is that using authentication solution has been made so hard process that it's virtually impossible for everything else than for companies who are specialized for authentication or are very large players and spent huge amounts of money for this kind of stuff. Using electronic authentication should be trivial, just as easy as it's to check password or any other official identification document.

I know, I know mobile phones can do all this at least in theory. Problem is that mobile phones are nowadays full computers and therefore it's probably possible to mess with it using malware. And for sure it's possible if the device is rooted.

In Finnish - Not an exact translation. Contains lot of generic blah blah.

Kirjoittelin joskus tästä aiheesta pitkästi. Useimmissa näissä autentikointitavoissa on se vika, että sitten tunnistautuminen perustuu laitteeseen. FIDO U2F tokeneissa ei ole esim. lukitusta. Kuka tahansa joka saa laitteen haltuun voi väärinkäyttää sitä. Tämä on ihan merkittävä riski. Tietysti tuota voidaan softapuolella korjata vaatimalla muutakin tunnistautumistietoa. Toinen ongelma on se, että mm. pankkikäytössä, laitteella tunnistaudutaan, mutta sen jälkeen pelikenttä on taas täysin auki. Eli olisi sairaan hienoa, kun olisi sellainen ratkaisu joka myös varmistaisi sen mitä sillä tokenilla halutaan tehdä, eikä vain sitä, että onko sulla tokeni. Muistaakseni tällaisia ratkaisuta on ollut harvassa, mutta joku on senkin toteuttuanut. Käsittääkseni muutamalla Saksalaisella liikepankilla on mm. tällaisia käytössä. Nykyjään tuon voisi toteuttaa juuri tuolla mobiilisovelluksella, mutta silloin ongelmana on se, että entäs jos palvelua käytetään jo mobiilina. Silloin luotettavuus taas putoaa. Tietenkin asiaa varten voisi tehdä täysin dedikoidun laitteen, mutta se taas nostaa olennaisesti kustannuksia. Dedikoitulaite on kuitenkin mielestäni turvallisin vaihtoehto silloin, kun käyttötarkoitus on sellainen joka oikeuttaa tuon kustannuksen. Nykyjään myös mm. Bluetooth 4.2 tai vaikka BLE mahdollistaa sen, että tuo dedikoitulaite ei välttämättä ole hirvittävän kallis. Vastaavasti CCD kamerat jne on edullisia, joten laitteen voisi toteuttaa myös sellaisena, että sitä voi käyttää myös ilman matkapuhelinta. Toisaalta jos haetaan taas varmaatunnistusta pitkillä avaimilla, niin sitten tiedonsiirto voi olla haaste. Eiköhän tekniikan kehittyessä tule tällainenkin ratkaisu tarjolle.
Visioni? Luottokortinkokoon rakennettu laite, jossa koko kortin kokoinen kosketusnäyttö ja näppäimistö, liittämistä varten reunasta voi tökätä USB liittimen ulos tai voi käyttää bluetoothia, NFC:tä tai laitteessa olevaa CCD kameraa tiedonsiirtoon QR koodeista. Riippuen sovelluksesta voi homma toimia seuraavasti:

  1. Pelkällä kortilla mm. NFC (ovet rakennuksissa), jos korkeamman turvatason ovi voidaan käyttää kortin näppäimistöä lisänä, ettei pelkkä kortti kelpaa.
  2. Pelkällä kortilla mm. bluetooth (vaikka auto proximity lukitus)
  3. Syöttämällä challenge koodi näppäimistöllä -> antaa responsen -> vaikka puhelinautentikointi
  4. Korkeanturvallisuuden kirjautuminen, kytke USB:llä, näet mihin palveluun olet kirjautumassa, anna pin koodi -> kirjautuminen.
  5. Mobiilisovellusken valtuuttaminen bluetoothilla ja hyväksynnällä laitteessa.
  6. Johonkin random web-palveluun kirjautuminen jossain matkoilla vaikka 'web kioskista'. Lue QR koodi challenge login sivulta ja syötä response.
  7. Isomman maksusuorituksen hyväksyminen, laite näyttää maksusuorituksen tiedot näytöllä, annat pin-koodin, jonka jälkeen allekirjoitettu tapahtuma palautetaan pankkiin.
Luonnollisesti myös tuki useammalle täysin itsenäiselle identiteetille joita voi poistaa ja generoida tarpeen niin vaatiessa. Joo, lista ei oo ihan aukoton, mutta konsepti tuli varmaan selväksi. Luonnollisesti tähän palveluun kuuluu myös ns. kansallinen identiteetipalvelu, jonka kautta tuon tunnistamisen voi tehdä kuka tahansa. Monesti asiat on tehty vaan hankalaiksi, eikä tunnistautumista pysty hyödyntämään kun ne tahot, jotka erityisesti alkaa sen kanssa hankalasti nysväämään. Asioista tehdään tahallaan hankalia ja kalliita ja sitten ihmetellään kun kukaan ei käytä niitä, esimerkkinä VETUMA.

Btw. En tiedä onko operaattorit tajunneet asiaa, mutta itseasiassa mobiilivarmennetta voi käyttää tällä hetkellä ihan kuka tahansa ilman mitään sopimuksia. Ai häh? Miten niin? No mitäpä tarjoavat ns. testipalvelua, jonka kautta tuo onnistuu. Tuo on todella näppärä juttu jos sen vaan tajuaa. Kiitos siitä, että testin onnistumisen kuittaussanomassa näkyy kaikki tarvittavat identifiointi tiedot.