NFC (Near Field Communication) — technologie bezdrátové komunikace na krátkou vzdálenost, která umožňuje výměnu dat mezi zařízeními na vzdálenost až 10 centimetrů. NFC se používá v mobilních telefonech pro bezkontaktní platby, přenos souborů a čtení tagů. Podle údajů Grand View Research, 2025 dosáhl trh s NFC čipy 34,5 miliardy dolarů díky masovému zavedení NFC do chytrých telefonů a platební infrastruktury po celém světě.
Hlavní body
NFC (Near Field Communication) je standard bezdrátového přenosu dat na krátké vzdálenosti, který pracuje na frekvenci 13,56 MHz. Technologie je založena na RFID (Radio Frequency Identification) a je zpětně kompatibilní s ISO 14443 — standardem bezkontaktních čipových karet. Rychlost přenosu dat je 106, 212 nebo 424 kb/s v závislosti na zvoleném režimu.
Na rozdíl od Bluetooth, NFC nevyžaduje proceduru párování — zařízení si vyměňují data okamžitě při přiblížení. Maximální komunikační vzdálenost je 10 cm, což poskytuje přirozenou ochranu proti odposlechu. Podle NFC Forum technologii podporuje více než 3 miliardy zařízení po celém světě a toto číslo každoročně roste o 15–20 %.
Standard NFC vyvíjí NFC Forum — konsorcium založené společnostmi Sony, Philips a Nokia v roce 2004. První telefon s NFC (Nokia 6131) se objevil v roce 2006, ale masové rozšíření začalo po vydání Android 4.0 (Ice Cream Sandwich) v roce 2011 a spuštění Apple Pay v roce 2014. Dnes NFC podporují téměř všechny chytré telefony s cenou nad 150 dolarů.
Řadič NFC v chytrém telefonu podporuje tři režimy práce, z nichž každý je určen pro svou třídu úkolů. Přepínání mezi režimy probíhá automaticky v závislosti na typu zařízení, se kterým se komunikuje.
V tomto režimu telefon funguje jako aktivní čtečka NFC tagů. Při přiložení k NFC tagu — samolepce, náramku nebo plakátu — telefon přečte data z paměti tagu. Tagy obsahují 48 bajtů až 32 KB paměti a ukládají URL, text nebo příkazy. Android Beam (nahrazený službou Nearby Share) používal tento režim pro přenos odkazů a kontaktů.
Dvě NFC zařízení si přímo vyměňují data. Jedno zařízení funguje jako iniciátor, druhé jako cíl. Standard LLCP (Logical Link Control Protocol) řídí spojení a SNEP (Simple NDEF Exchange Protocol) formát dat. Režim P2P se používá pro rychlý přenos kontaktů, odkazů nebo zahájení párování Bluetooth. Rychlost v režimu P2P dosahuje 424 kb/s.
Telefon emuluje bezkontaktní čipovou kartu — platební kartu, jízdenku nebo průkaz. Externí NFC zařízení (POS terminál, turniket) komunikuje s telefonem stejně jako s běžnou plastovou kartou. Tento režim se používá v Apple Pay, Google Pay a Samsung Pay. Bezpečnost plateb je zajištěna Secure Element — izolovaným čipem, který ukládá data platebních karet.
| Režim | Příklad použití | Vyžaduje Secure Element |
|---|---|---|
| Reader/Writer | Čtení NFC tagu s URL | Ne |
| Peer-to-Peer | Předání kontaktu mezi telefony | Ne |
| Card Emulation | Platba prostřednictvím Google Pay | Ano |
NFC a Bluetooth LE (Low Energy) jsou dvě technologie krátkého dosahu, které se často srovnávají. NFC vítězí v rychlosti navázání spojení (0,1 s) a nevyžaduje párování, ale zaostává v rychlosti přenosu dat a dosahu. Bluetooth LE vyžaduje párování (2–5 sekund), ale nabízí rychlost až 2 Mb/s a dosah až 100 metrů.
V praxi NFC a Bluetooth nekonkurují, ale vzájemně se doplňují. NFC se používá k zahájení spojení (handover): stačí přiložit telefon k zařízení, aby NFC předalo parametry Bluetooth spojení (NFC Bluetooth Handover). Poté zařízení přepnou na Bluetooth pro rychlý přenos souborů nebo audio streaming.
Modul NFC smartphonu se skládá ze tří komponent: řadiče NFC (NFC Controller), NFC antény a Secure Element (pro zabezpečené operace). Řadič NFC je samostatný čip nebo součást kombinovaného komunikačního modulu (NFC + Bluetooth + Wi-Fi, např. WCN3990 od Qualcommu). Řídí rádiové rozhraní a protokoly výměny.
NFC anténa je tištěná cívka na flexibilním substrátu (FPC) nebo na pouzdru baterie. Velikost antény je 20×30 mm, počet závitů 3–5. Anténa se připojuje k řadiči přes přizpůsobovací obvod naladěný na frekvenci 13,56 MHz. Podle NXP Semiconductors vyžaduje efektivní práce antény přesný výpočet indukčnosti a činitele jakosti.
Secure Element (eSE) — samostatný kryptografický čip (NXP P71, Samsung S3K) nebo izolovaná oblast v SoC (iSE — integrated Secure Element). Ukládá data platebních karet a provádí kryptografické operace pro HCE (Host Card Emulation). Secure Element je izolován od Androidu/iOS: přístup k němu má pouze řadič NFC prostřednictvím příkazů APDU po sběrnici SWP (Single Wire Protocol).
// Příklad APDU příkazu pro interakci se Secure Element
const uint8_t SELECT_APDU[] = {
0x00, 0xA4, 0x04, 0x00, // CLA, INS, P1, P2
0x07, // délka dat (7 bajtů)
0xA0, 0x00, 0x00, 0x00, // RID — registrovaný
0x03, 0x10, 0x10, // PIX — identifikátor aplikace
0x00 // Le — očekávaná délka odpovědi
};
// Odeslání příkazu řadičem NFC do Secure Element
NfcStatus nfcStatus = sendApdu(SELECT_APDU, sizeof(SELECT_APDU));
NFC v telefonu se používá ve čtyřech hlavních scénářích: bezkontaktní platba, doprava, přístup k objektům a automatizace úkolů. Nejmasivnější aplikací jsou platební systémy: Apple Pay, Google Pay a Samsung Pay. Ty používají režim Card Emulation s HCE (Host Card Emulation) nebo Secure Element pro emulaci bankovní karty.
Dopravní systémy po celém světě (Moskevské metro, London Tube, New York MTA) přijímají NFC platby prostřednictvím mobilních peněženek. V Japonsku se technologie FeliCa (Sony) založená na NFC používá pro cestování, nákupy a přístup do kanceláří od roku 2004. Chytré telefony s čipem FeliCa, jako je iPhone pro japonský trh, podporují Suica a PASMO.
NFC tagy (NFC Tags) umožňují automatizaci scénářů „chytré domácnosti“: přiložte telefon k tagu u postele — zapne se budík a vypnou se oznámení. Na Androidu se to realizuje přes Android Beam / NFC Tools, na iOS prostřednictvím Shortcuts a NFC triggerů. Některé chytré telefony také používají NFC pro rychlé nabíjení — standard Qi používá NFC k identifikaci nabíječky.
Android poskytuje API pro zpracování NFC tagů prostřednictvím Intent System. Při přiložení tagu k telefonu systém vytvoří intent s tagem a aplikace obdrží data ve formátu NDEF (NFC Data Exchange Format). Níže je příklad Activity, která čte URL nebo text z NFC tagu.
class NfcReaderActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_nfc)
handleNfcIntent(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
handleNfcIntent(intent)
}
private fun handleNfcIntent(intent: Intent) {
if (intent.action == NfcAdapter.ACTION_NDEF_DISCOVERED) {
val rawMessages = intent
.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES)
rawMessages?.forEach { rawMsg ->
val msg = rawMsg as NdefMessage
msg.records.forEach { record ->
val payload = String(record.payload)
println("NFC data: $payload")
}
}
}
}
}
Pro práci NFC je třeba deklarovat oprávnění android.permission.NFC v manifestu a nakonfigurovat intent-filter pro ACTION_NDEF_DISCOVERED, ACTION_TECH_DISCOVERED nebo ACTION_TAG_DISCOVERED. Android automaticky filtruje NFC tagy podle typu NDEF záznamu — to umožňuje aplikaci reagovat pouze na tagy s určitým MIME typem nebo URL prefixem. Mějte na paměti, že NFC anténa se obvykle nachází v horní části zadního panelu telefonu — pro čtení tagu je třeba přiložit horní část telefonu k tagu.
Často kladené otázky
Ano, pro bezkontaktní platbu musí být NFC zapnuto v nastavení telefonu. Google Pay automaticky aktivuje NFC při přiložení k terminálu, i když je obrazovka vypnutá (na zařízeních s Android 10+ a nainstalovaným Google Wallet). Pro Apple Pay se NFC zapíná automaticky a nevyžaduje ruční aktivaci.
Standardní dosah NFC je až 10 centimetrů. V praxi se pro spolehlivé spojení doporučuje přidržet telefon ve vzdálenosti 2–4 cm od čtečky. Menší dosah dělá NFC bezpečnějším než Bluetooth — útočník nemůže číst data na dálku.
Teoreticky může NFC tag obsahovat odkaz na škodlivý web, ale to vyžaduje akci uživatele — kliknutí na odkaz. Automatická infekce přes NFC je nemožná, protože technologie nepodporuje spouštění kódu ani instalaci souborů bez potvrzení. Operační systémy Android a iOS blokují potenciálně nebezpečné NFC akce.
Na Androidu: otevřete Nastavení → Připojení → NFC (nebo vyhledejte „NFC“ v nastavení). Na iPhonu: všechny modely od iPhone 6 výše podporují NFC. Někteří výrobci označují tělo nebo krabici symbolem NFC. Pro diagnostiku můžete také použít aplikaci NFC Check z Play Marketu.
NFC spotřebovává energii pouze v aktivním režimu — při přenosu dat. V pohotovostním režimu řadič NFC prakticky nespotřebovává energii (0,01 mA). Zapnuté NFC neovlivňuje výdrž baterie telefonu. To jej odlišuje od Bluetooth, který spotřebovává energii i v pohotovostním režimu.
Shrnutí
Vyvineme mobilní aplikaci na klíč
IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.
Přečtěte si také