Jak programować znaczniki NFC za pomocą różnych typów chipów (NTAG, MIFARE i inne)

Jul 29, 2026

Zostaw wiadomość

Aplikacja wyświetla komunikat „Napisz pomyślnie”. Czytelnik nadal nic nie robi.

Jest to najczęstszy komunikat pomocy technicznej, jaki otrzymujemy po pierwszym uruchomieniu kodowania przez klienta. Nic w przepływie pracy nie wyglądało źle. Telefon zabrzęczał, pojawił się zielony czek, metka trafiła na produkt. Przy drzwiach, w kiosku czy na iPhonie zespołu marketingowego nie dzieje się absolutnie nic. Prawie nikt, kto zaczyna programować tagi NFC, nie spodziewa się, że błąd pojawi się po pomyślnym zapisie.

 

Zanim przejdziemy dalej, warto wiedzieć dla kogo jest to napisane, ponieważ wyniki wyszukiwania wokół tego tematu służą dwóm zupełnie różnym odbiorcom. Jeśli masz jedną naklejkę i jeden telefon i chcesz umieścić na nim hasło Wi-Fi, przejdź do sekcji NTAG, wykonaj te dwa kroki i za minutę gotowe. Jeśli określasz chip dla partii, która musi przetrwać iPhone'y, kontrolę bezpieczeństwa i zamówienie, reszta to odprawa, którą przekazujemy naszym klientom, łącznie z częścią, w której mówimy, czego fabryka nie może dla Ciebie zrobić.

Hardware reader interaction test. A tag may report write success on mobile software while failing validation against physical access readers and terminal infrastructure.

 

Prawie każdy przewodnik dotyczący programowania tagów NFC traktuje tag jako ogólny kontener: pobierz aplikację, dotknij Napisz, przytrzymaj telefon blisko. Ten model działa dokładnie w jednej sytuacji, czyli w przypadku pojedynczej naklejki NTAG21x zapisywanej na telefonie z Androidem do użytku osobistego. W momencie zmiany chipa, zmiany głośności lub w momencie, gdy wśród publiczności znaleźli się użytkownicy iPhone'a, model po cichu przestaje opisywać rzeczywistość.

 

Zapisanie tagu to trzy oddzielne operacje, a nie jedna

 

Kiedy ludzie mówią, że chcą zaprogramować tagi NFC, zwykle opisują trzy różne rzeczy, które uruchamiają się za pomocą tego samego przycisku w aplikacji na telefon.

 

Pierwszym jestformatowanie. Należy poinformować pamięć chipa NFC, że jego obszar użytkownika zawiera komunikat NDEF, a nie dowolne bajty. Odbywa się to poprzez napisanie małej struktury danych zwanej kontenerem możliwości. W przypadku części NTAG21x jest to już wykonywane na poziomie płytki, więc chip jest dostarczany w formacie NDEF-i może przechowywać tylko NDEF. W przypadku MIFARE Classic i niektórych innych układów formatowanie jest czynnością wykonywaną przez użytkownika, a struktura umieszczana jest w regionie, który można-jednorazowo-programować. Formatowanie jest zatem trwałe. Nie ma polecenia unformat ani narzędzia dostawcy, które by je dało.

 

Drugie jestzapisanie ładunku: wiadomość NDEF zawierająca jeden lub więcej rekordów, najczęściej rekord URI wskazujący adres URL. To jest ta część, którą wszyscy sobie wyobrażają. Zapisy ładunku są zwykle powtarzalne, dlatego zespół marketingowy może przekierować tag kampanii sześć miesięcy później bez konieczności ponownego zamawiania sprzętu.

 

Trzeci jestkonfiguracja: bajty hasła, bity blokady, ustawienia lustrzane, warunki dostępu, klucze uwierzytelniające. W tej warstwie podejmowane są nieodwracalne decyzje i jest to warstwa, której nie dotyka żaden poradnik konsumencki. Jeśli planujesz zaprogramować tagi NFC dla czegokolwiek, co ma wokół siebie granicę bezpieczeństwa, warstwą konfiguracyjną jest projekt.

 

Trzymanie tych trzech elementów w głowie oddzielonych od siebie zapobiega wyrzuceniu partii na złom. Większość diagnozowanych przez nas błędów zapisu nie jest awarią ładunku. Są to stan formatowania lub stan konfiguracji, o istnieniu którego ktoś nie wiedział.

 

Porównanie typów chipów NFC przed ich zaprogramowaniem

 

Każda poważna decyzja dotycząca programowania znaczników NFC na dużą skalę rozpoczyna się od tej tabeli, ponieważ pułap pamięci i obsługa platformy są ustalane w momencie wyboru chipa i nie można ich później załatać w oprogramowaniu.

 

Żeton Pamięć użytkownika Typ forum NFC Stan fabryczny NDEF Ochrona hasłem/kluczem iPhone NDEF odczyt + zapis
NTAG 213 144 bajty Typ 2 Wstępnie-sformatowany 32-bitowe PWD / 16-bitowy PAKIET Tak
NTAG 215 504 bajty Typ 2 Wstępnie-sformatowany 32-bitowe PWD / 16-bitowy PAKIET Tak
NTAG 216 888 bajtów Typ 2 Wstępnie-sformatowany 32-bitowe PWD / 16-bitowy PAKIET Tak
MIFARE Ultralekki EV1 48 lub 128 bajtów Typ 2 Możliwość formatowania 32-bitowe PWD / 16-bitowy PAKIET Tak
MIFARE Classic 1K Łącznie 1024 bajty, około 716 dostępnych dla NDEF po odjęciu bloku producenta i 16 zwiastunów sektorów To nie jest forum typu NFC Możliwość formatowania,-oparta na sektorach Klucze sektora CRYPTO-1 A/B NIE
MIFARE DESFire EV3 2 KB do 8 KB,-w oparciu o plik Typ 4 Należy utworzyć aplikację AES-128 / 3DES, prawa dostępu do poszczególnych plików Tak
DNA NTAG424 Łącznie 416 bajtów, podzielone na 32-bajtowy kontener możliwości, 256-bajtowy plik NDEF i 128-bajtowy plik danych chronionych Typ 4 Wstępnie-pliki udostępnione Pięć kluczy AES-128, 3-przebiegowe wzajemne uwierzytelnianie Tak

 

Wartości NTAG21x, zachowanie bitu-zamka i zgodność z typem 2 / ISO/IEC 14443 typu A wedługKarta katalogowa produktu NXP NTAG213/215/216. Struktura MIFARE Classic 1K na arkusz danych NXP MF1S50yyX (16 sektorów × 4 bloki × 16 bajtów). DESFire EV3 na MF3D(H)x3. Układ pamięci DNA NTAG 424 naNXP.

 

Dwie kolumny decydują o większości projektów przed wyborem jakiegokolwiek oprogramowania: limit pamięci i kolumna iPhone'a. To, czego tabela nie może ci powiedzieć, to rentowność. Prawidłowo określony chip nadal powoduje odrzucenia, jeśli po etapie kodowania nie ma przejścia weryfikacyjnego, co jest tematem drugiej połowy tego artykułu.

 

NTAG 213, 215 i 216: wybór domyślny i jego prawdziwy sufit

 

W przypadku mniej więcej czterech z pięciu projektów przychodzących ta rodzina jest właściwą odpowiedzią, a nauka programowania tagów NFC NTAG 215 przy użyciu aplikacji na telefonie zajmuje około dziewięćdziesięciu sekund. Chip jest dostarczany w formacie NDEF-, typem rekordu, który zachowuje się spójnie na każdym telefonie, jest zwykły rekord URI, a zarówno Android, jak i iOS zapisują go bez użycia pakietu SDK.

 

Selection guide for NTAG213, NTAG215, and NTAG216 chips based on payload length, data depth, and interaction constraints

 

To także rodzina, która stoi za niemal każdym programem do tworzenia cyfrowych wizytówek, w którym pojedyncza karta vCard lub rekord adresu URL stanowi cały ładunek i gdzie format fizyczny ma zwykle większe znaczenie niż chip. Większość tych zamówień kończy się napuste białe karty NFC z PVCa nie naklejki, bo karta musi przetrwać w portfelu i przyjąć odcisk.

 

Sufit pojawia się szybciej, niż ludzie się spodziewają. NTAG213 zapewnia 144 bajty pamięci użytkownika, a wiadomość NDEF to nie tylko adres URL. Przed zapisaniem pojedynczego znaku adresu znajduje się opakowanie TLV, nagłówek rekordu, pole typu i pole długości. Rekord URI kompresuje typowe przedrostki, takie jakhttps://www.na pojedynczy bajt, co pozwala odzyskać od dziesięciu do dwudziestu bajtów, a w części 144-bajtowej różnica ta stanowi granicę pomiędzy dopasowaniem a niepowodzeniem. Zespół zostaje przyłapany nie na samym adresie URL, ale na dodatkach: dodaj rekord tekstowy dla etykiety czytelnej dla człowieka, dodaj rekord aplikacji dla systemu Android, aby tag otwierał aplikację zamiast przeglądarki, a wygodny ładunek stał się błędem przepełnienia.

 

Nasza praktyczna zasada, której można się nauczyć tylko poprzez zakodowanie kilku milionów takich znaków: jeśli zamierzony adres URL zawierający parametry zapytania przekracza około 90 znaków, przestań podawać NTAG213 i przejdź w górę. Różnica w kosztach jednostkowych między 213 a 215 jest na tyle mała, że ​​prawie nigdy nie warto ryzykować przeprojektowania-programu. Kampania, która później będzie chciała dołączyć parametry UTM lub numer seryjny do każdego adresu URL tagu, trafi w 213 i nie trafi w 215.

 

Ochrona hasłem w tej rodzinie jest warta dokładnego zrozumienia, ponieważ jest słabsza niż sugeruje słowo „hasło”. 32-bitowa wartość PWD jest przesyłana w postaci czystej i sprawdzana przez chip, który zapewnia dostęp do zapisu i opcjonalnie odczytu od wybranej strony. Uniemożliwia ciekawskiemu użytkownikowi przepisanie Twojego tagu za pomocą telefonu. Nie jest to kontrola kryptograficzna i nigdy nie powinna być tak opisywana klientowi. Należy również zauważyć, że nie każda generacja w ogóle to obsługuje: starszy NTAG203 nie ma żadnego mechanizmu haseł, a dokumentacja biblioteki jasno stwierdza, że ​​wywołania ochrony przed nim po prostu zawodzą (dokumentacja nfcpy).

 

MIFARE Classic: Możliwość zapisu na Androidzie, praktycznie nieobecna na iPhonie

 

Oto pułapka kompatybilności, która zakończyła więcej projektów NFC niż jakikolwiek inny pojedynczy czynnik. Każdy, kto pyta, jak zapisać NDEF w MIFARE Classic, już pracuje nad strukturą formatu: MIFARE Classic nie jest typem znacznika NFC Forum, jest to karta ISO/IEC 14443-3A z zastrzeżonym sektorem i strukturą kluczy, która jest starsza niż ekosystem NDEF, a obsługa NDEF istnieje tylko dzięki warstwowej konwencji mapowania.

 

NTAG 215 versus MIFARE hardware comparison highlighting mobile read/write compatibility limitations across platforms.

 

Android obsługuje tę konwencję. iOS nie. Core NFC firmy Apple nigdy nie obsługiwał formatu MIFARE Classic, a obsługiwane przez platformę rodziny MIFARE ograniczały się do Ultralight, Plus i DESFire, co twórcy wielokrotnie potwierdzali na forach Apple (Fora programistów Apple). Ponieważ system iOS nie może bezpośrednio adresować pamięci karty, iPhone nie może zapisywać na niej plików NDEF ani wyświetlać zapisanych na nich plików NDEF.

 

To, co czyni to tak niebezpiecznym podczas oceny, to fakt, że tagi MIFARE Classic nie wyglądają na martwe na iPhonie. Karta ma identyfikator UID ISO 14443-A, więc aplikacja Skróty z radością zaakceptuje go jako wyzwalacz automatyzacji, a skanowanie w tle może nadal uruchomić wcześniej zapisany rekord NDEF obsługiwanego typu. Kierownik działu zakupów testujący próbkę na swoim iPhonie widzi odpowiedź i się podpisuje. Zachowanie, które zaobserwowali, nie miało nic wspólnego z zawartością pamięci znacznika i całe podejście załamuje się w momencie, gdy projekt potrzebuje jednostkowych adresów URL, które faktycznie mogą odczytać iPhone'y.

 

Wynika z tego praktyczna zasada: każdy, kto porównuje programowanie tagów NFC dla iPhone'a z Androidem, powinien przeprowadzić testy akceptacyjne na obu platformach z chipem produkcyjnym, nigdy na samym Androidzie i nigdy na próbce innego chipa niż ten na zamówieniu.

 

Pozwólcie, że będę szczery w kwestii zalecenia, ponieważ „to zależy od przypadku użycia” nie jest tutaj przydatną odpowiedzią. Jeśli Twoje tagi NFC będą wykorzystywane przez osoby postronne, określ cokolwiek innego niż MIFARE Classic.

 

W przypadku zespołów już korzystających z klasycznego-systemu dostępu decyzja ogranicza się do jednej zmiennej, a nie tagów. Jest to pozostały okres użytkowania Twojego czytnika. Jeśli tym czytelnikom pozostały dwa lub trzy lata i żaden smartfon nigdy nie dotknie poświadczeń, kontynuowanie Classic w pętli zamkniętej jest rozwiązaniem dającym się obronić, a praktyczne pytania dotyczą pozyskiwania układów scalonych i formatu UID, a nie metody kodowania, co omawiamy w naszych notatkach na tematzamówienie tagów MIFARE 1K do zainstalowanego systemu. Jeśli czytniki same mają zostać wymienione w tym oknie, nie wydawaj pieniędzy na certyfikat przejściowy. Przenieś całą posiadłość do części opartej na AES-w jednym kroku i jednorazowo pokryj koszty.

 

W tej samej rodzinie istnieje druga pułapka, na tyle subtelna, że ​​przetrwa pełne cykle kontroli jakości. Dodanie do rekordu opakowania inteligentnego plakatu, które popularne narzędzia do kodowania oferują jako przyjazny sposób dołączenia tytułu do adresu URL, powoduje zmianę typu rekordu. Rekordy opakowane w ten sposób nie są w ogóle wykrywane przez skanowanie w tle w systemie iOS, niezależnie od tego, co jest w środku zagnieżdżone. Testowanie Androida przebiega pomyślnie na każdym urządzeniu, iPhone'y nic nie robią i nigdzie nie pojawia się żaden komunikat o błędzie do zdiagnozowania.

 

Ultralight, DESFire i NTAG 424 DNA: gdzie programowanie staje się kluczowym zarządzaniem

 

MIFARE Ultralight EV1 zachowuje się podobnie do NTAG21x i programuje się na nim tagi NFC w ten sam sposób, z mniejszym budżetem pamięci wynoszącym 48 lub 128 bajtów i tą samą klasą bramek haseł. Nie dzieje się nic nowego koncepcyjnie.

 

DESFire i NTAG 424 DNA to odmienna dyscyplina. W tych częściach typu 4 nie zapisuje się bajtów do płaskiej mapy pamięci, działa się w systemie plików z prawami dostępu do poszczególnych-plików, a każda znacząca operacja wymaga najpierw uwierzytelnienia za pomocą klucza AES-128. NTAG 424 DNA zawiera pięć zdefiniowanych przez klienta kluczy AES, wykorzystuje 3-przebiegowe wzajemne uwierzytelnianie chronionego pliku danych i posiada certyfikat Common Criteria EAL4 zarówno w zakresie sprzętu, jak i oprogramowania. Zespoły programujące tagi NFC do uwierzytelniania produktów zamiast prostego przekierowania zazwyczaj szukają właśnie tej części ze względu na jedną funkcję.

 

Ta funkcja to Secure Dynamic Messaging, często zapisana jako SUN. Po włączeniu tej opcji adres URL NDEF chip prezentuje zmiany przy każdym dotknięciu: chip odzwierciedla swój UID i monotonicznie rosnący licznik odczytu w adresie URL, opcjonalnie zaszyfrowany, i dołącza CMAC obliczony przy użyciu klucza, który posiadasz tylko ty i chip. Twój backend może następnie odróżnić prawdziwy tag od sfotografowanego adresu URL i odróżnić kran numer 4 od kranu numer 4000.

 

Prawidłowa konfiguracja to miejsce, w którym specyfikacja gryzie. Reguły tworzenia kopii lustrzanych nie mają dowolnej-formy: gdy dane PICC są szyfrowane, kopiowanie lustrzane UID i licznika odczytu staje się obowiązkowe, a nie opcjonalne, oba zawsze przesyłane są razem, a kod CMAC musi znajdować się na końcu komunikatu NDEF. Zaprojektuj strukturę adresu URL wokół tych ograniczeń, a nie odwrotnie, w przeciwnym razie przesunięcia nie zostaną rozwiązane, a backend odrzuci każdy odczyt.

 

Awarie, które widzimy najczęściej podczas wdrożeń SUN, nie mają z tym nic wspólnego. Każda implementacja referencyjna i serwer demonstracyjny są dostarczane z fabrycznie skonfigurowanymi-domyślnymi kluczami zawierającymi wszystkie-zero, ponieważ dzięki temu demonstracja działa od razu po wyjęciu z pudełka. Projektuje prototyp na podstawie tego, prototyp działa, a krok rotacji klucza nigdy nie trafia na listę kontrolną uruchomienia. Tagi są kryptograficznie nagie, podczas gdy wszyscy zaangażowani uważają, że wdrożenie jest zaszyfrowane, dlatego nasza własna procedura udostępniania próbek sprawdza zróżnicowanie kluczy w jednostkach produkcyjnych, a nie w tym, co zostało użyte w wersji demonstracyjnej.

 

Sześć operacji, których nie można cofnąć po zaprogramowaniu tagów NFC

 

Przepisywanie ładunku jest tanie. To nie są. Każda z poniższych decyzji to decyzja, która przekształca partię znaczników w środek trwały i każda z nich była przyczyną złomowanych zapasów, które musieliśmy osobiście wymienić.

 

Działanie Co to robi Dlaczego nie da się tego cofnąć Kiedy należy to zaplanować
Formatowanie NDEF Zapisuje kontener możliwości Trafia do jednorazowej--programowalnej pamięci Fabrycznie po potwierdzeniu typu chipa
Statyczne bity blokujące Blokuje pierwsze 16 stron na chipach typu 2 Bity blokady są ustawione-tylko i nie można ich zresetować Dopiero po podpisaniu ostatecznej treści
Dynamiczne bity blokujące Obejmuje 96 bajtów danych w NTAG213, 456 w NTAG215 i 840 w NTAG216, przy szczegółowości 2 stron w NTAG213 i 16 stron w NTAG215 i NTAG216, zgodnie z arkuszem danych NXP cytowanym powyżej Ten sam zestaw-tylko mechanizmu, ta sama trwałość Ta sama brama co zamki statyczne
Przełącznik-tylko do odczytu Ustawia na stałe flagę zapisu NDEF Nie istnieje żadne polecenie odwrotne Nigdy przed zakończeniem prób terenowych
Tryb LRP na NTAG 424 DNA Przełącza AES na działanie-odporne na wycieki Włączone przez SetConfiguration, bez ścieżki powrotnej do trybu AES Tylko jeśli wymaga tego udokumentowany model zagrożenia
Zmiana klucza bez depozytu Zastępuje fabryczne klucze AES Chip nie ma ścieżki odzyskiwania w przypadku zgubienia nowego klucza Dopiero po formalnym przypisaniu opieki nad kluczami

 

Szczegółowość strony to praktyczny szczegół, którego większość ludzi nie dostrzega, gdy pytają, jak zablokować tag NFC po zaprogramowaniu. Blokowanie nie jest pojedynczym przełącznikiem „wszystko-albo-nic”. W modelach NTAG215 i NTAG216 można blokować bloki po 16 stron, co umożliwia zastosowanie układu mieszanego: obszar numeru seryjnego zablokowany fabrycznie, obszar adresu URL kampanii pozostawiony do zapisu dla zespołu marketingowego. W NTAG213 ziarnistość wynosi dwie strony, jest większa, ale na znacznie mniejszej mapie. Określenie granicy jest zadaniem projektowym i musi nastąpić przed przebiegiem kodowania, a nie po.

 

Nawykiem, który warto wypracować, jest oddzielanie bramki kodującej od bramki blokującej. Odradzamy klientom zamykanie drzwi w miejscu składania zamówienia, a powód jest czysto handlowy, a nie techniczny.

 

W naszej historii zamówień najczęstszym żądaniem-po dostawie nie jest roszczenie o usterkę, ale zmiana miejsca docelowego, które przypada na pierwszy rok świadczenia usług. Typowymi wyzwalaczami są migracja strony docelowej lub przeniesienie agencji, przy czym żadne z tych zdarzeń nie jest widoczne w momencie składania zamówienia. Aby to zrobić, nie potrzebujesz niczyich statystyk awarii, ponieważ asymetria decyduje sama: odblokowany tag, którego nigdy nie trzeba zmieniać, nic Cię nie kosztuje, podczas gdy zablokowany tag, który wymaga wymiany, kosztuje zlecenie pełnej wymiany plus robocizna ponownej instalacji. Najpierw zaprogramuj tagi NFC, przeprowadź próbę terenową, a następnie zablokuj.

 

Weryfikacja chipa jest zgodna z fakturą

 

 

Autentyczność chipa nie jest w tej kategorii sprawą paranoiczną. Jest to element rutynowej-kontroli przychodzącej i podlega temu samemu etapowi kontroli jakości, co każda inna kontrola przeprowadzana przed zaprogramowaniem tagów NFC w ilościach produkcyjnych. Każda rodzina NXP NTAG, MIFARE, Ultralight i ICODE ma sygnaturę oryginalności opartą na ECC-zapisaną podczas produkcji chipów, 32 bajty na częściach NTAG21x, którą można odczytać i zweryfikować za pomocą klucza publicznego producenta. Tag, który zachowuje się doskonale, może mimo to nie przejść testu.

 

Dzieje się tak częściej, niż rynek dopuszcza. Inżynierowie kupujący znaczniki NTAG21x za pośrednictwem ogólnych kanałów sprzedaży detalicznej zgłosili społeczności producenta, że ​​próbki działają dokładnie zgodnie ze specyfikacją, łącznie z odbiciem lustrzanym, a mimo to w ramach weryfikacji oryginalności zgłaszają, że są to klony krzemu, a opublikowana odpowiedź NXP jest taka, że ​​takie części nie są obsługiwane i nie nadają się do bezpiecznego użytkowania, ponieważ sam układ scalony może być podatny na ataki (Społeczność NXP).

 

Konsekwencja operacyjna jest węższa, niż się powszechnie sądzi, i warto ją precyzyjnie określić. Jeśli Twoja aplikacja jest przekierowaniem marketingowym, chip klonujący będzie Ci odpowiednio służył i możesz się tym nie przejmować. Jeśli Twoja aplikacja obejmuje uwierzytelnianie, dowody manipulacji lub jakiekolwiek roszczenia dotyczące zapobiegania-podrabianiu składane Twojemu klientowi, niemożliwy do zweryfikowania chip unieważnia całe założenie i nie rekompensuje tego żadna ilość prawidłowego kodowania. Weryfikacja każdej próbki za pomocą aplikacji czytnika zajmuje kilka sekund i należy do niej w ramach przychodzącej procedury kontroli jakości, a nie sekcji-sekcji zwłok. Powiązana lektura dla każdego, którego zapis się zakończył, ale czytelnik milczy:dlaczego sklonowana naklejka czyta się dobrze, a mimo to nie udaje się dotrzeć do drzwi.

 

Klasyczne pytanie zabezpieczające MIFARE, szczerze powtórzone

 

Każdy, kto dzisiaj wybiera MIFARE Classic, powinien pracować na obecnym stanowisku badawczym, a nie na reputacji, jaką platforma cieszyła się dziesięć lat temu.

 

W 2024 r. badanie FM11RF08S, wydanego w 2020 r. układu zgodnego z MIFARE Classic, wyposażonego w środki zaradcze zaprojektowane specjalnie w celu przeciwstawienia się wszystkim znanym atakom-wyłącznie na karty, pokonało te środki zaradcze i odkryło przy tym sprzętowe backdoory. Backdoor umożliwia każdej świadomej stronie złamanie każdego klucza-zdefiniowanego przez użytkownika na karcie w ciągu kilku minut od fizycznego dostępu, i dzieje się tak nawet wtedy, gdy klucze zostały w pełni zróżnicowane na karcie (Archiwum kryptologii ePrint). Powiązane klucze backdoora zidentyfikowano w szerszym zestawie części, w tym we wcześniejszych generacjach Fudan oraz w określonych urządzeniach NXP i Infineon.

 

Przeczytaj to uważnie, zanim wyciągniesz z tego błędne wnioski. To nie jest argument, że wszyscy korzystający z MIFARE Classic będą jutro narażeni i my tego tak nie przedstawiamy. Miliony klasycznych danych uwierzytelniających działają w środowiskach o niewielkich-konsekwencjach, w których klonowanie karty zapewnia atakującemu dostęp do szafki na siłowni. Jest to argument, że sformułowanie „bezpieczny” nie powinno pojawiać się nigdzie w dokumencie specyfikacji obok tej rodziny chipów i że każdy, kto planuje zaprogramować znaczniki NFC do obsługi pokojów hotelowych, dostępu do biura lub płatności bezgotówkowych na klasycznym krzemie, powinien wycenić migrację na część opartą na AES-w tym samym cyklu budżetowym.

 

Programowanie tagów NFC zbiorczo: co zmienia się powyżej tysiąca jednostek

 

Wszystko opisane do tej pory źle się skaluje. Aplikacja na telefon zapisuje po jednym tagu na raz, bez rekordu wsadowego, bez przepustki weryfikacyjnej i bez możliwości późniejszego sprawdzenia, który adres URL trafił do której jednostki fizycznej. Istnieją trzy poziomy zbiorczego programowania tagów NFC, a przeskok między nimi ma charakter operacyjny, a nie techniczny.

 

Pierwszy poziom to telefon i aplikacja, które można wykorzystać w około stu jednostkach, odpowiednich dla prototypów i pilotów wewnętrznych.

 

Na drugim poziomie znajduje się większość-zespołów wewnętrznych: tagi NFC programuje się za pomocą czytnika na komputerze stacjonarnym, sterowanego przez plik wsadowy, zwykle za pośrednictwem kodera USB klasy ACR12xx lub uTrust. Działa dobrze do czasu zmiany chipa. Na przykład szeroko stosowane w tym obszarze narzędzie wsadowe typu open{4}}jest przeznaczone specjalnie dla ACR122 i koduje tylko MIFARE Ultralight i Ultralight C, które są częściami typu 2, więc przeniesienie projektu do chipa typu 4 oznacza przebudowę oprzyrządowania, a nie edycję pliku konfiguracyjnego. Jeśli nadal wybierasz sprzęt dla tej warstwy, naszGama czytników USB i czytników NFC-na komputerze stacjonarnymobejmuje modele czytników, których oczekują te zestawy narzędzi.

 

Praktyką branżową trzeciego poziomu jest-kodowanie wstępne podczas produkcji, a jest to poziom, o którego istnieniu większość kupujących nie wie. Na naszych liniach w zakładzie o powierzchni 3600 m² kodowanie odbywa się pomiędzy sklejeniem chipów a montażem końcowym, na sprzęcie, który indeksuje każdy znacznik na miejsce, zapisuje zapis i ponownie go odczytuje, zanim znacznik zostanie przesunięty dalej. Przepustka weryfikacyjna to cała sprawa. Tag, który nie może zostać odczytany-powrotnie, jest odrzucany-w wierszu, a nie wykrywany przez klienta w terenie, a partia opuszcza plik mapowania łączący każdy UID lub TID z dokładną zapisaną w nim treścią, czyli tego, czego potrzebuje Twój CMS lub platforma analityczna od pierwszego dnia. Zautomatyzowana wydajność łączenia na pięciu liniach produkcyjnych przekracza 100 000 chipów dziennie, więc kodowanie nie staje się ograniczeniem czasu realizacji.

 

To, co w tym opisie celowo pomija, to próg akceptacji. Weryfikacja odczytu-powrotna to bramka potwierdzająca/negatywna, ale współczynnik niepowodzeń, który należy zaakceptować w umowie, różni się w zależności od rodziny chipów, kształtu i tego, czy tag jest później laminowany; naklejka anty-metalowa i karta PVC nie zachowują się w ten sam sposób na tej samej linii. Liczba ta znajduje się w cudzysłowie dotyczącym konkretnej kompilacji, a nie w artykule, i jest to pierwsza rzecz, którą ustawiamy po uruchomieniu nowego programu.

 

Warto jasno określić, gdzie wyznaczamy własną granicę możliwości, ponieważ dostawcy części zwykle się zacierają. Wstępnie-zaprogramujemy tagi NFC za pomocą Twojego szablonu adresu URL, serializujemy według jednostki, sprawdzamy każdy tag i dostarczamy plik mapowania. Udostępnimy dostarczone przez Ciebie klucze AES. Nie będziemy przechowywać Twoich kluczy produkcyjnych, nie będziemy obsługiwać Twojego zaplecza sprawdzającego i nie powiemy Ci, że fabryka może sprawić, że projekt zabezpieczeń warstwy-aplikacji będzie poprawny. Ta część należy do Ciebie i każdy dostawca twierdzący inaczej oferuje Ci przeniesienie ryzyka, które nie istnieje.

 

Dziewięć pytań do rozwiązania przed rozpoczęciem kodowania

 

Uruchom to przed złożeniem zamówienia, a nie po otrzymaniu próbek. Każdy przedmiot zakończył co najmniej jeden projekt, o uratowanie którego poproszono nas.

 

# Pytanie Dlaczego decyduje chip
1 Czy iPhone'y będą dotykać tych tagów? Całkowicie usuwa MIFARE Classic z rozważań
2 Jaka jest pełna długość adresu URL, łącznie z przyszłymi parametrami? Ustawia podłogę na NTAG213, 215 lub 216
3 Czy wystarczy jeden rekord, czy potrzebujesz również rekordu tekstowego lub rekordu aplikacji? Dodatkowe rekordy zużywają ten sam budżet pamięci
4 Czy miejsce docelowe zmieni się w okresie użytkowania zawieszki? Określa, czy blokowanie jest kiedykolwiek akceptowalne
5 Czy aplikacja zapewnia użytkownikom końcowym autentyczność? Popycha cię do NTAG 424 DNA lub DESFire
6 Kto trzyma i obraca klucze AES? Należy przypisać przed zmianą dowolnego klawisza
7 Jakie jest kryterium akceptacji dostarczonej partii? Określa, czy-weryfikacja odczytu zwrotnego ma charakter umowny
8 Czy potrzebujesz pliku mapującego UID-na-treść? Należy określić przed uruchomieniem, a nie żądać po
9 Czy weryfikacja podpisu oryginalności jest częścią przychodzącej kontroli jakości? Określa, czy pozyskiwanie chipów podlega audytowi

 

Zespoły, które odpowiedzą na wszystkie dziewięć pytań, zazwyczaj uzyskują czysty przebieg produkcji za pierwszym podejściem. Zespoły, które potrafią odpowiedzieć na sześć z dziewięciu pytań, zazwyczaj odkrywają pozostałe trzy w kosztowny sposób.

 

Dziewięć pytań to wersja ogólna. Ta, nad którą faktycznie pracujemy, dodaje dziesiątą kolumnę, która jest odpowiedzią raczej dla twojej kompilacji niż ogólnie, a ta kolumna zależy od rzeczy, których nie widać w tym artykule: składu telefonu, stanu czytnika, procesu laminowania i tego, czy serializacja musi być sekwencyjna czy losowa. Wyślij nam pierwszych dziewięć odpowiedzi, a my odeślemy wersję z adnotacjami, zgodną z Twoją specyfikacją.

 

Gdzie to pozostawia kupującego

 

Nie ma ogólnej procedury programowania tagów NFC, jest tylko procedura na chip, na platformę, na wolumen. Najpierw wybierz chip pod sufitem pamięci i zadaj pytanie dotyczące iPhone'a. Traktuj formatowanie, ładunek i konfigurację jako trzy oddzielne bramki. Nigdy nie zamykaj przed próbą terenową. Sprawdź oryginalność przychodzących próbek. Powyżej tysiąca jednostek przestań myśleć o aplikacjach i zacznij myśleć o weryfikacji i identyfikowalności.

 

Jeśli specyfikacja jest już opracowana, chętnie sprawdzimy ją pod kątem powyższych ograniczeń dotyczących chipów i oznaczymy wszystko, co nie przetrwa produkcji. Dostępne są także bezpłatne próbki do przetestowania na rzeczywistych czytnikach i telefonach. Możesz także zacząć odFormaty tagów NFC-programujemy i weryfikujemy-we własnym zakresiejeśli decyzja dotycząca chipa jest nadal otwarta, lubwyślij strukturę adresu URL i wolumen docelowy do przeglądu kodowaniajeśli zostało to już naprawione.

 

Często zadawane pytania

Czy mogę zaprogramować dowolny tag NFC na moim iPhonie?

Nie. iOS Core NFC nie obsługuje MIFARE Classic, natomiast obsługiwane są NTAG21x, MIFARE Ultralight, DESFire i NTAG 424 DNA. Jeśli Twoje wdrożenie musi działać na iPhone'ach, przed złożeniem zamówienia wyklucz MIFARE Classic.

Ile danych może pomieścić tag NFC?

Pamięć użytkownika wynosi 144 bajty w NTAG213, 504 bajty w NTAG215 i 888 bajtów w NTAG216 oraz 416 bajtów w NTAG 424 DNA w trzech oddzielnych plikach.

Czy można cofnąć programowanie tagów NFC?

Treść ładunku można zwykle przepisać, ale po zastosowaniu formatowanie, bity blokady, przełącznik-tylko do odczytu i tryb LRP pozostają trwałe. Zaplanuj każdy etap blokowania po próbie terenowej, nigdy w momencie składania zamówienia.

Skąd mam wiedzieć, czy moje tagi NFC wykorzystują oryginalne chipy?

Przeczytaj sygnaturę oryginalności opartą na ECC-i porównaj ją z kluczem publicznym producenta, ponieważ nieudane sprawdzenie oznacza klonowanie krzemu niezależnie od tego, jak dobrze znacznik działa.

W jaki sposób tagi NFC są programowane zbiorczo?

Albo z koderem USB sterowanym przez plik wsadowy, albo-wstępnie zaprogramowanym podczas produkcji z-weryfikacją odczytu-w linii. Powyżej tysiąca jednostek plik mapowania UID-na-treść powinien być częścią specyfikacji, a nie późniejszym żądaniem.

Wyślij zapytanie