API version 16
iOSAndroidWindows
説明 |
Mifare Classicタグのセクタに対し、KeyAによる認証を行います。 詳細はMifare Classicのドキュメントなどを参照してください。
|
||||||||||||||||
呼出形式 |
nfc.Mifare_AuthenticateSectorWithKeyA( sectorIndex , keyType [, key ] )
|
||||||||||||||||
戻り値 |
なし
|
||||||||||||||||
引数 |
Integer sectorIndex |
0から開始する、認証を行うセクタのインデックスを指定します。 |
|||||||||||||||
|
Integer keyType |
認証キーを自分で指定するか、よく知られているキーを使うかを指定します。 下記の値を指定します。
|
|||||||||||||||
|
ByteArray key |
6byteの認証キーを指定します。 keyTypeがMIFARE_KEY_USERの場合に使用します。
キーのサイズが6byteではない場合、FUNC-4例外が発生します。
|
|||||||||||||||
例外 |
FUNC-4 |
引数が不正です。 |
|||||||||||||||
|
RTM-50 |
NFCタグへのアクセスに失敗しました。 |
|||||||||||||||
|
RTM-85 |
Mifare Classicコマンドの発行に失敗しました。
|
|||||||||||||||
使用例 |
var nfc = null; try { nfc = Runtime.DiscoverNfcTag("Mifare Classicのカードをかざしてください"); } catch(e) { MessageBox("NFCタグ探索失敗"); return; } if(!nfc.IsMifareClassicTag) { nfc.Close(false, "Mifare Classic以外のタグが読み取られました"); return; } try { nfc.SetMessage("読取中..."); var key = new ByteArray(0,1,2,3,4,5); /* 0番目のセクタに対しKeyAで認証を行う*/ nfc.Mifare_AuthenticateSectorWithKeyA(0,NfcTagConnection.MIFARE_KEY_USER,key); /* 0番目のブロックからデータを取得*/ var blockData = nfc.Mifare_ReadBlock(0); var blockDataStr = ""; var len = blockData.length; for (var i = 0; i < len; i++) { var b = blockData.ByteAt(i); blockDataStr += b.ToString(16) + str(" "); } /* NFCとの通信を終了 */ nfc.Close(true, "ブロックデータ : " + blockDataStr); } catch(e) { nfc.Close(false, "読取エラー"); }
|
||||||||||||||||
関連項目 |