S vydáním iOS 18.1 Apple konečně otevře svůj bezpečný systém bezkontaktních plateb vývojářům třetích stran. Zde je návod, jak funguje implementace společnosti Apple.
Tento systém kombinuje hardware Secure Enclave, Secure Element a NFC na zařízení a umožňuje bezpečné platby pomocí kontaktních terminálových zařízení na bázi NFC, která se používají k platbě i ověřování.
Apple tento systém nazývá „NFC&SE Platform“ (NFCSEP).
Počínaje iOS 18.1 bude Apple poskytovat omezené API pro přístup k platformě NFC&SE. To zahrnuje dostupnost, protože NFCSEP bude zpočátku k dispozici pouze v některých zemích.
Co je NFC?
NFC není kouzelná nová technologie. Je to vlastně jen a novější formě Radiofrekvenční identifikace (RFID), která existuje již desítky let.
RFID se běžně používá pro sledování majetku, jako jsou nálepky RFID připevněné k inventáři obchodů. Pokud jste někdy omylem odešli z obchodu s chybou v pokladně, pravděpodobně jste spustili RFID alarmy poblíž východů z obchodu, které přečetly RFID štítek na zboží.
NFC je podobné RFID kromě toho, že má a mnoho kratší dosah – především proto, aby transakce mohly být prováděny pouze tehdy, když je spotřebitel v blízkosti platebního nebo čtecího terminálu.
NFC zařízení fungují na principu elektroniky indukční vazba. V indukční vazbě je elektromagnetická cívka (induktor) zabudována do zařízení, které generuje elektromagnetické pole.
Když do jednoho z těchto polí vstoupí další zařízení obsahující induktor, pole indukuje proud ve druhém zařízení. Tento indukčnost lze použít pro komunikaci v NFC.
U chytrých telefonů, platebních karet, POS terminálů, dveřních zámků a dalších NFC čteček je tato komunikace využívána jak pro autorizaci, tak pro platební transakce.
NFC je standardem, i když některé země vyžadují specifické varianty NFC (jako je NFC-J v Japonsku), aby fungovaly s místními terminály NFC.
Transakce NFC slibují jak zabezpečení, tak rychlost autorizace a platby z uživatelských zařízení. Není také nutná žádná fyzická interakce – kromě toho, že jsou obě zařízení ve vzájemném dosahu.
Vlastnosti
Po celém světě se již používá několik zabezpečených systémů bezkontaktních karet, jako jsou kreditní a platební karty, digitální klíče karet, digitální ID a tranzitní karty. Tyto karty používají NFC k bezdrátovému provádění transakcí na terminálech prodejních míst (POS), tranzitních systémech jízdenek a turniketech s podporou NFC a digitálních dveřních zámkech.
NFCSEP slibuje, že sjednotí a poskytne na zařízení to, co nyní dělají současné NFC platební a ID karty – ale vše na jednom místě.
Podle společnosti Apple bude NFCSEP poskytovat transakce NFC pro:
- Platby v obchodě
- Klíče od domu, hotelu a auta
- Tranzit s uzavřenou smyčkou
- Věrnost obchodníka a odměny
- Vstupenky na akce
- Studentské průkazy
I když ne zpočátku, vládní ID budou někdy v budoucnu podporovány NFCSEP.
Výsledkem toho všeho je, že s NFCSEP budete moci ukládat všechna požadovaná ID, autorizace a platební údaje na svém zařízení Apple iOS a používat je pro všechny výše uvedené účely.
Dokumentace Apple NFCSPE říká: „Rozhraní NFC a Secure Enclave API budou k dispozici vývojářům v Austrálii, Brazílii, Kanadě, Japonsku, Novém Zélandu, Spojeném království a USA v připravovaném vývoji pro iOS 18.1 a další regiony budou následovat“.
Jak to funguje
Většina nejnovějších modelů iOS zařízení obsahuje bezdrátový hardware NFC a také Secure Enclave a Secure Element.
Secure Enclave je speciální čip a integrovaná paměť RAM, která ukládá informace o zařízení a uživateli a informace o účtu Apple a má schopnost ověřit tato data v sítích se servery Apple. Používá se také k přihlášení do zařízení Apple iOS.
Secure Enclave využívá šifrování, hardwarovou infrastrukturu veřejných klíčů (PKI), ověřování zařízení a několik dalších technologií, aby bylo zajištěno, že každé zařízení Apple je autentické a nebylo s ním manipulováno.
Secure Element je speciální hardwarová funkce, která umožňuje zařízením iOS ukládat data uživatelů, účtů a aplikací v zabezpečené, zašifrované, zazděné oblasti paměti RAM. Tato oblast je chráněna před zbytkem zařízení a iOS.
Většina Secure Element používá pro přístup k datům svůj vlastní firmware, aby bylo možné ověřit jejich pravost.
Secure Enclave a Secure Element zabraňují podvodným útokům a útokům typu man-in-the-middle. Jsou prakticky nerozbitné, protože k ověření používají vlastní servery společnosti Apple.
NFCSPE používá Secure Element k ukládání a autorizaci transakcí a jejich přidružených dat a uživatelů.
NFCSPE API
Apple poskytne zabezpečená NFCSPE API v iOS 18.1, která aplikacím umožní provádět bezpečné NFC transakce a integrovat a ukládat informace o bezkontaktních účtech.
Rozhraní NFCSPE API budou zpočátku dostupná pouze v omezených oblastech a pouze pro aplikace, které byly schváleny a autorizovány třetími stranami vyhovujícími standardu Apple a Payment Card Industry Data Security Standard (PCIDSS).
Aby vaše aplikace založená na NFCSPE fungovala, musí být schválena v App Store společnosti Apple nebo na schváleném trhu aplikací třetích stran. Aplikace založené na NFCSPE budou fungovat pouze v oblastech, ve kterých společnost Apple schválila NFCSPE.
Po schválení a vydání může vaše aplikace používat rozhraní NFCSPE API a bezpečnostní platformy Apple k provádění bezpečných transakcí NFC.
Omezení a pravidla
NFCSPE API nejsou zcela otevřená a volně použitelná.
Jakákoli firma, která chce používat API a být schválena společností Apple, musí zejména:
- Být schváleným vývojářem Apple
- Nechte firmu zapsat do obchodního rejstříku Apple
- Podepište a odešlete aktualizovanou smlouvu pro vývojáře Apple, která bude zahrnovat NFCSPE
- Podporujte iPhone XS nebo novější se systémem iOS 18.1 nebo novějším
- Být usazen v jednom ze způsobilých území
- Splňujte všechny bezpečnostní standardy a požadavky na soukromí
- Zaveďte přísné zásady řešení incidentů
- Zaručit bezpečné zpracování uživatelských dat
- Odhalte potenciální zranitelnosti aplikací NFCSPE
- Proveďte kontrolu zabezpečení prostřednictvím určené testovací laboratoře
Aplikace Apple NFCSPE jsou zpočátku omezeny v tom, jaké transakce mohou iniciovat. Všechny aplikace budou muset zpočátku podporovat jeden nebo více z následujících typů transakcí:
- Platby NFC v obchodě
- Klíče od auta, domu nebo hotelu
- Tranzit s uzavřenou smyčkou
- Firemní odznaky
- Studentské průkazy
- Věrnostní nebo odměnové programy obchodníka
- Vstupenky na akce
- Vládní identifikační číslo (později)
Každá firma bude muset zadat „výchozí aplikaci“, která, když uživatel přiložením zaplatí, spustí a představí autorizační/transakční rozhraní na zařízení iOS. Na každém zařízení iOS bude jedna aplikace NFCSPE označena jako výchozí aplikace.
Všechny aplikace NFCSPE běžící na zařízeních iOS mošt podporují Face ID i Touch ID pro ověření uživatele. V případě, že tyto dvě metody nelze použít, je nutné použít heslo pro odemknutí zařízení.
V současnosti jsou to jediné tři povolené hardwarové metody ověřování uživatelů. Apple může nebo nemusí v budoucnu povolit další hardwarovou autorizaci.
Většina terminálů NFC používá pro komunikaci příkazy ISO 7816-4. Všechny aplikace NFCSPE musí podporovat tuto sadu příkazů.
Kód a testování
Jako by to všechno nebylo dostatečně složité, je toho víc.
Chcete-li vytvořit a distribuovat aplikaci s podporou NFCSPE pro iOS, musíte o to požádat Apple, být schváleni a musíte od společnosti Apple získat dvě další oprávnění k aplikaci, která budou zahrnuta do souboru plist vaší aplikace v Xcode.
Tyto dva nároky jsou:
- com.developer.apple.secure-element-credential
- com.developer.apple.secure-element.default-contactless-app
Obě nastavení v Xcode jsou booleovská a první musí být nastaveno na Ano. Pokud má být aplikace, kterou vyvíjíte, definována jako výchozí aplikace pro bezkontaktní transakce pro toto zařízení, druhý nárok musí být také nastaven na Ano.
Obě tato oprávnění můžete přidat a nastavit v Xcode kliknutím na soubor nároků v navigátoru projektu Xcode, vložením hodnot, jejich nastavením a uložením souboru.
Pokud vaše firma a aplikace ještě nebyly schváleny společností Apple pro NFCSPE, aplikace stále nebude fungovat pro transakce NFC, pokud vám společnost Apple skutečně neudělila tato oprávnění.
Dalším novým krokem ve výrobě aplikací NFCSPE je, že jakmile je vaše aplikace hotová a připravená k vydání, Apple nyní vyžaduje, aby nezávislá testovací laboratoř testovala a ověřila aplikaci.
je to tak. A to není volitelné. Svou aplikaci nemůžete jen vytvořit, vydat a nechat ji zobrazit v App Store. Bez laboratorního testování třetí stranou nebude vaše aplikace NFCSPE společností Apple nikdy schválena k vydání.
Může se to zdát jako obtížný požadavek, a také je, ale Apple to dělá, aby zajistil, že každá aplikace NFCSPE bude absolutně neprůstřelná, než se dostane k zákazníkům.
Protože většina funkcí aplikací NFCSPE je soustředěna kolem plateb, uživatelských informací a transakcí, Apple si chce být jistý, že systém je zcela bezpečný, než se stane běžným.
Výhodou toho je, že pravděpodobně neuvidíme druh hackerských útoků a narušení bezpečnosti s NFCSPE, které nyní vidíme téměř denně u běžných bankovních systémů a systémů kreditních karet. A to je to, čeho chce Apple dosáhnout.
NFCSPE a nezávislí vývojáři
Pro některé indie vývojáře bude NFCSPE fungovat, ale pro některé ne. Zejména vývojové obchody pro jednu osobu nebo společnosti s omezeným rozpočtem si jednoduše nemohou dovolit vývoj NFCSPE.
Ale protože většinu finančních transakcí nebo ID systémů tak jako tak zpracovávají velké organizace, nemusí to být tak velký problém.
Protože tyto aplikace musí pracovat s veškerým fyzickým hardwarem NFC terminálu, vývojáři budou muset mít přístup alespoň k jednomu takovému terminálu pro testování. Testování musí být také provedeno na způsobilých trzích, což může znamenat fyzickou přítomnost tam.
Existují také některé nové přísné pokyny pro uživatelské rozhraní Apple, které musí vývojáři v aplikacích NFCSPE dodržovat.
NFCSPE je nová třída vývoje – třída s mnohem složitějšími a přísnějšími požadavky. Uspějí pouze ti, kteří jsou schopni splnit všechny požadavky.
Apple má obrovskou stránku o všech podrobnostech programu.
Apple dal jasně najevo, že to s tím stát se lídrem v bezkontaktních platbách myslí vážně. Mnohé z těchto systémů jsou již široce používány na mnoha místech mimo USA.
Budeme muset počkat a uvidíme, jak se tato nová iniciativa společnosti Apple vyvine, ale jak to vypadá, NFCSPE tu zůstane.
Zdroj: appleinsider.com