Funktionen zum Arbeiten mit Datenbausteinen
BlockRead, BlockRead_AKM1, BlockRead_AKM2, BlockRead_PK
Diese Funktionsgruppe wird zum Lesen von Blockinhalten verwendet. Liest immer den gesamten Block (16 Byte des Blocks). Funktionen verwenden die sogenannte Blockadressierung (der erste Block hat die Adresse 0; der erste Sektortrailer hat die Adresse 3, der nächste 7 usw., bis der letzte MIFARE® 1K-Block, der auch ein Anhänger des letzten Sektors ist, eine Adresse 63 hat). Diese Funktionen ermöglichen auch das Lesen der Inhalte des Sektortrailers (der verfügbare Teil zum Lesen, abhängig von den eingestellten Zugriffsrechten).
- aucData – Zeiger auf die Anzahl der Bytes, in denen gelesene Daten gespeichert werden. Muss mindestens 16 Bytes zugewiesen werden, bevor die Funktion aufgerufen werden kann.
- ucBlockAddress – ucAuthMode-Blockadresse. Dieser Parameter definiert, ob Authentifizierung A-Schlüssel oder B-Schlüssel durchgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die geschrieben werden
- ucSectorTrailersByte9 – Der Zugriffsbitwert, der Zugriffsberechtigungen für alle Sektortrailer definiert. Es kann Werte von 0 bis 7 haben
- aucProvidedKey – Zeiger auf das sechste Byte-Array, das den Schlüssel für die Authentizität enthält, der in der Methode "Provided Key" nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methodenverwendung an.
Diese Funktionen funktionieren genauso wie BlockRead-Gruppenfunktionen und sind für das Lesen von Blockinhalten gedacht. Der einzige Unterschied besteht darin, dass die sektorale Adressierung verwendet wird. Dazu gehört auch das separate Senden von Sektoradressen und Blockadressen innerhalb eines Sektors. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k Sektoradresse kann im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen. Der gesamte Block (16-Byte-Block) wird immer gelesen.
Diese Funktionen können die Inhalte der Sektortrailer lesen (der verfügbare Teil zum Lesen, abhängig von den festgelegten Zugriffsrechten).
- aucData – Zeiger auf das Bytes-Array, in dem gelesene Daten gespeichert werden. Es müssen mindestens 16 Byte zugewiesen werden, bevor die Funktion aufgerufen wird.
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Adresse innerhalb eines Sektors blockieren
- ucAuthMode – Dieser Parameter definiert, ob die Authentifizierung mit einem Schlüssel A oder einem B-Schlüssel durchgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die geschrieben werden
- aucProvidedKey – Zeiger auf das Sechst-Byte-Array, das den Schlüssel für die Authentizität enthält, der in der "Provided Key"-Methode nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methode an.
BlockWrite, BlockWrite_AKM1, BlockWrite_AKM2, BlockWrite_PK
Diese Funktionen werden für die Dateneingabe (jeweils 16 Byte) in die Blöcke verwendet. Funktionen verwenden die sogenannte Blockadressierung (der erste Block hat die Adresse 0; der erste Sektortrailer hat die Adresse 3, der nächste 7 usw., bis der letzte MIFARE® 1K-Block, der auch ein Anhänger des letzten Sektors ist, eine Adresse 63 hat). Diese Funktionsgruppe erlaubt keine direkte Dateneingabe in die Sektortrailer. Verwenden Sie dazu die Sonderfunktionen SectorTrailerWrite und SectorTrailerWriteUnsafe.
- aucData – Zeiger auf die Anzahl der Bytes, in denen gelesene Daten gespeichert werden. Muss mindestens 16 Byte zugewiesen werden, bevor die Funktion aufgerufen werden kann
- ucBlockAddress – Kartenblockadresse
- ucAuthMode – Dieser Parameter definiert, ob die Authentifizierung mit Schlüssel A oder Schlüssel B durchgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die gelesen werden
- aucProvidedKey – Zeiger auf das sechste Byte-Array, das den Schlüssel für die Authentizität enthält, der in der Methode "Provided Key" nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methodenverwendung an.
FORBIDEN_DIRECT_WRITE_IN_SECTOR_TRAILER.
BlockInSectorWrite, BlockInSectorWrite_AKM1, BlockInSectorWrite_AKM2, BlockInSectorWrite_PK
Diese Funktionen funktionieren genauso wie BlockWrite-Gruppenfunktionen. Sie werden für die Dateneingabe (jeweils 16 Byte) in Blöcke verwendet. Der einzige Unterschied ist die Verwendung von Sektoradressierung. Sektoradressierung bedeutet getrennte Sendesektor- und Blockadressen innerhalb eines Sektors. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k Sektoradresse kann im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen. Diese Funktionsgruppe erlaubt keine direkte Dateneingabe in die Sektortrailer. Verwenden Sie dazu die Sonderfunktionen SectorTrailerWrite und SectorTrailerWriteUnsafe
- aucData – Zeiger auf die Anzahl der Bytes, in denen gelesene Daten gespeichert werden. Muss mindestens 16 Byte zugewiesen werden, bevor die Funktion aufgerufen werden kann
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Dieser Parameter definiert, ob die Authentifizierung mit dem Schlüssel A oder B durchgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61)
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die geschrieben werden
- aucProvidedKey – Zeiger auf das sechste Byte-Array, das den Schlüssel für die Authentizität enthält, der in der Methode "Provided Key" nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methodenverwendung an.
FORBIDEN_DIRECT_WRITE_IN_SECTOR_TRAILER.
SectorTrailerSchreiben, SectorTrailerWrite_AKM1, SectorTrailerWrite_AKM2, SectorTrailerWrite_PK
Diese Funktionen werden für das Schreiben von Daten in den Sektoranhängern verwendet. Funktionen können auch für die Blockadressierung von Sektoranhängern sowie für die Sektoradressierung verwendet werden, die durch den Parameter ucAddressingMode bestimmt wird. Im Falle der Blockadressierung hat der erste Block die Adresse 0; Trailer hat eine erste Sektoradresse 3 und die nächsten 7 usw. bis zum letzten Block von MIFARE® 1k, der auch ein Anhänger des letzten Sektors ist und eine Adresse 63 hat. Diese Funktionsgruppe vereinfacht die Bitmanipulation für die Einstellung der Zugriffsrechte (Zugriffsbits) von Bausteinen und minimiert die Möglichkeit einer dauerhaften Sperrung des gesamten Sektors aufgrund falscher Formatierung dieser Bits. Die Formatierung der Zugriffsbits erfolgt durch den RFID-Leser vor dem Schreiben. API-Benutzer können die entsprechenden Sperrzugriffsrechte, die durch die Werte 0 bis 7 dargestellt werden, auswählen und an diese Funktionen übermitteln.
Für Sektoranhänger gelten folgende Zugriffsrechte:
- Zugriffsbits C1 C2 C3
- Zugriffswerte (an die Funktion übermittelt)
- Zugriffsrechte
- Schlüssel A Bytes mit den Zugriffsbits und dem Neun-Byte-Schlüssel B
- Lesen und Schreiben
Für Sektoranhänger gelten folgende Zugriffsrechte:
* Wenn die Zugriffsrechte für den Sektoranhänger eines entsprechenden Sektors so eingerichtet sind, dass es möglich ist, B-Schlüssel zu lesen, kann er in keinem der Fälle zur Authentifizierung verwendet werden. Diese Funktionen setzen auch neue Sektorschlüssel, wenn sie auf Zugriffsrechte zugreifen dürfen.
- Zugriffsbits C1 C2 C3
- Zugriffswerte (an die Funktion übermittelt)
- Zugriffsrechte
- Lesen, Schreiben, Inkrement, Dekrementieren
- ucAddressingMode – Gibt den Adressmodus an. Mögliche Werte dieses Parameters sind BLOCK_ADDRESS_MODE (0x00) oder SECTOR_ADDRESS_MODE (0x01). Wenn ein anderer Wert gesendet wird, gibt die Funktion einen Fehlercode zurück WRONG_ADDRESS_MODE
- ucAddress – Sektoren oder Sektoranhänger blockiert die Adresse, abhängig von ucAddressingMode. Wenn Sie einen Sektoradressmodus verwenden, z. B. den MIFARE Classic® 1K, kann der Bereich von 0 bis 15 liegen (hat 16 Sektoren). Derselbe Typ im Blockadressierungsmodus kann die Werte von 0 bis 63 verwenden, sofern ein Fehler auftritt, wenn der adressierte Block nicht auch der Sektortrailer ist.
- aucNewKeyA – Zeiger auf das 6-Byte-Array, das einen neuen A-Schlüssel für einen bestimmten Sektor darstellt, der festgelegt wird, wenn dies zuvor mit den Zugriffsrechten zulässig war
- aucNewKeyB – Zeiger auf das Sechs-Byte-Array, das einen neuen B-Schlüssel für einen bestimmten Sektor darstellt, der festgelegt wird, wenn dies zuvor mit den Zugriffsrechten zulässig war
- ucBlock0AccessBits – Zugriffswert für den 0-Block eines Sektors.
MIFARE® 4k hat eine andere Organisation für die letzten 8 Sektoren, die zweite Hälfte des Adressraums. Daher werden in diesen Sektoren die Zugriffsrechte wie folgt festgelegt:
- Zugriffsrechte auf die ersten 5 Blöcke – ucBlock1AccessBits Zugriffswertblock für den ersten Sektor
- Zugriffsrechte auf die zweiten 5 Blöcke – ucBlock2AccessBits Zugriffswertblock für den ersten Sektor
- Zugriffsrechte auf die letzten 5 Blöcke:
- ucSectorTrailerAccessBits – Zugriffswert für einen Sektortrailer
- ucSectorTrailerByte9 – Das neunte Sektortrailer-Byte ist ein Byte für allgemeine Zwecke, in das ein beliebiger Einzelbytewert eingegeben werden kann
- ucAuthMode – Dieser Parameter definiert, ob die Authentifizierung mit Schlüssel A oder Schlüssel B durchgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61)
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die geschrieben werden
- aucProvidedKey – Zeiger auf das sechste Byte-Array, das den Schlüssel für die Authentizität enthält, der in der Methode "Provided Key" nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methodenverwendung an.
SectorTrailerWriteUnsafe, SectorTrailerWriteUnsafe_AKM1, SectorTrailerWriteUnsafe_AKM2, SectorTrailerWriteUnsafe_PK
Diese Funktionen haben den gleichen Zweck wie die Funktion der SectorTrailerWrite-Gruppe, mit dem Unterschied, dass der Inhalt des "rohen" Sektortrailers gesendet wird, und die Fehler sind beim Formatieren von Zugriffsbits für die Eingabe möglich. Diese Funktionen richten sich an Entwickler mit Erfahrung in der Arbeit mit MIFARE.® Für diese Funktionen gelten alle für die SectorTrailerWrite-Gruppenfunktionen genannten Regeln, mit Ausnahme der Option der "Rohdaten" für die Sektortrailererfassung.
- ucAddressingMode – Gibt den Adressmodus an. Mögliche Werte dieses Parameters sind BLOCK_ADDRESS_MODE (0x00) oder SECTOR_ADDRESS_MODE (0x01). Wenn ein anderer Wert gesendet wurde, gibt die Funktion einen Fehlercode WRONG_ADDRESS_MODE zurück.
- ucAddress – Sektoren oder Sektoranhänger blockieren Adressen, abhängig von ucAddressingMode.
Wenn Sie einen Sektoradressmodus verwenden, kann der Bereich im Fall von MIFARE® 1K zwischen 0 und 15 liegen (hat 16 Sektoren) und derselbe Typ im Blockadressierungsmodus kann die Werte 0 bis 63 mit dem möglichen Fehler verwenden, wenn der adressierte Block nicht auch der Sektoranhänger ist.
- aucSectorTrailer – Zeiger auf 6-Byte-Array, das die "rohen" Daten für den Adresssektor-Trailereintrag enthält
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61)
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die geschrieben werden
- aucProvidedKey – Zeiger auf das sechste Byte-Array, das den Schlüssel für die Authentizität enthält, der in der Methode "Provided Key" nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methodenverwendung an.
Funktionen zum Arbeiten mit Wertebausteinen
Wertblöcke stellen eine optionale MIFARE-Funktionalität® dar. Dies ist eigentlich ein Modus, in dem der gesamte Datenblock (16 Bytes) einen Vier-Byte-Wert darstellt. In diesem Modus können Sie einen beliebigen Datenblock hinzufügen (außer natürlich Block 0, dem Nullsektor und dem Sektortrailer). Die Werte in den Werteblöcken sind auf besondere Weise formatiert und enthalten zusätzlich zu den Wertdatensätzen den Adresswert eines Bytes, wodurch Benutzer die zusätzliche Möglichkeit haben, das Backup-System zu implementieren.
D-Logic RFID-Lesegeräte kümmern sich um die korrekte Formatierung von Werteblöcken, sodass die Funktionen, die nur mit vier Byte-Werten verarbeitet werden, den Benutzern zur Verfügung stehen. Es sollte erwähnt werden, dass die Verwendung von Werteblöcken sinnvoll ist, wenn die Zugriffsrechte auf den gewünschten Block auf die Werte 1, 6 oder 0 (die Standardeinstellung in der neuen Karte) festgelegt sind, wodurch ihre Werte erhöht und verringert werden können. Zunächst müssen Wertblöcke initiiert werden, Wert und zugehörige Adresse müssen dem entsprechenden Format von sechzehn Byte-Datensätzen entsprechen. Der beste und einfachste Weg für die Initialisierung von Wertblöcken ist mit einer Reihe von Windows-API-Funktionen IS21 ValueBlockWrite oder ValueBlockInSectorWrite.
ValueBlockRead, ValueBlockRead_AKM1, ValueBlockRead_AKM2, ValueBlockRead_PK
Diese Funktionen machen dasselbe wie ValueBlockRead-Gruppenfunktionen und eignen sich zum Lesen von 4-Byte-Werten der Wertblöcke. Zusätzlich geben sie die zugehörige Adresse zurück, die im Werteblock hinterlegt ist. Der einzige Unterschied ist die Verwendung der sogenannten sektoralen Adressierung. Sektorale Adressierung bedeutet, dass Sektor- und Blockadressen innerhalb eines Sektors getrennt gesendet werden. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k Sektoradresse kann im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen.
- lValue – Zeiger auf eine Variable eines langen Typs, über die der value-Block zurückgegeben wird
- ucValueAddr – Das neunte Sektortrailer-Byte ist ein Byte für allgemeine Zwecke, in das ein beliebiger Einzelbyte-Wert eingegeben werden kann
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Adresse in einem Sektor blockieren
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61)
- ucReaderKeyIndex – die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamenssuffix weist auf die Verwendung dieser Methode hin.
ValueBlockInSectorRead, ValueBlockInSectorRead_AKM1, ValueBlockInSectorRead_AKM2, ValueBlockInSectorRead_PK
Diese Funktionen machen dasselbe wie ValueBlockRead-Gruppenfunktionen und eignen sich zum Lesen von 4-Byte-Werten der Wertblöcke. Zusätzlich geben sie die zugehörige Adresse zurück, die im Werteblock hinterlegt ist. Der einzige Unterschied ist die Verwendung der sogenannten sektoralen Adressierung. Sektorale Adressierung bedeutet, dass Sektor- und Blockadressen innerhalb eines Sektors getrennt gesendet werden. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k Sektoradresse kann im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen.
- lValue – Zeiger auf eine Variable eines langen Typs, über die der value-Block zurückgegeben wird
- ucValueAddr – Der Verweis auf eine Variable vom Typ unsigned char wird über die Ein-Byte-Adresse zurückgegeben, was die zusätzliche Möglichkeit für eine Backup-Systemimplementierung bietet
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Adresse in einem Sektor blockieren
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61)
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamenssuffix weist auf die Verwendung dieser Methode hin.
ValueBlockWrite, ValueBlockWrite_AKM1, ValueBlockWrite_AKM2, ValueBlockWrite_PK
Diese Funktionen werden verwendet, um Werte für vierte Byte-Wertblöcke zu initialisieren und zu schreiben und die zugehörige Adresse im Werteblock zu speichern. Funktionen mit der sogenannten Blockadressierung (der erste Block hat die Adresse 0; Anhänger hat eine erste Sektoradresse 3 und die nächsten 7 usw. bis zum letzten Block von MIFARE® 1k, der auch ein Anhänger des letzten Sektors ist und eine Adresse 63 hat).
- lValue – Wert für den Wertblockeintrag
- ucValueAddr – Dem Werteblock zugeordnete Adresse
- ucBlockAddress – Adresse blockieren
- ucAuthMode – Dieser Parameter definiert, ob die Authentifizierung mit einem Schlüssel A oder einem B-Schlüssel durchgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt dies für alle Sektoren, die geschrieben werden
- aucProvidedKey – Zeiger auf das sechste Byte-Array, das den Schlüssel für die Authentizität enthält, der in der Methode "Provided Key" nachgewiesen wird. _PK Suffix im Namen der Funktion gibt diese Methodenverwendung an.
ValueBlockInSectorWrite, ValueBlockInSectorWrite_AKM1, ValueBlockInSectorWrite_AKM2, ValueBlockInSectorWrite_PK
Diese Funktionen ähneln den ValueBlockWrite-Gruppenfunktionen. Sie verwenden für die Eingabe, Wertblöcke 4 Bytes Werte Initialisierung. Speichert außerdem die zugehörige Adresse im Blockwert. Der einzige Unterschied ist die sektorale Adressierungsverwendung. Sektorale Adressierung bedeutet, dass Sektor- und Blockadressen innerhalb eines Sektors getrennt gesendet werden. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k Sektoradresse kann im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen.
- lValue – Wert für den Wertblockeintrag
- ucValueAddr – Dem Werteblock zugeordnete Adresse
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Blockadresse eines Sektors
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamenssuffix weist auf die Verwendung dieser Methode hin.
ValueBlockIncrement, ValueBlockIncrement_AKM1, ValueBlockIncrement_AKM2 ValueBlockIncrement_PK
Dieser Funktionsumfang wird verwendet, um den Wert 4-Byte-Wertblöcke zu erhöhen. Der Wert des Wertblockinkrements wird als Parameter dieser Funktionen gesendet. Funktionen verwenden Blockadressierung (der erste Block hat die Adresse 0; der erste Sektoranhänger hat Adresse 3, der nächste 7 usw. bis der letzte MIFARE® 1K-Block, der auch ein Anhänger des letzten Sektors ist, eine Adresse 63 hat).
- lIncrementValue – Der Wert des Wertblockinkrements
- ucBlockAddress – Adresse in einem Sektor blockieren
- ucSectorAddress – Branchenadresse
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamenssuffix weist auf die Verwendung dieser Methode hin.
ValueBlockInSectorIncrement, ValueBlockInSectorIncrement_AKM1, ValueBlockInSectorIncrement_AKM2 ValueBlockInSectorIncrement_PK
Diese Funktionen haben den gleichen Zweck wie ValueBlockIncrement-Gruppenfunktionen und werden zum Lesen von 4-Byte-Werten der Wertblöcke verwendet. Der Wert des Wertblockinkrements wird als Parameter dieser Funktionen gesendet. Der einzige Unterschied ist die sektorale Adressierungsverwendung. Sektorale Adressierung bedeutet, dass Sektor- und Blockadressen innerhalb eines Sektors getrennt gesendet werden. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k Sektoradresse kann im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen.
- lIncrementValue – Der Wert des Wertblockinkrements
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Adresse innerhalb eines Sektors blockieren
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamenssuffix weist auf die Verwendung dieser Methode hin.
ValueBlockDecrement, ValueBlockDecrement_AKM1, ValueBlockDecrement_AKM2, ValueBlockDecrement_PK
Dieser Satz von Funktionen wird verwendet, um den 4-Byte-Wert von Wertblöcken zu verringern. Der Wert der Wertblockabnahme wird als Parameter dieser Funktionen gesendet. Funktionen verwenden Blockadressierung (der erste Block hat die Adresse 0; der erste Sektoranhänger hat Adresse 3, der nächste 7 usw. bis der letzte MIFARE® 1K-Block, der auch ein Anhänger des letzten Sektors ist, eine Adresse 63 hat).
- lDecrementValue – Der Wert von Wertblockabnahme
- ucBlockAddress – Adresse innerhalb eines Sektors blockieren
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamensuffix gibt die Verwendung dieser Methode an.
ValueBlockInSectorDecrement, ValueBlockInSectorDecrement_AKM1, ValueBlockInSectorDecrement_AKM2, ValueBlockInSectorDecrement_PK
Diese Funktionen funktionieren genauso wie ValueBlockDecrement-Gruppenfunktionen und sind für die Wertblöcke 4-Byte-Werte Dekrementierung gemacht. Der Wert der Wertblockabnahme wird als Parameter an diese Funktionen gesendet. Der einzige Unterschied ist die sektorale Adressierungsverwendung. Dazu gehört auch das separate Senden von Sektoradressen und Blockadressen innerhalb eines Sektors. Für MIFARE® 1K kann die Sektoradresse im Bereich von 0 bis 15 liegen und die Blockadresse innerhalb des Sektors zwischen 0 und 3 liegen. Für MIFARE® 4k-Sektor kann die Adresse im Bereich von 0 bis 39 liegen und da die zweite Hälfte der Adressraumorganisation anders ist (über 2 MB), kann die Blockadresse in den letzten 8 Sektoren (Sektoren 32 bis 39) im Bereich von 0 bis 15 liegen
- lDecrementValue – Der Wert von Wertblockabnahme
- ucSectorAddress – Branchenadresse
- ucBlockInSectorAddress – Adresse innerhalb eines Sektors blockieren
- ucAuthMode – Dieser Parameter definiert, ob Authentifizierungsschlüssel A oder Schlüssel B ausgeführt werden soll. Es kann zwei Werte haben, nämlich: AUTHENT1A (0x60) oder AUTHENT1B (0x61).
- ucReaderKeyIndex – Die Standardauthentifizierungsmethode (wenn die Funktionen ohne Suffix verwendet werden) führt den Authentizitätsnachweis mithilfe des ausgewählten Schlüsselindexes aus dem RFID-Lesegerät durch. Im linearen Adressmodus gilt es für alle Sektoren zum Schreiben
- aucProvidedKey – Zeiger auf das Sechs-Byte-Array, das den Schlüssel für die Authentifizierung der Methode "Provided Key" enthält. _PK Funktionsnamenssuffix weist auf die Verwendung dieser Methode hin.