データブロックを操作するための関数
ブロック読み取り、BlockRead_AKM1、BlockRead_AKM2、BlockRead_PK
この汎用グループは、ブロックコンテンツの読込に使用されます。 常にブロック全体 (ブロックの 16 バイト) を読み取ります。 関数はいわゆるブロックアドレス指定を使用します(最初のブロックはアドレス0、最初のセクタートレーラーはアドレス3、次のセクタートレーラーは7など、最後のセクターのトレーラーでもある最後のMIFARE® 1Kブロックはアドレス63を持ちます)。 これらの機能では、セクタートレーラーの内容(アクセス権セットに応じて読み取り可能な部分)を読み取ることもできます。

- aucData – 読み取ったデータが格納されるバイト数へのポインタ。 関数を呼び出す前に、少なくとも 16 バイトを割り当てる必要があります。
- ucBlockAddress – ucAuthMode ブロック アドレス。 このパラメーターは、認証 A キーと B キーのどちらを実行するかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニア・アドレス・モードでは、これは書き込まれるすべてのセクターに適用されます。
- ucSectorTrailersByte9 – すべてのセクタートレーラーのアクセス許可を定義するアクセスビット値。 0 から 7 までの値を指定できます。
- aucProvideKey – "提供されたキー" メソッドで認証を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドの使用方法を示します。
これらの関数は、BlockRead グループ関数と同じように機能し、ブロック コンテンツの読み取り用に作成されています。 唯一の違いは、セクター別アドレス指定が使用されることです。 これには、セクターアドレスとセクター内のブロックアドレスを個別に送信することが含まれます。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MB以上)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります。 ブロック全体 (16 バイト・ブロック) が常に読み取られます。
これらの関数は、セクタートレーラーの内容(アクセス権セットに応じて読み取り可能な部分)を読み取ることができます。
- aucData – 読み取ったデータが格納されるバイト配列へのポインタ。 関数を呼び出す前に、少なくとも 16 バイトを割り当てる必要があります。
- ucセクターアドレス – セクターアドレス
- ucBlockInSectorAddress – セクター内のブロックアドレス
- ucAuthMode – このパラメーターは、A キーまたは B キーのどちらを使用して認証を実行するかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニア・アドレス・モードでは、これは書き込まれるすべてのセクターに適用されます。
- aucProvideKey – "提供されたキー" メソッドで真正性を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドが使用されていることを示します。
ブロック書き込み、BlockWrite_AKM1、BlockWrite_AKM2、BlockWrite_PK
これらの関数は、ブロックへのデータ入力 (一度に 16 バイト) に使用されます。 関数はいわゆるブロックアドレス指定を使用します(最初のブロックはアドレス0、最初のセクタートレーラーはアドレス3、次のセクタートレーラーは7など、最後のセクターのトレーラーでもある最後のMIFARE® 1Kブロックはアドレス63を持ちます)。 この関数グループでは、セクタートレーラーへの直接データ入力は許可されません。 これを行うには、特殊関数 SectorTrailerWrite および SectorTrailerWriteUnsafe を使用します。

- aucData – 読み取ったデータが格納されるバイト数へのポインタ。 関数を呼び出す前に少なくとも 16 バイトを割り当てる必要があります
- ucブロックアドレス – カードブロックアドレス
- ucAuthMode – このパラメータは、キー A またはキー B のどちらで認証を実行するかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、これは読み取られるすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドで認証を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドの使用方法を示します。
FORBIDEN_DIRECT_WRITE_IN_SECTOR_TRAILER。
BlockInSectorWrite, BlockInSectorWrite_AKM1, BlockInSectorWrite_AKM2, BlockInSectorWrite_PK
これらの関数は、ブロック書き込みグループ関数と同じように機能します。これらは、ブロックへのデータ入力 (一度に 16 バイト) に使用されます。 唯一の違いは、セクターアドレス指定の使用です。 セクターアドレス指定とは、セクター内の送信セクターアドレスとブロックアドレスを分離することを意味します。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MB以上)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります。 この関数グループでは、セクタートレーラーへの直接データ入力は許可されません。 これを行うには、特殊関数 SectorTrailerWrite および SectorTrailerWriteUnsafe を使用します。
- aucData – 読み取ったデータが格納されるバイト数へのポインタ。 関数を呼び出す前に少なくとも 16 バイトを割り当てる必要があります
- ucセクターアドレス – セクターアドレス
- ucBlockInSectorAddress – このパラメーターは、A キーまたは B キーのどちらを使用して認証を実行するかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニア・アドレス・モードでは、これは書き込まれるすべてのセクターに適用されます。
- aucProvideKey – "提供されたキー" メソッドで認証を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドの使用方法を示します。
FORBIDEN_DIRECT_WRITE_IN_SECTOR_TRAILER。
セクタートレーラー書き込み、SectorTrailerWrite_AKM1、SectorTrailerWrite_AKM2、SectorTrailerWrite_PK
これらの関数は、セクタートレーラーでのデータ書き込みに使用されます。 関数は、セクタートレーラーブロックアドレス指定や、ucAddressingModeパラメーターによって決定されるセクターアドレス指定にも使用できます。
ブロックアドレス指定の場合、最初のブロックのアドレスは0です。トレーラーには、最初のセクターアドレス3と次のセクターアドレス7などがあります。最後のセクターのトレーラーでもあり、アドレス1を持つMIFARE® 63kの最後のブロックまで。 この関数のグループは、ブロックアクセス権設定(アクセスビット)のビット操作を簡素化し、これらのビットの誤ったフォーマットによるセクター全体の永続的なブロックの可能性を最小限に抑えます。 アクセスビットのフォーマットは、書き込み前にRFIDリーダーによって行われます。 APIユーザーは、値0〜7で表される適切なブロックアクセス権を選択し、それらをこれらの関数に送信できます。
セクタートレーラーの場合、次のアクセス権が有効です。
- アクセスビット C1 C2 C3
- アクセス値 (関数に送信)
- アクセス権
- アクセス ビットを含むキー A バイトと 9 バイトのキー B
- 読み書き
セクタートレーラーの場合、次のアクセス権が有効です。
※該当するセクタのセクタトレーラーのアクセス権がBキーの読み取り可能に設定されている場合、いずれの場合も認証に利用できません。 これらの関数は、アクセス権が許可されている場合、新しいセクターキーも設定します。
- アクセスビット C1 C2 C3

- アクセス値 (関数に送信)
- アクセス権
- 読み取り、書き込み、インクリメント、デクリメント
- ucアドレスモード – アドレスモードを指定します。 このパラメーターに指定できる値は、BLOCK_ADDRESS_MODE (0x00) または SECTOR_ADDRESS_MODE (0x01) です。 他の値が送信された場合、関数はエラーコードを返しますWRONG_ADDRESS_MODE
- ucAddress – セクターまたはセクター トレーラーは、ucAddressingMode に応じてアドレスをブロックします。 セクターアドレスモードを使用する場合、たとえばMIFAREクラシック® 1Kの場合、範囲は0〜15(16セクター)にすることができます。 ブロック・アドレッシング・モードの同じタイプは、アドレス指定されたブロックがセクター・トレーラでもない場合にエラーが発生するという条件で、0 から 63 までの値を使用できます。
- aucNewKeyA – 以前にアクセス権で許可されていた場合に設定される、指定されたセクターの新しいAキーを表す6バイト配列へのポインタ
- aucNewKeyB – 指定されたセクタの新しいBキーを表す6バイト配列へのポインタで、以前にアクセス権で許可されていた場合に設定されます。
- ucBlock0アクセスビット – セクターの 0 ブロックのアクセス値。
MIFARE® 4kは、アドレス空間の後半である最後の8つのセクターに対して異なる組織を持っています。 したがって、これらのセクターでは、アクセス権は次のように設定されます。
- 最初の 5 つのブロックへのアクセス権 – ucBlock1AccessBits 最初のセクターのアクセス値ブロック
- 2 番目の 5 つのブロックへのアクセス権 – ucBlock2AccessBits 最初のセクターのアクセス値ブロック
- 最後の5つのブロックへのアクセス権:
- ucSectorTrailerAccessBits – セクタートレーラーのアクセス値
- ucSectorTrailerByte9 – 9 番目のセクター トレーラー バイトは、任意の 1 バイト値を入力できる汎用バイトです。
- ucAuthMode – このパラメータは、キー A またはキー B のどちらで認証を実行するかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニア・アドレス・モードでは、これは書き込まれるすべてのセクターに適用されます。
- aucProvideKey – "提供されたキー" メソッドで認証を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドの使用方法を示します。
SectorTrailerWriteUnsafe, SectorTrailerWriteUnsafe_AKM1, SectorTrailerWriteUnsafe_AKM2, SectorTrailerWriteUnsafe_PK
これらの関数は、SectorTrailerWrite グループの関数と同じ目的を持っていますが、「生の」セクタートレーラーコンテンツを送信する点と、入力用のアクセスビット値をフォーマットするときにエラーが発生する可能性があります。 これらの関数は、MIFARE®の使用経験のある開発者を対象としています。 SectorTrailerWrite グループ関数について説明したすべてのルールは、セクタートレーラーエントリの「生」データのオプションを除き、これらの関数に適用されます。
- ucアドレスモード – アドレスモードを指定します。 このパラメーターに指定できる値は、BLOCK_ADDRESS_MODE (0x00) または SECTOR_ADDRESS_MODE (0x01) です。 他の値が送信された場合、関数はエラー コード WRONG_ADDRESS_MODE を返します。
- ucAddress – セクターまたはセクター トレーラーは、ucAddressingMode に応じてアドレスをブロックします。
セクターアドレスモードを使用する場合、MIFARE® 1Kの場合、範囲は0〜15(16セクター)であり、ブロックアドレス指定モードの同じタイプは0〜63の値を使用できますアドレス指定されたブロックがセクタートレーラーでない場合はエラーが発生する可能性があります。
- aucSectorTrailer – アドレスセクタトレーラーエントリの「生の」データを含む6バイト配列へのポインタ
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニア・アドレス・モードでは、これは書き込まれるすべてのセクターに適用されます。
- aucProvideKey – "提供されたキー" メソッドで認証を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドの使用方法を示します。
値ブロックを操作するための関数
値ブロックは、オプションの MIFARE® 機能を表します。 これは実際には、データのブロック全体 (16 バイト) が 1 つの 4 バイト値を表すモードです。 このモードでは、任意のデータブロックを追加できます(もちろん、ブロック0、ゼロセクター、セクタートレーラーを除く)。 値ブロックの値は特別な方法でフォーマット設定されており、値レコードに加えて 1 バイトのアドレス値が含まれているため、ユーザーはバックアップ システムを実装することができます。
D-Logic RFIDリーダは、適切な値ブロックのフォーマットを処理するため、4バイト値のみを処理する一連の機能をユーザーが利用できます。 値ブロックの使用は、目的のブロックへのアクセス権が値1、6、または0(新しいカードのデフォルト)に設定され、値が増減できる場合に意味があることに言及する必要があります。 まず、値ブロックを開始し、値と関連するアドレスが 16 バイト レコードの適切な形式に準拠している必要があります。 値ブロックを初期化するための最良かつ最も簡単な方法は、一連の Windows API 関数 IS21 ValueBlockWrite または ValueBlockInSectorWrite を使用することです。
ValueBlockRead, ValueBlockRead_AKM1, ValueBlockRead_AKM2, ValueBlockRead_PK
これらの関数は、ValueBlockRead グループ関数と同じことを行い、値ブロックの 4 バイト値の読み取りに適しています。 さらに、値ブロックに格納されている関連付けられたアドレスを返します。 唯一の違いは、いわゆるセクター別アドレス指定の使用です。 セクターアドレス指定とは、セクター内でセクターアドレスとブロックアドレスを別々に送信することを意味します。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MB以上)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります。

- lValue – 値ブロックが返す long 型の変数へのポインター
- ucValueAddr – 9 番目のセクター トレーラー バイトは、任意の 1 バイト値を入力できる汎用バイトです。
- ucセクターアドレス – セクターアドレス
- ucBlockインセクターアドレス – セクター内のブロックアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – e デフォルトの認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択されたキーインデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。
ValueBlockInSectorRead, ValueBlockInSectorRead_AKM1, ValueBlockInSectorRead_AKM2, ValueBlockInSectorRead_PK
これらの関数は、ValueBlockRead グループ関数と同じことを行い、値ブロックの 4 バイト値の読み取りに適しています。 さらに、値ブロックに格納されている関連付けられたアドレスを返します。 唯一の違いは、いわゆるセクター別アドレス指定の使用です。 セクターアドレス指定とは、セクター内でセクターアドレスとブロックアドレスを別々に送信することを意味します。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MB以上)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります。

- lValue – 値ブロックが返す long 型の変数へのポインター
- ucValueAddr – 符号なしchar型の変数へのポインタは、バックアップシステムの実装のための追加機能を与える1バイトアドレスを介して返されます
- ucセクターアドレス – セクターアドレス
- ucBlockインセクターアドレス – セクター内のブロックアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。
ValueBlockWrite, ValueBlockWrite_AKM1, ValueBlockWrite_AKM2, ValueBlockWrite_PK
これらの関数は、4 番目のバイト値ブロック値を初期化して書き込み、関連するアドレスを値ブロックに格納するために使用されます。 いわゆるブロックアドレス指定を使用する関数(最初のブロックはアドレス0、トレーラーは最初のセクターアドレス3、次の7など、最後のセクターのトレーラーでアドレス63を持つMIFARE® 1kの最後のブロックまで)。
- lValue – 値ブロックエントリの値
- ucValueAddr – 値ブロックに関連付けられたアドレス
- ucBlockAddress – ブロックアドレス
- ucAuthMode – このパラメーターは、A キーまたは B キーのどちらを使用して認証を実行するかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニア・アドレス・モードでは、これは書き込まれるすべてのセクターに適用されます。
- aucProvideKey – "提供されたキー" メソッドで認証を証明するためのキーを含む 6 番目のバイト配列へのポインター。 _PK 関数名のサフィックスは、このメソッドの使用方法を示します。
ValueBlockInSectorWrite, ValueBlockInSectorWrite_AKM1, ValueBlockInSectorWrite_AKM2, ValueBlockInSectorWrite_PK
これらの関数は、ValueBlockWrite グループ関数に似ています。 エントリに使用し、値は4バイトの値の初期化をブロックします。 さらに、関連付けられたアドレスをブロック値に格納します。 唯一の違いは、セクター別のアドレス指定の使用法です。 セクターアドレス指定とは、セクター内でセクターアドレスとブロックアドレスを別々に送信することを意味します。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MB以上)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります。
- lValue – 値ブロックエントリの値
- ucValueAddr – 値ブロックに関連付けられたアドレス
- ucセクターアドレス – セクターアドレス
- ucBlockインセクターアドレス – セクターのブロックアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。
ValueBlockIncrement, ValueBlockIncrement_AKM1, ValueBlockIncrement_AKM2, ValueBlockIncrement_PK
この機能セットは、値を 4 バイトの値ブロックにインクリメントするために使用されます。 値ブロック増分の値は、これらの関数のパラメーターとして送信されます。 関数はブロックアドレス指定を使用します(最初のブロックはアドレス0、最初のセクタートレーラーはアドレス3、次のセクタートレーラーは7など、最後のセクターのトレーラーでもある最後のMIFARE® 1Kブロックはアドレス63を持ちます)。
- l増分値 – 値ブロック増分の値
- ucBlockAddress – セクター内のブロックアドレス
- ucセクターアドレス – セクターアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。
ValueBlockInSectorIncrement, ValueBlockInSectorIncrement_AKM1, ValueBlockInSectorIncrement_AKM2, ValueBlockInSectorIncrement_PK
これらの関数は、ValueBlockIncrement グループ関数と同じ目的を持ち、値ブロックの 4 バイト値を読み取るために使用されます。 値ブロック増分の値は、これらの関数のパラメーターとして送信されます。 唯一の違いは、セクター別のアドレス指定の使用法です。 セクターアドレス指定とは、セクター内でセクターアドレスとブロックアドレスを別々に送信することを意味します。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MB以上)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります。
- l増分値 – 値ブロック増分の値
- ucセクターアドレス – セクターアドレス
- ucBlockInSectorAddress – セクター内のブロックアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。
ValueBlockDecrement, ValueBlockDecrement_AKM1, ValueBlockDecrement_AKM2, ValueBlockDecrement_PK
この関数セットは、値ブロックの 4 バイト値をデクリメントするために使用されます。 値ブロックのデクリメントの値は、これらの関数のパラメーターとして送信されます。 関数はブロックアドレス指定を使用します(最初のブロックはアドレス0、最初のセクタートレーラーはアドレス3、次のセクタートレーラーは7など、最後のセクターのトレーラーでもある最後のMIFARE® 1Kブロックはアドレス63を持ちます)。
- lデクリメント値 – 値ブロックデクリメントの値
- ucBlockアドレス – セクター内のブロックアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択されたキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。
ValueBlockInSectorDecrement, ValueBlockInSectorDecrement_AKM1, ValueBlockInSectorDecrement_AKM2, ValueBlockInSectorDecrement_PK
これらの関数は、ValueBlockDecrement グループ関数と同じように機能し、値ブロックの 4 バイト値デクリメントに対して作成されます。 値ブロックのデクリメントの値は、これらの関数にパラメーターとして送信されます。 唯一の違いは、セクター別のアドレス指定の使用法です。 これには、セクターアドレスとセクター内のブロックアドレスを個別に送信することが含まれます。 MIFARE® 1Kセクターアドレスは0〜15の範囲で、ブロックアドレスは0〜3の範囲のセクター内にあります。 MIFARE® 4kセクターアドレスは0〜39の範囲にあり、アドレス空間編成の後半が異なる(2 MBを超える)ため、最後の8セクター(セクター32〜39)のブロックアドレスは0〜15の範囲にある可能性があります
- lデクリメント値 – 値ブロックデクリメントの値
- ucセクターアドレス – セクターアドレス
- ucBlockInSectorAddress – セクター内のブロックアドレス
- ucAuthMode – このパラメータは、認証キー A またはキー B を実行するかどうかを定義します。 AUTHENT1A (0x60) または AUTHENT1B (0x61) の 2 つの値を持つことができます。
- ucReaderKeyIndex – 既定の認証方法 (サフィックスのない関数が使用されている場合) は、RFID リーダーから選択したキー インデックスを使用して信頼性の証明を実行します。 リニアアドレスモードでは、書き込みのすべてのセクターに適用されます
- aucProvideKey – "提供されたキー" メソッドの認証用のキーを含む 6 バイトの配列へのポインター。 関数名のサフィックス_PK、このメソッドの使用を示します。