Internetbank

För någon dag sedan märkte min mor att nordeas internetbank uppförde sig konstigt i Google Chrome. Hon sade att det såg ut som de hemsidor jag brukar göra, vilket jag gissade betydde att det var något fel på CSSen så att sidan visades med "default style". Idag var det likadant, och det såg ut som jag förväntade mig utifrån hennes beskrivning.

Jag lyckades inte hitta vad som var fel - eftersom anslutningen är krypterad kan jag inte sniffa den. Allt jag vet är att felet antagligen har något med "nya internetbanken" att göra, då det inte är något problem med "förenklad inloggning" som använder det gamla systemet, och att felet uppstår i Chrome men inte i Firefox eller Internet Explorer.

I samband med detta fick jag en chans att testa om mitt bankkort fungerade i mammas dosa. Det gjorde det (gissa vilket "det" som syftar på kortet och vilket som syftar på fungerandet). Det är alltså som jag misstänkte: Alla nordea-dosor är identiska, och användaren identifieras bara genom bankkortet man stoppar i samt dess PIN-kod. Detsamma gäller icabankens dosor.

Detta är jättevettigt - dosan (kortläsaren) fungerar som om den vore inkopplad i datorn, och användaren använder dator+dosa ungefär som en bankomat (stoppa in kortet, identifiera dig med kortets PIN-kod, genomför transaktionen). Frågan är bara varför olika banker har inkompatibla dosor. Jag är iallafall glad för att jag inte har en bank som använder dosa utan kort - det motsvarar ju att behöva släpa runt på hela bankomaten. Nu behöver jag bara ta med mig korten fram och tillbaka till England.

(Om ni funderar på att knäcka PIN-koden med hjälp av upprepade försök i dosa: Jag har mailat och frågat vad som händer, och fått till svar att chippet spärras efter några försök och kan återaktiveras genom ett besök hos en bankomat med rätt PIN-kod inslagen. Dock låter det lite tveksamt, ty hur vet kortet att det sitter i en bankomat och ska återaktiveras? Tyvärr hittar jag inte det mailet längre.)

Än mer intressant är att Icabankens kort delvis fungerar i nordea-dosan: Man kan slå in PIN-koden och få den verifierad (men svarskoden som kommer ut är felaktig). Det går dock inte att göra tvärtom - när man väljer "login" eller "sign" i Ica-dosan med Nordea-kortet får man svaret "ej tillgänglig". Däremot fungerar "buy" och "code" (åt båda hållen), men med fel dosa får man fel svar (antar jag - dosorna visar olika och det vore dumt om det var rätt dosa som visade fel).

Följande är en gissning på hur systemet fungerar:

Chippet på alla bankkort tar emot kontrollkod och PIN, och lämnar ut en svarskod (beräknad på bl.a. kontrollkoden) om PIN är korrekt.

Vid ett normalt kortköp sker följande:
* Apparaten identifierar kortets bank, och ber banken om en kontrollkod.
* Apparaten omvandlar kontrollkod, belopp samt eventuellt lite övrig information till en ny kontrollkod, som skickas till chippet tillsammans med användarens PIN-kod.
* Chippet svarar med en svarskod, som skickas till banken för verifikation.
* Köpet går igenom.

I internetbanken sker följande:
* Användaren får en kontrollkod av internetbanken och matar in i dosan.
* Dosan omvandlar kontrollkoden på något sätt (som är annorlunda beroende på om det är "login" eller "sign" som efterfrågas) till en ny kontrollkod som skickas till chippet tillsammans med användarens PIN-kod.
* Chippet svarar med en svarskod, som användaren skickar till internetbanken.
* Användaren loggas in / får transaktionen genomförd.

Säkerheten ligger i att transaktioner bara genomföras när chippet är fysiskt inkopplat, eftersom det är chippet som utför beräkningarna (omvandlar kontrollkod till svarskod) via en hemlig procedur. Att beloppet skickas till chippet stämmer överens med observationen att beloppet måste vara känt innan kortet avlägsnas. Anledningen till att olika bankers dosor ger olika resultat måste ligga i att dosorna sköter skapandet av en ny kontrollkod annorlunda och/eller gör något särskilt med svarskoden innan den returneras.

Kommentarer
Tim [http://gurka.se/] (2009-06-29 @ 03:04:00):

Varför sniffa när du kan visa källkod? Samarbetar hon inte med dig? :P




Pelli [http://pelli.blogg.se/] (2009-06-29 @ 10:35:28):

Jag ser "<link rel..." i källkoden. I Chromes inspector kan jag klicka på länken och verifiera att CSS-filen finns och ser rätt ut, men den visar inte huruvida filen verkligen har lästs in.



Om jag kunde sniffa så skulle jag veta om filen laddats ner eller inte, vilket leder till antingen "Varför reagerar chrome inte på <link>?" eller "Varför parsar chrome inte CSS-filen?"



Om jag sparar ner sidan från Chrome så visas den dock korrekt. Alltså förstår den CSS:en och link:en, så det enda som återstår är väl att den letar efter CSS:en på fel ställe :s


Tim [http://gurka.se/] (2009-06-29 @ 13:45:35):

Oj, konstigt.


Erik [http://nilssonerik.blogg.se/] (2009-06-29 @ 23:52:50):

Och för den som vill veta vilken lag som reglerar identifieringen så är det oftast "lagen om elektroniska signaturer" och då en så kallad "kvalificerad signatur".



Kommentera inlägget här:
Namn: Kom ihåg mig?
Mail:(publiceras ej)
URL:
Kommentar: