Pluskortet, der udstedes af nxp, er som standard et uninitialiseret kort på L0-niveau. På dette tidspunkt viser den aktive operation, at den understøtter CPU-kortets egenskaber ISO1443-4 (ATQA: 02 00, SAK: 20 UID: CD 65 E5 03), når der udføres skriverelaterede AES Efter KEY og datablokken er initialiseret og forpligtet, kommer den ind på L1-sikkerhedsniveauet. Dens aktive drift viser kendetegnene for en M1S70 kort (ATQA: 02 00, SAK: 18 UID: CD 65 E5 03), men i virkeligheden kan det stadig understøtte ISO1443-4 , Rotterne udføres med succes (det skal også understøttes, ellers switchL2 og switch3 operationer kan ikke udføres). Når switchL2-godkendelsen udføres på L1-niveau og konverteres til L2-niveauet, er returværdien efter den aktive operation (ATQA: 02 00 SAK:11, UID: CD 65 E5 03). På dette tidspunkt, hvis der ikke er en sådan matchende SAK i den eksisterende driver, vil det være en ukendt korttype. Når switch3-godkendelsen udføres på L2-sikkerhedsniveauet, opgraderes kortet til L3-sikkerhedsniveauet, og returværdien er (ATQA: 02 00 ,SAK:20, UID:CD 65 E5 03).
Kør operationer på L1- og L2-niveau i aktiv tilstand (ISO14443-3-lag) Når kortet er på L1-niveau, kan M1-relaterede grænseflader implementeres fuldt ud, eller AES SL1-certificering kan udføres først, og derefter kan M1-certificering udføres. Efter at have udført AES SL1-godkendelse, er der ingen grund til at generere en session nøgle base og beregne med M1 nøglen til at udlede den nye M1 nøglen som den virkelige M1 autentificering nøgle, bare bruge den oprindelige M1 nøglen direkte (dette punkt er forskellig fra L2 niveau).
På L0-niveau er returkoden for PICC efter udførelse ACK/NAK i overensstemmelse med M1-kortet, det er en nibble returkode uden CRC, så når CRC-kontrollen er slået til, opstår der en CRC-fejl.
I L1 niveau AES SL1 autentificering proces, når udførelsen er korrekt, vil det returnere returkoden og oplysninger med CRC, og når der er en fejl (AES nøgle fejl, RNDB dekryptering fejl, osv.), vil det returnere NAK i overensstemmelse med M1-kortet, som er en halv byte og Der er ingen CRC fejl, så når CRC check er slået til , opstår der en CRC-fejl.
SwitchL2-instruktionen udføres på ISO14443-4-niveauet. Når udførelsen er gennemført, kommer PICC ind på L2-sikkerhedsniveauet. På dette tidspunkt udføres switchL2-instruktionen ved den første transmission af Cmd+BNo+LenCap+PCDCap2, som returnerer to statusbyte 0x02, 0x09. 0x09 kan forstås som et ugyldigt bloknummer, men 0x02 kan ikke forstås.
I L2-niveau, som angivet i manualen, skal AES-autentificering udføres før M1-godkendelse, og de nederste 6 byte af sessionsnøglebasen, der genereres af AES, xoreres med M1-tasten for at blive den ægte M1-blokgodkendelsesnøgle . Efter test skal AES-nøgletypen være i overensstemmelse med M1-nøgletypen (det vil sige begge er A eller B), ellers mislykkes M1-godkendelsen! Når AES- og M1-tasten typer og værdiersektor A er i overensstemmelse med sektor B's, er adgangen til sektor B efter autentifikation af sektor A i overensstemmelse med adgangen til sektor A, og der er ingen grund til at få adgang til sektor B. Certificering.
Under debugging af mifPLAuthInPro på L2 sikkerhedsniveau, når s_AESCbcEnDecrypt kaldes, input iv vil blive omskrevet efter kryptering og dekryptering er afsluttet, resulterer i den næste kryptering og dekryptering iv ændringer og kryptering og dekryptering mislykkes! Skal være opmærksom på værdien af iv!
På L2-sikkerhedsniveauet skal den obligatoriske AES+M1-nøglegodkendelse holde AES-nøgletypen i overensstemmelse med M1-nøgletypen (f.eks.
Efter at have fuldført fejlfindingen af L2-niveau kan du udføre FirstAuth gentagne gange, og den TI-værdi, der opnås ved FirstAuth, er forskellig hver gang. Efter at have udført en korrekt FirstAuth-godkendelse og opnået TI, kan den korrekte followAuth udføres (followAuth's iv er baseret på FirstAuth-godkendelse). Når den korrekte FirstAuth er udført én gang, kan followAuth gentages. Da FirstAuth og followAuth køre i ISO14443-4 mode, PICC forbliver i ISO14443-4 tilstand, når der opstår fejl, og der er ingen grund til at re-søge på kortet.
MultiWriteBlock- og MultiReadBlock-kommandoerne på L2-sikkerhedsniveauet understøtter kun flere databloklæse- og skrivehandlinger i samme sektor! Kommandoerne ReadBlock og WriteBlock på L3-sikkerhedsniveauet understøtter kontinuerlig databloklæsning og -skrivning på tværs af sektorer (kun inden for denne sektor!!!)
L3 sikkerhedsniveau followAuth operation for at opnå ENC KEY og MAC KEY kryptering anvendes iv vektor er 0 i stedet for TI + W_ctr + R_ctr!
I ISO14443-4-tilstand skal firstauth-handlingen udføres!
Forståelse af M1-kortværdirelaterede handlinger: Essensen af kommandoen Gendan er at kopiere den tilsvarende værdi af den indgående datablok (skal være i tegnebogsformat) til en overførselsbuffer på 16 byte inde i M1-kortet, og essensen af kommandoen Overfør er at overførselsbufferværdien inde i M1-kortet kopieres til den indgående datablok. Essensen af kommandoen Increment er at føje værdien af inputtegnebogblokken til merværdien og kopiere den til overførselsbufferen, så kommandoen Overfør skal kaldes igen for at kopiere værdien for overførselsbuffer til den angivne datablok.

https://www.szrcloud.com/card-reader/rfid-card-reader/rfid-card-reader-in-games.html
