第9項. 各テクノロジーを操作する(MIFARE CLASSIC編)

ここでは、MIFARE CLASSICテクノロジーを操作する機能について説明をします。

 1. MIFARE CLASSICタグのタイプを取得する

MIFARE CLASSICタグのタイプを取得には、Rho::NFCTagTechnology_MifareClassic::get_typeメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.get_type  #=> Int

 

 2. MIFARE CLASSICタグのタイプを数字から文字列へコンバートする

MIFARE CLASSICタグのタイプを数字から文字列へコンバートするには、Rho::NFCTagTechnology_MifareClassic::convert_type_to_stringメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.convert_type_to_string(Int)  #=> String


Intには下記の数字が入ります。


TYPE_CLASSIC = 0
TYPE_PLUS = 1
TYPE_PRO = 2
TYPE_UNKNOWN = -1

 

 3. MIFARE CLASSICタグのセクターへブロックを書き込む

MIFARE CLASSICタグのブロックへ書き込むには、Rho::NFCTagTechnology_MifareClassic::write_blockメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.write_block(index, block)


各引数には、次のような値を設定します。

 

  • ・index - 書き込むセクターの番号を数字で指定します。
  • ・block ・書き込むブロックを16バイトの配列で指定します。

 

 4. MIFARE CLASSICタグのセクターからブロックを読み込む

MIFARE CLASSICタグのセクターからブロックを読み込むには、Rho::NFCTagTechnology_MifareClassic::read_blockメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.read_block(index)

引数には、次のような値を設定します。

 

  • ・index ・読み込むセクターの番号を数字で指定します。

 

 5. MIFARE CLASSICタグのサイズを取得する

MIFARE CLASSICタグのサイズを取得するには、Rho::NFCTagTechnology_MifareClassic::get_sizeメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.get_size

 

 6. MIFARE CLASSICタグのブロック数を取得する

MIFARE CLASSICタグのブロック数を取得するには、Rho::NFCTagTechnology_MifareClassic::get_block_countメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.get_block_count

 

 7. MIFARE CLASSICタグのセクター数を取得する

MIFARE CLASSICタグのセクター数を取得するには、Rho::NFCTagTechnology_MifareClassic::get_sector_countメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.get_sector_count

 

 8. MIFARE CLASSICタグのセクターの中のブロック数を取得する


MIFARE CLASSICタグのセクターの中のブロック数を取得するには、Rho::NFCTagTechnology_MifareClassic::get_blocks_in_sector_countメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.get_blocks_in_sector_count

 

 9. MIFARE CLASSICタグの最初のブロックのセクターを取得する

MIFARE CLASSICタグの最初のブロックのセクターを取得するには、Rho::NFCTagTechnology_MifareClassic::sector_to_blockメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.sector_to_block

 

 10. MIFARE CLASSICタグのセクターをKeyで認証する

MIFARE CLASSICタグのセクターをKeyAで認証するには、Rho::NFCTagTechnology_MifareClassic::authenticate_sector_with_key_Aメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.authenticate_sector_with_key_A(index, key)

各引数には次のような値を設定出来ます。
・“index” - セクターの番号を数字で指定します。
・“key” - 6バイトの配列を指定します。*下記の定数表を参考

 

MIFARE CLASSICタグのセクターをKeyBで認証するには、Rho::NFCTagTechnology_MifareClassic::authenticate_sector_with_key_Bメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.authenticate_sector_with_key_B(index, key)


各引数には次のような値を設定出来ます。

  • ・“index” - セクターの番号を数字で指定します。
  • ・“key” - 6バイトの配列を指定します。*下記の定数表を参考

 


鍵の定数表


KEY_DEFAULT = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]
KEY_MIFARE_APPLICATION_DIRECTORY = [0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5
KEY_NFC_FORUM = [0xD3, 0xD7, 0xD3, 0xD7, 0xD3, 0xD7]

 

 11. MIFARE CLASSICタグにコマンドを送信する

MIFARE CLASSICタグにコマンドを送信するには、Rho::NFCTagTechnology_MifareClassic::transceiveメソッドを使用します。

 

Rho::NFCTagTechnology_MifareClassic.transceive(array)  #=> Array


 arrayにはコマンドのバイト配列が入ります。

システム工房エムのサイトへのリンク

住所〒690-0017 島根県松江市西津田3-2-3 TEL.0852-23-8590 FAX.0852-23-8591
Copyright 2008-2010 System Maker M,All right reserved