What is the best NFC tweak for iOS?

iPhone jako NFC tag? Možnosti a omezení emulace

11/11/2022

Rating: 4.51 (10233 votes)

Věděli jste, že váš iPhone je vybaven technologií NFC (Near Field Communication), která umožňuje bezkontaktní platby a interakci s chytrými štítky? Mnoho uživatelů se však ptá: Může můj iPhone sám fungovat jako NFC tag, který emuluje například přístupovou kartu nebo věrnostní kupón? Odpověď je složitější, než by se mohlo zdát, a závisí na tom, co přesně chcete emulovat a zda jste ochotni prozkoumat i neoficiální cesty. V tomto článku se podíváme na hlubší úroveň fungování NFC na iPhonech, prozkoumáme oficiální možnosti, které Apple nabízí, a také se ponoříme do světa jailbreaku, kde se otevírají zcela nové dimenze.

Can an iPhone emulate an NFC tag?
Although many topics have already talked about the impossibility for an iPhone to emulate an NFC tag, I found this document that talks about card emulation based on the PassKit (on page 6). By imag...

NFC technologie je v iPhonech přítomna již řadu let a je primárně známá díky své roli v Apple Pay, systému bezkontaktních plateb, který změnil způsob, jakým nakupujeme. Funguje na principu bezdrátové komunikace na krátkou vzdálenost, obvykle do několika centimetrů, což zajišťuje vysokou bezpečnost a spolehlivost. Kromě plateb se NFC na iPhonech využívá i pro čtení NFC tagů, například pro rychlé spouštění automatizací, získávání informací z chytrých plakátů nebo párování s některými zařízeními. Otázka emulace, tedy schopnosti iPhonu chovat se jako samotný NFC tag, je však mnohem komplexnější a je klíčová pro pochopení jeho plného potenciálu i omezení.

Obsahový index

Oficiální možnosti emulace: Co Apple povoluje?

PassKit a Služby s přidanou hodnotou (Value Added Services - VAS)

Když se bavíme o oficiálních možnostech emulace NFC tagů na iPhonu bez nutnosti jailbreaku, musíme se podívat na framework PassKit a jeho funkci Služeb s přidanou hodnotou (Value Added Services, zkráceně VAS). Na první pohled by se mohlo zdát, že toto je cesta k emulaci libovolných NFC karet. Skutečnost je ale taková, že se jedná o velmi omezenou funkcionalitu, která je navržena specificky pro doručování dodatečných informací k věrnostním kartám nebo vstupenkám prostřednictvím Apple Pay terminálů.

Princip spočívá v tom, že iPhone může poskytnout čtečce, která podporuje Apple's Value Added Services Protocol, dodatečné informace – například stav věrnostních bodů nebo speciální nabídky. Tyto informace jsou součástí protokolu Apple Pay a nejsou určeny pro obecnou emulaci jakéhokoli typu NFC tagu, jako je například standardní Mifare DESFire karta. Terminál musí být speciálně nakonfigurován tak, aby dokázal tento protokol přijímat. Data jsou omezena na 64 bytů a jsou určena pouze pro specifické účely, nikoli pro simulaci komplexního chování NFC tagu, který by mohl reagovat na různé příkazy.

Ve zkratce, i když to vypadá jako emulace, je to spíše rozšířená funkcionalita Wallet aplikace, která komunikuje s kompatibilními čtečkami velmi specifickým, Applem definovaným způsobem. Není to obecná schopnost iPhonu chovat se jako standardní NFC tag.

Apple HCE (Host Card Emulation): Revoluce pro platby, ne pro emulaci tagů

Další důležitou oblastí, kde se Apple dotýká ‚otevřenosti‘ NFC, je Apple HCE (Host Card Emulation). Toto řešení představuje odpověď Applu na požadavky Evropské unie (a nyní i USA) na otevření NFC čipu třetím stranám, zejména pro platební služby. S Apple HCE mohou poskytovatelé platebních služeb a vývojáři v EU (s příslušnými pověřeními) využívat NFC čip v iPhonu pro své vlastní platební aplikace.

Klíčový rozdíl spočívá v tom, že tito poskytovatelé nemohou využívat vestavěný zabezpečený prvek (eSE) iPhonu. eSE je hluboce integrován do křemíku Apple a je považován za duševní vlastnictví Applu. Místo toho se Apple HCE spoléhá na ‚otevřený‘ zabezpečený prvek v cloudu. To znamená, že funkce zabezpečeného prvku není na zařízení, ale je řešena softwarově v aplikaci a komunikuje se serverem přes internet.

Tento přístup má své kompromisy. Zatímco poskytuje ‚otevřenost‘, přichází s menší bezpečností a omezenějšími funkcemi. Aplikace využívající HCE nebudou využívat tokenizaci transakcí Apple Pay a postrádají funkce jako Express Mode pro tranzit nebo Power Reserve, které umožňují transakce i s vybitou baterií. Spolehlivost transakcí závisí na infrastruktuře poskytovatele a jejich schopnosti implementovat protokoly jako EMV 3-D Secure v2.

Paradoxně, zatímco Apple HCE má být ‚otevřenější‘, je méně bezpečný a funkční než řešení postavené na eSE. Dokonce i Google na Androidu, který dříve HCE široce podporoval, nyní aktivně propaguje Android Ready SE Alliance, aby podpořil využívání eSE. To jasně ukazuje, že eSE je vnímán jako bezpečnější a komplexnější řešení. Proč tedy někteří vývojáři stále volí HCE? Často je to kvůli nákladům. HCE může být levnější na implementaci pro poskytovatele, což jim umožňuje vyšší zisky, i když na úkor uživatelského zážitku a bezpečnosti.

Shrnuto, Apple HCE je specifické řešení pro platební ekosystém, které umožňuje třetím stranám přístup k NFC čipu pro platby, ale nejedná se o obecnou emulaci NFC tagů pro běžné uživatele ani o plnohodnotnou náhradu zabezpečeného prvku.

What is Apple NFC core API?
Apple just announced new NFC Core API to public. Here is what they said. Core NFC With Core NFC framework, your apps can now support tag writing, including writing to NDEF formatted tags. The framework also provides supports for reading and writing tags using native protocols such as ISO 7816, MIFARE, ISO 15693, and FeliCa.

Core NFC API: Čtení a zápis, ale emulace?

S příchodem frameworku Core NFC Apple výrazně rozšířil možnosti pro vývojáře v oblasti interakce s NFC. Od iOS 13 mohou aplikace využívat Core NFC pro čtení a zápis NDEF formátovaných tagů. Framework také podporuje čtení a zápis tagů pomocí nativních protokolů jako ISO 7816, MIFARE, ISO 15693 a FeliCa.

To je obrovský krok vpřed pro vývojáře, kteří nyní mohou vytvářet aplikace, jež dokáží plně interagovat s širokou škálou NFC tagů. Můžete si představit aplikace pro správu inventáře, které zapisují data na NFC štítky, nebo aplikace pro interaktivní muzea, které čtou informace z exponátů. Nicméně, i přes tyto pokročilé možnosti, dokumentace Core NFC nezmiňuje podporu pro emulaci karet nebo tagů. Framework je navržen pro interakci s existujícími tagy, nikoli pro to, aby iPhone sám vystupoval jako tag.

Zatímco tedy Core NFC otevírá dveře mnoha zajímavým aplikacím, které využívají NFC k čtení a zápisu dat, neřeší základní otázku, zda iPhone může emulovat kartu tak, aby se choval jako například přístupová karta do budovy nebo jízdenka.

Neoficiální možnosti: Svět Jailbreaku a Aemulo

Pokud oficiální cesty neposkytují požadovanou flexibilitu pro emulaci NFC tagů, existuje jedna cesta, která otevírá dveře k mnohem širším možnostem: jailbreak.

Svět jailbreaku pro iOS zařízení vždy posouval hranice toho, co je s iPhonem možné, a NFC není výjimkou. Zde vstupuje na scénu aplikace Aemulo. Aemulo je považováno za ultimativní NFC tweak pro iOS a nabízí funkcionality, které byste v běžné App Store aplikaci nenašli. Umožňuje uživatelům číst, zapisovat a co je nejdůležitější, emulovat NFC tagy přímo z jedné aplikace.

Co Aemulo umí?

  • Čtení, zápis a emulace: Základní funkcionalita, která pokrývá široké spektrum interakcí s NFC tagy.
  • Přidání karet do Wallet: Jedna z klíčových funkcí Aemulo je možnost přidat emulované karty přímo do aplikace Wallet, což umožňuje jejich vyvolání z uzamčené obrazovky. Tato funkce je však placená a vyžaduje připojení k internetu pro vzdálené podepisování (kvůli omezením Applu).
  • Podporované typy emulace: V současné době Aemulo podporuje emulaci typů Desfire a ISO-Dep. Vývojáři pracují na přidání podpory pro další typy MiFare v budoucích aktualizacích. Je důležité poznamenat, že podpora není zaručena pro všechny vaše tagy.
  • Podpora Amiibo: Aemulo umožňuje čtení a zápis Amiibo figurek. Pro zápis Amiibo jsou vyžadovány prázdné NTAG 215 tagy, které lze zapsat pouze jednou. Pracuje se také na možnosti emulace Amiibo přímo z Aemulo.
  • Přímé příkazy: Pro pokročilé uživatele Aemulo umožňuje posílat příkazy přímo NFC tagům a samotnému NFC čipu v telefonu, což otevírá dveře k detailnímu ladění a experimentování.
  • Čtení tagů na pozadí: Na starších modelech iPhonů Aemulo také umožňuje čtení NDEF tagů na pozadí, aniž by bylo nutné otevírat aplikaci nebo přiřazovat zkratku k NFC tagu.

Požadavky a omezení Aemulo:

  • Jailbreak je nutný: Pro použití Aemulo a všech jeho funkcí je nutný jailbreak. Karta přidaná do Wallet nebude fungovat, pokud jsou tweaky zakázány, a nebude fungovat ani na Apple Watch.
  • Podporovaná zařízení: Aemulo podporuje všechny iPhony s iOS 13 nebo vyšším. iPhone 6S/Plus a iPhone SE mají omezenou podporu čtení a žádnou podporu zápisu, ale plně podporují emulaci.
  • Internetové připojení: Aemulo funguje téměř zcela bez připojení k internetu, s výjimkou funkce „Přidat tag do Wallet“, která vyžaduje vzdálené podepsání (opět omezení Applu).

Aemulo je tedy jedinou cestou, jak dosáhnout skutečné, flexibilní emulace NFC tagů na iPhonu, avšak za cenu nutnosti jailbreaku a přijetí souvisejících rizik.

Proč je emulace na iPhonu tak omezená? Filozofie Applu

Omezení emulace NFC tagů na iPhonu není náhodné, ale je hluboce zakořeněno ve filozofii Applu, která klade důraz na bezpečnost, soukromí a řízený uživatelský zážitek. Apple se snaží zajistit, aby veškeré interakce s citlivými daty, jako jsou platební informace, probíhaly v maximálně zabezpečeném prostředí, což je zajištěno prostřednictvím již zmíněného vestavěného zabezpečeného prvku (eSE).

eSE je vyhrazený, hardwarově oddělený čip, který bezpečně uchovává a zpracovává citlivá data. Právě díky eSE jsou platby Apple Pay tak bezpečné a spolehlivé. Apple si drží přísnou kontrolu nad tím, co může eSE dělat a jak s ním mohou aplikace interagovat, což je v přímém kontrastu s konceptem otevřené emulace libovolného tagu. Umožnění volné emulace by mohlo potenciálně vést k bezpečnostním rizikům, jako je klonování karet nebo zneužití přístupových systémů.

Navíc, Apple preferuje jednotný a bezproblémový uživatelský zážitek. Neřízená emulace by mohla vést k fragmentaci a zmatkům, podobně jako se to stalo na platformě Android s HCE, kde se Google nyní snaží sjednotit vývojáře pod křídly eSE. Apple se snaží vyhnout situacím, kdy by aplikace musely spoléhat na nestabilní internetové připojení nebo by byly zodpovědné za vlastní bezpečnostní protokoly, což by mohlo ohrozit důvěru uživatelů v NFC funkce.

What is Apple HCE (Host Card Emulation)?
Apple has finally given their answer to EU demands (and now USA demands) for ‘open NFC’: Apple HCE (Host Card Emulation). Basically this means that any payment provider/developer in the EU market, with the proper credentials, can use the iPhone NFC chip.

Zatímco pro běžného uživatele je to zklamání, pro Apple je to strategické rozhodnutí, které chrání jeho ekosystém a reputaci jako lídra v oblasti bezpečnosti mobilních technologií.

Srovnávací tabulka: Oficiální vs. Neoficiální emulace NFC na iPhonu

Funkce / Typ emulaceOficiální (PassKit VAS / Apple HCE)Neoficiální (Aemulo - vyžaduje Jailbreak)
Přístup k NFC čipuOmezený, řízený Applem (pro VAS, HCE platby)Plný, přímý přístup
Typy emulaceVelmi specifické (VAS pro věrnostní karty), HCE pro platební protokolyDesfire, ISO-Dep (rozšiřuje se), Amiibo (čtení/zápis)
Zabezpečený prvek (eSE)Využíván pro Apple Pay, není dostupný pro HCE třetích stranNení standardně využíván pro emulaci tagů
BezpečnostVysoká (eSE pro Apple Pay), nižší (HCE pro třetí strany)Závisí na implementaci Aemulo, obecně nižší než eSE
Integrace s WalletPlná (Apple Pay, PassKit), omezená (VAS)Ano (pro emulované karty, placená funkce)
Offline funkčnostPlná (Apple Pay), omezená (HCE vyžaduje online pro transakce)Většinou ano, kromě přidání do Wallet
Požadavek JailbreakuNeAno
CenaZdarma (integrováno v iOS)Placený tweak (trial zdarma)
FlexibilitaVelmi nízkáVysoká
Podpora AmiiboNeAno (čtení/zápis, emulace ve vývoji)

Často kladené otázky (FAQ)

Mohu emulovat svou bankovní kartu pomocí iPhonu?

Ne, váš iPhone nemůže emulovat vaši bankovní kartu v tom smyslu, že by se choval jako fyzická karta. Místo toho Apple Pay (a podobné služby) využívá bezpečný systém tokenizace a vestavěný zabezpečený prvek (eSE) k provádění plateb. Když platíte iPhonem, neposíláte číslo vaší karty, ale jedinečný, jednorázový token. To je mnohem bezpečnější než emulace karty a není to zamýšleno jako náhrada fyzické karty pro účely přímé emulace.

Funguje Aemulo bez internetu?

Většina funkcí Aemulo, jako je čtení, zápis a emulace NFC tagů, funguje zcela offline. Jedinou výjimkou je funkce ‚Přidat tag do Wallet‘, která vyžaduje připojení k internetu. Je to kvůli nutnosti vzdáleného podepsání Apple certifikáty, což je omezení dané Applem.

Podporuje Aemulo emulaci všech typů NFC tagů?

V současné době Aemulo primárně podporuje emulaci typů Desfire a ISO-Dep. Vývojáři pracují na rozšíření podpory pro další typy MiFare v budoucích aktualizacích. Nicméně, není zaručena podpora pro úplně všechny existující typy NFC tagů, jelikož se jedná o složitou technologii s mnoha variantami.

Potřebuji jailbreak k používání NFC na iPhonu?

Ne, k běžnému používání NFC na iPhonu – například pro bezkontaktní platby s Apple Pay, čtení NDEF tagů pomocí Core NFC nebo spouštění automatizací – jailbreak nepotřebujete. Jailbreak je nutný pouze v případě, že chcete využívat pokročilé funkce, jako je plnohodnotná emulace libovolných NFC tagů (například pomocí Aemulo) nebo přímá interakce s NFC čipem na nízké úrovni.

Je používání Aemulo bezpečné?

Používání jailbreakových tweaků, včetně Aemulo, s sebou nese určitá rizika. Jailbreak narušuje bezpečnostní mechanismy iOS, což může zvýšit zranitelnost zařízení vůči malware a neoprávněnému přístupu. Kromě toho, emulace NFC tagů může mít právní důsledky, pokud emulujete karty, k nimž nemáte oprávnění. Vždy je důležité zvážit rizika a používat takové nástroje zodpovědně a s plným vědomím možných důsledků.

Závěr

Schopnost iPhonu emulovat NFC tagy je fascinující, ale zároveň složitá problematika. Oficiální cesta, jak jsme viděli, je velmi omezená a zaměřená spíše na specifické potřeby Apple Pay a jeho ekosystému, s důrazem na bezpečnost a soukromí. Apple pečlivě kontroluje přístup k NFC čipu a zejména k zabezpečenému prvku (eSE), aby udržel integritu svého platebního systému a uživatelského zážitku.

Pro ty, kteří hledají skutečnou flexibilitu a možnost emulovat širokou škálu NFC tagů, se otevírá svět jailbreaku a nástrojů jako je Aemulo. Tyto neoficiální cesty sice poskytují bezprecedentní kontrolu a funkcionalitu, ale přicházejí s vlastními riziky, včetně narušení bezpečnosti systému a potenciální ztráty záruky.

Volba mezi oficiálními omezenými funkcemi a neoficiálními, ale výkonnými možnostmi závisí na vašich konkrétních potřebách a ochotě přijmout související rizika. Je zřejmé, že zatímco iPhone je NFC schopný, jeho využití jako obecného emulátoru NFC tagů je stále složitější úkol, který vyžaduje hlubší porozumění a často i odhodlání jít mimo oficiální cesty Applu.

Chceš-li si přečíst další články podobné jako iPhone jako NFC tag? Možnosti a omezení emulace, navštiv kategorii Technologie.

Go up