NFC (Near Field Communication) — rövid hatótávolságú vezeték nélküli kommunikációs technológia, amely lehetővé teszi az adatok cseréjét eszközök között akár 10 centiméteres távolságon belül. Az NFC-t mobiltelefonokban használják érintés nélküli fizetésre, fájlátvitelre és címkék olvasására. A Grand View Research, 2025 adatai szerint az NFC chipek piaca elérte a 34,5 milliárd dollárt az NFC okostelefonokba és fizetési infrastruktúrába történő tömeges bevezetésének köszönhetően világszerte.
Főbb pontok
NFC (Near Field Communication) egy rövid távolságú vezeték nélküli adatátviteli szabvány, amely 13,56 MHz frekvencián működik. A technológia az RFID-n (Radio Frequency Identification) alapul és visszafelé kompatibilis az ISO 14443 — érintés nélküli intelligens kártyák szabványával. Az adatátviteli sebesség 106, 212 vagy 424 kb/s a választott módtól függően.
Ellentétben a Bluetooth-tal, az NFC nem igényel párosítási eljárást — az eszközök azonnal adatot cserélnek, amikor közelítik egymáshoz. A maximális kommunikációs távolság 10 cm, ami természetes védelmet nyújt a lehallgatás ellen. A NFC Forum szerint a technológiát több mint 3 milliárd eszköz támogatja világszerte, és ez a szám évente 15–20%-kal nő.
Az NFC szabványt az NFC Forum fejleszti — egy konzorcium, amelyet a Sony, a Philips és a Nokia alapított 2004-ben. Az első NFC-s telefon (Nokia 6131) 2006-ban jelent meg, de a tömeges elterjedés az Android 4.0 (Ice Cream Sandwich) 2011-es és az Apple Pay 2014-es bevezetése után kezdődött. Ma már szinte minden 150 dollárnál többe kerülő okostelefon támogatja az NFC-t.
Az NFC vezérlő az okostelefonban három működési módot támogat, amelyek mindegyike a saját feladatkörére szolgál. A módok közötti váltás automatikusan történik a kölcsönhatásba lépő eszköz típusától függően.
Ebben a módban a telefon aktív NFC címkeolvasóként működik. Amikor NFC címkéhez — matricalhoz, karkötőhöz vagy plakáthoz — közelítik, a telefon beolvassa az adatokat a címke memóriájából. A címkék 48 bájttól 32 KB-ig terjedő memóriával rendelkeznek, és URL-eket, szöveget vagy parancsokat tárolnak. Az Android Beam (amelyet a Nearby Share váltott fel) ezt a módot használta a linkek és névjegykártyák átvitelére.
Két NFC eszköz közvetlenül cserél adatot. Az egyik eszköz kezdeményezőként, a másik célként működik. Az LLCP (Logical Link Control Protocol) szabvány kezeli a kapcsolatot, az SNEP (Simple NDEF Exchange Protocol) pedig az adatformátumot. A P2P módot gyors névjegy-, linkátvitelre vagy Bluetooth párosítás kezdeményezésére használják. A sebesség P2P módban eléri a 424 kb/s-t.
A telefon érintés nélküli intelligens kártyát — fizetőkártyát, tömegközlekedési jegyet vagy belépőkártyát — emulál. Egy külső NFC eszköz (POS-terminál, forgókapu) ugyanúgy kommunikál a telefonnal, mint egy szokásos műanyag kártyával. Ezt a módot használják az Apple Pay-ben, a Google Pay-ben és a Samsung Pay-ben. A fizetések biztonságát a Secure Element biztosítja — egy elkülönített chip, amely tárolja a fizetőkártyák adatait.
| Mód | Használati példa | Secure Element szükséges |
|---|---|---|
| Reader/Writer | NFC címke olvasása URL-lel | Nem |
| Peer-to-Peer | Névjegy átadása telefonok között | Nem |
| Card Emulation | Fizetés Google Pay-jel | Igen |
Az NFC és a Bluetooth LE (Low Energy) két gyakran összehasonlított közeltávolságú technológia. NFC a kapcsolat létrehozásának sebességében (0,1 másodperc) nyer és nem igényel párosítást, de hátrányban van az adatátviteli sebesség és hatótávolság terén. Bluetooth LE párosítást igényel (2–5 másodperc), de akár 2 Mb/s sebességet és 100 méteres hatótávolságot kínál.
A gyakorlatban az NFC és a Bluetooth nem versenyez, hanem kiegészítik egymást. Az NFC a kapcsolat kezdeményezésére (handover) szolgál: elég a telefont az eszközhöz közelíteni, hogy az NFC átadja a Bluetooth kapcsolat paramétereit (NFC Bluetooth Handover). Ezt követően az eszközök átkapcsolnak Bluetooth-ra gyors fájlátvitelhez vagy audiostreaminghez.
Az okostelefon NFC modulja három összetevőből áll: NFC vezérlő (NFC Controller), NFC antenna és Secure Element (biztonságos műveletekhez). Az NFC vezérlő egy különálló chip vagy egy kombinált kommunikációs modul része (NFC + Bluetooth + Wi-Fi, pl. WCN3990 a Qualcommtól). Ez kezeli a rádióinterfészt és a csereprotokollokat.
Az NFC antenna egy nyomtatott tekercs rugalmas hordozón (FPC) vagy az akkumulátor házán. Az antenna mérete 20×30 mm, a menetszám 3–5. Az antenna egy 13,56 MHz-re hangolt illesztő áramkörön keresztül csatlakozik a vezérlőhöz. Az NXP Semiconductors szerint az antenna hatékony működése megköveteli az induktivitás és a jósági tényező pontos kiszámítását.
Secure Element (eSE) — különálló kriptográfiai chip (NXP P71, Samsung S3K) vagy elkülönített terület a SoC-ben (iSE — integrated Secure Element). Tárolja a fizetőkártyák adatait és kriptográfiai műveleteket végez a HCE (Host Card Emulation) számára. A Secure Element elkülönített az Android/iOS rendszertől: csak az NFC vezérlő férhet hozzá APDU parancsokkal az SWP (Single Wire Protocol) buszon keresztül.
// Példa APDU parancsra a Secure Element-tel való interakcióhoz
const uint8_t SELECT_APDU[] = {
0x00, 0xA4, 0x04, 0x00, // CLA, INS, P1, P2
0x07, // az adatok hossza (7 bájt)
0xA0, 0x00, 0x00, 0x00, // RID — regisztrált
0x03, 0x10, 0x10, // PIX — alkalmazásazonosító
0x00 // Le — várható válaszhossz
};
// Parancs küldése az NFC vezérlőn keresztül a Secure Elementbe
NfcStatus nfcStatus = sendApdu(SELECT_APDU, sizeof(SELECT_APDU));
Az NFC a telefonban négy fő forgatókönyvben használatos: érintés nélküli fizetés, közlekedés, objektumokhoz való hozzáférés és feladatok automatizálása. A legelterjedtebb alkalmazás a fizetőrendszerek: Apple Pay, Google Pay és Samsung Pay. Ezek a Card Emulation módot használják HCE-vel (Host Card Emulation) vagy Secure Elementtel a bankkártya emulálásához.
Világszerte a közlekedési rendszerek (Moszkvai Metró, London Tube, New York MTA) elfogadják az NFC fizetéseket mobiltárcákon keresztül. Japánban az NFC-alapú FeliCa (Sony) technológiát 2004 óta használják utazásra, vásárlásra és irodai hozzáférésre. A FeliCa chippel rendelkező okostelefonok, mint a japán piacra szánt iPhone, támogatják a Suica és PASMO rendszereket.
Az NFC címkék (NFC Tags) lehetővé teszik az „okos otthon” forgatókönyvek automatizálását: közelítse a telefont az ágy melletti címkéhez — az ébresztő bekapcsol és az értesítések kikapcsolnak. Androidon ez az Android Beam / NFC Tools segítségével, iOS-en a Shortcuts és NFC triggerekkel valósítható meg. Egyes okostelefonok az NFC-t gyorstöltéshez is használják — a Qi szabvány az NFC-t használja a töltő azonosításához.
Az Android API-t biztosít az NFC címkék feldolgozásához az Intent Systemen keresztül. Amikor a címkét a telefonhoz közelítik, a rendszer létrehoz egy intentet a címkével, és az alkalmazás NDEF (NFC Data Exchange Format) formátumban kapja meg az adatokat. Alább egy példa Activity, amely URL-t vagy szöveget olvas be egy NFC címkéről.
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 adatok: $payload")
}
}
}
}
}
Az NFC működéséhez deklarálni kell az android.permission.NFC engedélyt a manifestben és be kell állítani egy intent-filter-t ACTION_NDEF_DISCOVERED, ACTION_TECH_DISCOVERED vagy ACTION_TAG_DISCOVERED számára. Az Android automatikusan szűri az NFC címkéket az NDEF-rekord típusa alapján — ez lehetővé teszi az alkalmazás számára, hogy csak bizonyos MIME típusú vagy URL előtagú címkékre reagáljon. Vegye figyelembe, hogy az NFC antenna általában a telefon hátsó paneljének felső részében található — a címke olvasásához a telefon felső részét kell a címkéhez közelíteni.
Gyakran Ismételt Kérdések
Igen, az érintés nélküli fizetéshez az NFC-t be kell kapcsolni a telefon beállításaiban. Google Pay automatikusan aktiválja az NFC-t a terminálhoz közelítve, még akkor is, ha a kijelző ki van kapcsolva (Android 10+ és telepített Google Wallet esetén). Az Apple Pay esetében az NFC automatikusan bekapcsol és nem igényel kézi aktiválást.
Az NFC szabványos hatótávolsága 10 centiméter. A gyakorlatban a megbízható kapcsolat érdekében ajánlott a telefont 2–4 cm távolságra tartani az olvasótól. A kisebb hatótávolság biztonságosabbá teszi az NFC-t a Bluetooth-nál — a támadó nem tudja távolról kiolvasni az adatokat.
Elméletileg egy NFC címke tartalmazhat linket egy rosszindulatú oldalra, de ez a felhasználó részéről kattintást igényel. Automatikus fertőzés NFC-n keresztül lehetetlen, mert a technológia nem támogatja a kód futtatását vagy fájlok telepítését megerősítés nélkül. Az Android és iOS operációs rendszerek blokkolják a potenciálisan veszélyes NFC műveleteket.
Androidon: nyissa meg a Beállítások → Kapcsolatok → NFC menüpontot (vagy keressen „NFC” szóra a beállításokban). iPhone-on: az iPhone 6 és újabb modellek mindegyike támogatja az NFC-t. Egyes gyártók a házzal vagy a dobozon NFC szimbólummal jelölik. Használhatja a NFC Check alkalmazást is a Play Marketről diagnosztikai célokra.
Az NFC csak aktív módban fogyaszt energiát — adatátvitel során. Készénléti módban az NFC vezérlő gyakorlatilag nem fogyaszt energiát (0,01 mA). A bekapcsolt NFC nem befolyásolja a telefon akkumulátoros üzemidejét. Ez különbözteti meg a Bluetooth-tól, amely készénléti módban is fogyaszt energiát.
Összefoglaló
Kulcsrakész mobilalkalmazást fejlesztünk
Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.
Olvassa el is