Online Store

NT4H NTAG® 424 DNA Tag Read/Write Software

Source code examples in C programming language

Primjeri izvornog koda softvera objašnjeni na ovoj stranici odnose se na NFC NTAG® DNK tehnološka rješenja. Njegova primarna svrha je pisanje i čitanje NTAG 413 DNK i NTAG 424 DNK oznaka, tj. NXP NTAG®®® Type 4 Tag.

Ove oznake su u potpunosti u skladu sa:

  • ISO/IEC 14443, svi delovi od 1 do 4, ISO/IEC 7816-4 izbor datoteka i rukovanje APDU-om, i pasivni cilj u skladu sa ISO/IEC18092
  • 7-bajtni UID (prema ISO/IEC 14443 – 3)
  • NFC Forum Tag 4 Tip tehničke i NDEF konfiguracije strukture podataka

Međutim, glavni razlog za odabir NTAG 424 DNK oznaka među svim tipovima NTAG® porodice je njegova napredna sigurnosna podrška. NTAG® 424 DNK oznake nude napredne sigurnosne metode, kao što su:

  • Standardna AES-128 kriptografija za autentifikaciju/sigurne poruke, ili LRP umotana AES operacija za još jaču otpornost na napad
  • 3-pass međusobna autentifikacija za pristup zaštićenoj datoteci podataka
  • Jedinstvena NFC poruka (SUN)
  • Inkrementalni NFC slavine Counter
  • Jednostavna, CMAC i šifrovana komunikacija (konfigurisana)
  • ECC-bazirani NXP potpis originalnosti
  • Montaža URL-ova na čipu sa fleksibilnim ASCII ogledalima.

U skladu s tim, naš softverski primjer uključuje funkcije za sve NTAG® 424 DNK sigurnosne protokole i implementaciju opcija.

Docs & Software Download

Pregled softvera

Softverske funkcije:

  • Nabavi i uredi postavke fajla
  • Get UID
  • Postavi nasumičnu identifikaciju
  • Promijeni AES ključ
  • Linearno čitanje/pisanje (ASCII & HEX)
  • Način autentifikacije na tri nivoa
  • SDM (secure dynamic message) čitanje/pisanje
  • Get SDM reading counter
  • Ubaci AES ključ u čitač
  • Zaključavanje/otključavanje čitača
  • Napredne opcije čitača (navedite Reader COM port, IP adresu, SN itd.)

Dostupni programski jezici:

  • C (konzola)
  • C# (GUI)

Podržani operativni sistemi, platforme i okruženja:

  • Cross-platforma

Podržane oznake, oznake, kartice:

  • NXP NTAG® 21x (210, 213, 215, 216, Tag Tamper)
  • NXP NTAG® 4xx DNK (413, 424)

Preporučena oprema:

  • μFR Nano
  • μFR Nano Online
  • μFR Classic
  • μFR Classic CS
  • μFR Advance
  • μFR XL

nt4h source coe software

 

Softverski respiratorni Opis
ufr-primjeri-c-nt4h

Konzola C izvorni kod primjer implementacije nt4h tagova sa μFR Series NFC RFID čitačima.  

ufr-primjeri-c_sharp-nt4h

GUI C# primjer izvornog koda f nt4h tagova implementacija sa μFR Series NFC RFID čitačima.

Software manual

1. NT4H Software – C console – Reader Open

Download: ufr-examples-c-nt4h

NT4H je namijenjen za manipulaciju NXP NTAG® novim tagovima. Ova serija uključuje NTAG 413 DNK i NTAG® ®424 DNK. NTAG® 424 DNK je u potpunosti u skladu sa NFC Forum Type 4 Tag IC. Podržava AES-128 kriptografske operacije i novu Secure Unique NFC (SUN) poruku. NXP ne preporučuje korišćenje NTAG 413 DNK oznaka za nove projekte, jer dostupna NTAG®® 424 DNK nudi bolje bezbednosne funkcije.

Pokretanjem aplikacije otvara se konzola sa ispisom kućnog menija.
Ako ste pravilno instalirali hardverske upravljačke programe, moći ćete otvoriti priključak čitača odabirom jedne od dostupnih opcija:

  • Opcija 1 – Priključak čitača otvara se pomoću zadanih (auto-otkrivajućih) opcija (obično se koristi za jedan USB čitač priključen na domaćina)
  • Opcija 2 – Priključak čitača otvara se pomoću ručno konfigurabilnih parametara: reader_type, port_name, port_interface i argument.

D NFC SDK ufr examples c nt4h master win64 release nt4h c example.exe 27 08 2020 13 36 18

2. NT4H Software – C konzola – Glavni meni

Ovo je Simple Reader Open Mode. 
Izbor opcije menija 1. Otvoriće se čitač i uspostaviti komunikaciju sa uređajem. Kada se komunikacija uspostavi, konzola prikazuje glavni meni sa svim navedenim softverskim funkcijama. 

D NFC SDK ufr examples c nt4h master win64 release nt4h c example.exe 27 08 2020 13 37 35

2.1 NT4H Software – C console – Get file settings

Prva funkcija, Get File Settings, prikazuje izabrane postavke datoteke. U zavisnosti od oznake koju koristite, otkucajte 1-2 za NTAG413 i 1-3 za NTAG 424.

NTAG413 ima dvije standardne datoteke podataka:

  • Datoteka broj 1 odnosi se na datoteku Capability Container (32 bajta),
  • Datoteka broj 2 odnosi se na NDEF datoteku (128 bajtova).

NTAG424 ima tri standardne datoteke podataka:

  • Datoteka broj 1 odnosi se na datoteku Capability Container (32 bajta),
  • Datoteka broj 2 odnosi se na NDEF datoteku (256 bajtova),
  • Datoteka broj 3 odnosi se na vlasničku datoteku (128 bajtova),
  • Broj vraćenih parametara je promenljiv.

Ako je trenutna datoteka standardna datoteka podataka sa AES sigurnim porukama, primjenjuje se sljedeće:

  • Vrsta datoteke
  • Način komunikacije
  • Prava pristupa fajlovima.

nt4h c set file settings1 1

EXAMPLE 1

Primjer veličine datoteke:

  • Broj datoteke = 3 (NTAG424 vlasnička datoteka)
  • Status komunikacijskog načina kodiran (0x03)
  • Sigurne dinamičke poruke su onemogućene
  • Ključni broj za čitanje je 2, a ključni broj za pisanje je 3,
  • Ključni broj za čitanje/pisanje je 3,
  • Ključni broj za promjenu postavki datoteke je 0,
  • Veličina datoteke je 128 bajtova.

nt4h c get file settings

EXAMPLE 2

Ako je trenutna datoteka standardna datoteka podataka sa sigurnim dinamičkim porukama, ona sadrži više podataka.

Primjer:

  • broj datoteke je 2 (NDEF datoteka),
  • Omogućeno je bezbedno dinamičko slanje poruka,
  • Pristup čitanju i pisanju je besplatan (ključ 0x0E),
  • Veličina datoteke je 256 bajtova,
  • UID ogledalo je omogućeno,
  • SDM brojač čitanja je omogućen,
  • SDM ograničenje brojača čitanja je onemogućeno,
  • Aktivira se šifrovani deo datoteke sa šifrovanim podacima,
  • Ključni broj za SDM Meta Read je 2 (UID, SDM brojač za čitanje, PICC podaci, MAC),
  • Šifrovani podaci Deo ključnog broja datoteke je 2.
  • SDM brojač čitanja može čitati bez autentifikacije,
  • PICC Data Offset (Encrypted UID and SDM Reading Counter) je 49,
  • MAC Input Offset je 86,
  • Deo šifrovanih podataka u ofsetu datoteke je 86,
  • Šifrovani deo dužine datoteke je 32,
  • MAC Offset je 124.

nt4h c set file settings

2.2 NT4H Software – C console – Set file settings

Da biste dodali postavke datoteke, odaberite drugu opciju izbornika. Zbog velikog broja parametara, postoje dvije funkcije za postavke parametara datoteke.

nt4h c set file settings1

EXAMPLE 1

nt4h c set file settings2

Standardna datoteka podataka:

  • Datoteka broj 3 (vlasnička datoteka),
  • Trenutni način komunikacije je enformiran,
  • Promjena vrijednosti ključa je 0.

Nove postavke su:

  • Običan način komunikacije,
  • Pročitaj Ključ 2,
  • Napiši ključ 3,
  • Ključ za čitanje/pisanje 3,
  • Promijeni tipku 0,
  • Podržani način autentifikacije ključeva.

 

 

 

 

 

 

EXAMPLE 2

nt4h c set file settings2

Sigurna dinamička datoteka za razmjenu poruka:

  • Broj datoteke je 2,
  • Komunikacijski način Plain,
  • Ključ za čitanje je 14,
  • Ključ za pisanje je 14,
  • Ključ za čitanje/pisanje je 14,
  • Promjena vrijednosti ključa je 0,
  • UID ogledalo je omogućeno,
  • SDM brojač čitanja je omogućen,
  • SDM brojač čitanja je onemogućen,
  • Aktivira se šifrovani deo datoteke sa šifrovanim podacima,
  • SDM Meta ključ za čitanje je 2,
  • SDM čitanje datoteka je 2,
  • SDM ključ za čitanje je 2,
  • Šifrovani PICC podaci Offset 49,
  • MAC ulazni podaci Offset 86,
  • Šifrovani deo podataka Offset 86,
  • MAC Offset 124.

2.3 NT4H Software – C console – Get UID (NTAG 424 only)

Ako koristite NTAG® 424 oznake sa omogućenim sigurnosnim načinom autentifikacije, opcija menija 3. Prikazat će se oznaka UID.

Funkcija vraća karticu sa 7-bajtnim UID-om. Korisno je ako su aktivirane opcije slučajnog ID-a. Potrebna je validna autentifikacija sa bilo kojim ključem kartice.

nt4h c get uid

2.4 NT4H Software – C console – Set random UID (NTAG® 424 only)

NTAG® 424 DNK omogućava dodatnu sigurnost oznake slučajnim podešavanjem korisničkog interfejsa (opcija menija 4).
Set Random UID funkcija zamenjuje jedinstveni UID sa 4-bajtnim slučajnim UID-om. Shodno tome, oznaka vraća 4-bajtni slučajni UID na svakom čitanju. Oznaka sada vraća nasumični ID od 4 bajta umjesto jedinstvenog ID-a od 7 bajtova.
Ova funkcija zahteva autentifikaciju glavnog ključa (broj 0).

Upozorenje: ova operacija je nepovratna!

nt4h c get uid example1 1

2.5 NT4H Software – C console – Change AES key

 

nt4h c change aes keyOpcija menija 5 omogućava promenu AES tastera.
Ova funkcija zahteva autentifikaciju glavnog ključa (broj 0).
Unesite novi AES ključ tako što ćete ukucati 16 heksadecimalnih bajtova.
Ako ključ koji treba promeniti nije glavni ključ, prethodna vrednost ključa je obavezna.
 
 
 
 

EXAMPLE 1

AES Primjer promjene ključa:

  • Ključ broj 4.
  • 0x00000000000000000000000000000000 vrijednosti glavnog ključa aplikacije
  • Stari ključ 4 vrijednosni 0x00000000000000000000000000000000
  • Nova vrijednost ključa 4 0x11111111111111111111111111111111

nt4h c change aes key

2.6 NT4H Software – C konzola – Linearno čitanje

Funkcija linearnog čitanja uključuje običan, zakrivljen i šifrovan način čitanja. Takođe, autentifikacija sadržaja u režimu Provided key i režimu internog ključa omogućavaju pristup sadržaju ako je oznaka zaštićena. U suprotnom, otključani sadržaj oznake može se čitati bez unosa ključa (opcija: Nema authentifikacije). Konzola će prikazati sadržaj čitljiv u izabranom načinu autentifikacije kao heksadecimalni i ASCI notacija.

2.6.1 NT4H Software – C console – Linear Read

Funkcija linearnog čitanja uključuje obični, mac (Message Authentication Code) i enšifrovani način čitanja. Takođe, autentifikacija sadržaja u režimu Provided Key i režimu internog ključa omogućavaju pristup sadržaju ako je oznaka zaštićena. U suprotnom, otključani sadržaj oznake je dostupan bez unosa ključa (opcija: Nema autentifikacije). Konzola će prikazati sadržaj čitljiv u izabranom načinu autentifikacije kao heksadecimalni i ASCI notacija.

Funkcija čita snimljene podatke. Potrebni parametri su:

  • Broj datoteke,
  • Čitanje ili čitanje / pisanje pristupnog ključa,
  • Način komunikacije,
  • Način autentifikacije (ako je ključ za čitanje 14, odaberite opciju Bez autentifikacije),
  • Početna adresa (0 – max adresa),
  • Dužina podataka.

nt4h c linear read function

2.7 NT4H Software – C console – Linear Write

Kao i kod funkcije linearnog čitanja, funkcija linearnog pisanja omogućava tri načina komunikacije i heksadecimalni ili ASCII format za pisanje sadržaja. Također, odabrani način provjere autentičnosti odnosi se na snimljeni sadržaj. 

Funkcija upisuje podatke u datoteku. Potrebni parametri su:

  • Broj datoteke,
  • Čitanje ili čitanje / pisanje pristupnog ključa,
  • Način komunikacije,
  • Način provjere autentičnosti (ako je pročitani Ključ 14, odaberite opciju No Authentication ),
  • Početna adresa (0 – max adresa),
  • Unesite podatke u ASCII ili heksadecimalnom formatu.

nt4h c linear write

2.8 NT4H Software – C konzola – Secure Dynamic Message Read

Secure Dynamic Messaging (SDM) na NT4H DNK oznakama omogućava funkciju SUN. Odnosi se na tekst (ASCII) u NDEF poruci.
Da biste primijenili funkciju Secure Dynamic Message Read, omogućite datoteku Secure Dynamic Message. Također, postavite pristup čitanju na besplatno (Ključ 14 – Nema autentifikacije).

nt4h c sdm read

2.9 NT4H Software – C console – Secure Dynamic Message Write

Kao i kod sigurnog dinamičkog čitanja poruka, za funkciju Secure Dynamic Message Write omogućite datoteku Secure Dynamic Message. Također, postavite pristup čitanju na besplatno (Ključ 14 – Nema autentifikacije).

nt4h c sdm write

2.10 NT4H Software – C console – Get SDM Reading Counter

Secure Dynamic Reading Counter postoji samo ako je omogućena SDM datoteka. Autentifikacija je potrebna ili nije potrebna, u zavisnosti od postavke pristupa SDM Reading Counter-u.

nt4h c get sdm reading counter

 

2.11 NT4H Software – C console – Store AES Key into the reader

Uređaj Reader može pohraniti 16 AES tipki s indeksnim vrijednostima 0-15. To znači da indeks ključeva može biti bilo koja vrijednost između 0 i 15.

EXAMPLE 1

Primjer pokazuje kako pohraniti ključ s vrijednošću 0 x 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 nt4h c store aes key into the reader

EXAMPLE 2

AES ključ pohranjen u čitaču je otključan po zadanim postavkama.

Sačuvani ključ možete zaključati bilo kojom lozinkom od 8 bajtova.

Primjer:
Lozinka je 12345678

nt4h c store aes key into the reader password

EXAMPLE 3

U slučaju da je sačuvani ključ zaštićen lozinkom (zaključan), potrebno je da ga otključate tako što ćete obezbediti njegovu lozinku od 8 bajtova.

Primjer:
Lozinka je 12345678

nt4h c store aes key into the reader password unlock

Ovaj priručnik predstavlja softverski primjer u programskom jeziku C. Ipak, svi povezani softver izvornog koda u drugim programskim jezicima sadrže iste funkcije. Tamo gde je to moguće, razvijen je GUI.
Molimo pogledajte naš GitLab repozitorijum za dostupne primere izvornog koda u drugim programskim jezicima.