Program ověřování čipů - Chip Authentication Program
Program ověřování čipů (CAP) je iniciativa MasterCard a technická specifikace pro používání bankovních čipových karet EMV k ověřování uživatelů a transakcí v online a telefonním bankovnictví. Společnost Visa ji také přijala jako Dynamic Passcode Authentication (DPA). Specifikace CAP definuje kapesní zařízení ( čtečku CAP ) se slotem pro čipovou kartu, numerickou klávesnicí a displejem schopným zobrazit alespoň 12 znaků (např. Starburst displej ). Bankovní zákazníci, kterým banka vydala čtečku CAP, mohou do čtečky CAP vložit kartu Chip a PIN ( EMV ), aby se mohli účastnit jednoho z několika podporovaných ověřovacích protokolů . CAP je forma dvoufaktorového ověřování, protože pro úspěšnou transakci musí být k dispozici čipová karta i platný PIN. Banky doufají, že systém sníží riziko, že nic netušící zákazníci zadají své údaje na podvodné weby po přečtení takzvaných phishingových e-mailů.
Princip fungování
Specifikace CAP podporuje několik metod ověřování. Uživatel nejprve vloží svou čipovou kartu do čtečky CAP a povolí ji zadáním PIN. Poté je stisknuto tlačítko pro výběr typu transakce. Většina čtenářů má pro uživatele k dispozici dva nebo tři typy transakcí pod různými názvy. Některé známé implementace jsou:
- Kód / identifikovat
- Bez nutnosti dalšího zadávání čtečka CAP interaguje s čipovou kartou a vytváří desítkové jednorázové heslo , které lze použít například k přihlášení na bankovní web.
- Odezva
- Tento režim implementuje autentizaci výzva - odpověď , kdy web banky požádá zákazníka o zadání čísla „výzvy“ do čtečky CAP a poté zkopíruje číslo „odpovědi“ zobrazené čtečkou CAP do webové stránky.
- Podepsat
- Tento režim je rozšířením předchozího, kde do čtečky CAP musí být zadána nejen náhodná hodnota „výzvy“, ale také důležité podrobnosti transakce, jako je přenesená hodnota, měna a číslo účtu příjemce.
Výše uvedené typy transakcí jsou implementovány pomocí jednoho ze dvou režimů. Jeden z těchto režimů má dvě formy, ve kterých může pracovat, a vytváří tři odlišné režimy, i když ve specifikaci nejsou takto pojmenovány.
- Režim 1
- Toto je režim pro běžné peněžní transakce, jako je online nákup u obchodníka. Hodnota transakce a měna jsou zahrnuty do výpočtu kryptogramu. Pokud to karta nevyžaduje nebo terminál nepodporuje, pak je částka i měna nastavena na nulu.
- Mode2
- Tento režim může být užitečný pro autentizaci uživatele, ve kterém neprobíhá žádná transakce, například přihlašování do systému internetového bankovnictví. Není zahrnuta žádná hodnota transakce, měna ani jiná data, takže je velmi snadné tyto odpovědi předem vypočítat nebo znovu použít.
- S podpisem transakčních dat (TDS)
- Tento režim lze použít pro složitější transakce, jako je například převod prostředků mezi účty. Více datových polí týkajících se transakce je zřetězeno a poté hashováno s kryptogramem Mode2 jako klíčem pro hashovací algoritmus. Výsledný hash se použije místo kryptogramu vypočítaného v operaci bez režimu TDS Mode2.
Režim 1 zní velmi podobně jako konkrétní použití režimu 2 s TDS, ale je zde zásadní rozdíl. V režimu Mode1 se transakční data (částka a typ měny) používají ve výpočtu kryptogramu kromě všech hodnot použitých v režimu 2 bez TDS, zatímco Mode2 zahrnuje svá transakční data v následném kroku, místo aby je zahrnoval do kroku výpočtu kryptogramu . Pokud by to nebylo pro tento rozdíl, pak by všechny operace mohly být zobecněny jako jedna operace s různými volitelnými daty transakce.
Podrobnosti protokolu
Ve všech třech režimech čtečka CAP požádá kartu EMV o výstup datového paketu, který potvrzuje zrušení fiktivní platební transakce EMV, která zahrnuje údaje zadané uživatelem. Tato potvrzovací zpráva obsahuje ověřovací kód zprávy (obvykle CBC-MAC / Triple DES ), který je generován pomocí tajného klíče specifického pro kartu uloženého bezpečně na čipové kartě. Takovéto zprávy o zrušení nepředstavují žádné bezpečnostní riziko pro běžnou platební aplikaci EMV, ale lze je kryptograficky ověřit a jsou generovány kartou EMV až po zadání správného PIN. Poskytl návrhářům CAP způsob, jak vytvořit silný kryptografický důkaz, že je přítomna karta EMV aktivovaná PIN, a viděl některá zadaná vstupní data, aniž by musel přidávat jakékoli nové softwarové funkce na již používané karty EMV.
Čipová karta EMV obsahuje (obvykle 16bitové) počítadlo transakcí, které se zvyšuje s každou platbou nebo transakcí CAP. Odpověď zobrazená čtečkou CAP v zásadě sestává z různých částí odpovědi karty (Application Transaction Counter, MAC atd.), Která je poté redukována na konkrétní bity, jak je stanoveno záznamem indikátoru autentizace vydavatele (IAI) uloženým na kartě ( toto je nastaveno na základě jednotlivých emitentů, i když by si to emitent přál, mohlo by to být nastaveno náhodně pro každou kartu poskytující databázi IAI každé karty), konečně poté, co jsou nechtěné bity zahozeny (v podstatě je absolutní poloha bitů irelevantní, bit v IAI, který je 0, znamená, že odpovídající bit v odezvě karty bude zrušen, nikoli pouze nastaven na 0). Nakonec se hodnota převede z binárního na desítkové číslo a zobrazí se uživateli. Níže je uveden zkrácený příklad:
- Zařízení CAP vybírá aplikaci EMV, čte informace IAI z karty a uživatel vybere akci k provedení (v tomto příkladu bude IAI 111011011000 2 ).
- Po úspěšném zadání kódu PIN zařízení CAP odešle výzvu transakce 011100111010 2 jako transakci kryptogramu s požadavkem na autorizaci (ARQC).
- Smartcard dává odpověď 110101110110 2 a zařízení CAP zruší falešnou transakci.
- Zařízení CAP používá masku IAI: 111011011000 2 k vypuštění bitů; ty bity, které odpovídají 0 v masce, jsou zahozeny.
- Proto je konečná odpověď 1100110 2 nebo 102 v desítkové soustavě.
Proces v reálném světě je samozřejmě poněkud složitější, protože karta může vrátit ARQC v jednom ze dvou formátů (buď jednoduchý formát šablony odpovědi 1 (id. 80 16 ) nebo složitější formát šablony odpovědi 2 (id. 77 16 ), která rozděluje data ARQC na samostatné hodnoty TLV, které je třeba znovu sestavit, aby odpovídaly hodnotám formátu typu 1.
V režimu identifikace závisí odpověď pouze na požadovaných bitech z IAI, protože množství a referenční číslo jsou nastaveny na nulu; to také znamená, že výběrem odpovědi a zadáním čísla 00000000 se ve skutečnosti vygeneruje platná identifikační odpověď. Více znepokojivé však je, že pokud je žádost o odpověď vydána bankou, pomocí režimu podepisování se stejným číslem a částkou 0,00 will bude opět vygenerován platný výsledek, který podvodníkovi dá možnost dát zákazníkovi pokyn provést „test „výzva k odezvě na částku 0,00 which, kterou podvodník ve skutečnosti použije k ověření příkazu odpovědi, aby se mohl přidat jako příjemce na účet oběti; tyto útoky bylo možné provést proti bankám, které používaly silná autentizační zařízení, která nezrušovala aktivity, dokud nebyla zadána částka alespoň 0,01. Pravděpodobnost těchto druhů útoků byla řešena v roce 2009, kdy byly zavedeny nové generace zařízení, které implementovaly funkci bezpečného oddělení domén, která je v souladu s poznámkou aplikace MasterCard z října 2010. Podobně samozřejmě; banka, která implementuje příkaz identifikace, umožňuje podvodníkovi požádat oběť, aby provedla „testovací“ transakci s použitím 00000000 jako reference, a poté se bude moci úspěšně přihlásit k účtu oběti.
Stejný čítač opakování PIN na kartě se používá jako v jiných transakcích EMV. Stejně jako v terminálu ATM nebo POS, zablokování karty třikrát po sobě nesprávným PIN do čtečky CAP.
Neslučitelnost
Původní specifikace CAP byla navržena tak, aby používala běžné transakce EMV, takže aplikace CAP mohla být nasazena bez aktualizace firmwaru stávajících karet EMV, pokud to bylo nutné. Upřednostňovaná implementace používá samostatnou aplikaci pro transakce CAP. Tyto dvě aplikace mohou sdílet určitá data, například PIN, zatímco jiná data se nesdílejí v případech, kdy je použitelná pouze pro jednu aplikaci (tj. Data o řízení rizik terminálu pro EMV) nebo s výhodami, které mají samostatné (tj. Počítadlo transakcí, takže že transakce EMV a CAP zvyšují počet samostatných čítačů, které lze přesněji ověřit). Čtečka také nese data specifická pro implementaci, z nichž některá mohou být přepsána hodnotami na kartě. Čtečky CAP proto obecně nejsou kompatibilní s kartami od různých vydávajících bank.
Čtečky karet vydané většinou, možná všemi britskými bankami, však odpovídají podmnožině CAP definované APACS , což znamená, že ve většině případů lze karty vydané bankou Spojeného království použít ve čtečce karet vydané jinou bankou.
Zranitelnosti
Vědci z University of Cambridge Saar Drimer, Steven Murdoch a Ross Anderson provedli výzkum implementace CAP, který načrtl řadu zranitelných míst v protokolu a britské variantě čteček i karet. Byly nalezeny četné slabosti. Vědci z Radboud University našli nizozemskou chybu v holandském ABN AMRO e.dentifier2, která útočníkovi umožnila přikázat čtečce připojené přes USB k podpisu škodlivých transakcí bez souhlasu uživatele.
Uživatelé
Švédsko
- Nordea používá CAP v listopadu 2007. Řešení Nordea eCode používá Nordea jak pro eBanking, eCommerce (3DS), tak také s eID. Čtečka, která má některé pokročilejší funkce, které rozšiřují CAP, zvyšuje bezpečnost implementací CAP společnosti Nordea proti trojským koním a útokům typu man-in-the-middle . Při použití pro eID může uživatel podat své „daňové prohlášení“ online nebo jakékoli implementované funkce e-governmentu. Zařízení je také vybaveno portem USB, který umožňuje bance provádět Sign-What-You-See pro schválení citlivých transakcí.
Spojené království
- UK Payments správa definována podmnožinu CAP pro použití britským bankám. V současné době jej používají:
- Čtenáři CAP společností Barclays, Lloyds Bank, Nationwide, NatWest, Co-operative Bank / Smile a RBS jsou kompatibilní.
- Společnost Barclays začala vydávat čtečky CAP (tzv. PINsentry ) v roce 2007. Jejich webové stránky online bankovnictví používají režim identifikace pro ověření přihlášení a režim podpisu pro ověření transakce. Režim odpovědi se používá jako součást nové aplikace PingIt Mobile Payment pro ověřování podrobností účtu. Zařízení se nyní také používá v pobočkách a nahrazuje tradiční čipové a pinové zařízení, aby se zabránilo dalšímu pokusu o podvod.
- Bankovní karty vydané společností HBOS jsou technicky kompatibilní se systémem, ačkoli společnost HBOS (dosud) nezavádí čtečky CAP pro použití s jejich online bankovnictvím.
Softwarové implementace
Existuje softwarová implementace napsaná v Pythonu podporující režim 1, režim 2 a režim 2 s TDS, která má být použita pouze pro vzdělávací účely. Funkce identifikace (bez výzvy) odpovídá funkci m1 s výzvou "00000000".
Pamatujte, že používání tohoto softwaru pro skutečné finanční operace může vést k určitým rizikům. Výhodou použití samostatné čtečky je izolace bankovní karty od malwaru potenciálně umístěného v počítači. Jeho použití v nezabezpečené čtečce riskuje, že keylogger zachytí PIN a malware v místě prodeje získá přístup k podrobnostem karty, nebo dokonce zachytí transakci, aby ji upravil, nebo provede vlastní transakci.
Viz také
Reference
- ^ Dynamické ověřování pomocí hesla Archivováno 19. 11. 2008 ve Wayback Machine , VISA Europe
- ^ Leyden, John. "Barclays nasazuje PINsentry k boji proti podvodům" . www.theregister.com . Citováno 2021-04-30 .
- ^ Banques en ligne: à la découverte d'EMV-CAP Archived 2012-11-27 na Wayback Machine , UnixGarden
- ^ a b c d Drimer, Saar; Murdoch, Steven J .; Anderson, Ross (2009). Optimalizováno pro selhání: Čtečky karet pro online bankovnictví (PDF) . Finanční kryptografie a bezpečnost dat. LNCS. 5628 . Springer. 184–200. doi : 10.1007 / 978-3-642-03549-4_11 . CS1 maint: discouraged parameter ( link )
- ^ Navrženo tak, aby selhalo: USB čtečka pro online bankovnictví
- ^ Nové bezpečnostní řešení | nordea.se , ve švédštině.
- ^ „Barclays PINsentry“ . Archivovány od originálu dne 16. června 2007. CS1 maint: discouraged parameter ( link )
- ^ Barclays zahájí dvoufaktorovou autentizaci , The Register, 2006-08-09.
- ^ „Aplikace“ . sites.uclouvain.be . Citováno 2021-04-30 .