7

これは私を殺しています...私は次のようなNFC / RFIDタグを見つけようとしています:

  1. タグがリーダーによって認証されるように、タグに送信されるデータの暗号化および/または暗号署名を実装します。タグがリーダーを認証しようとするかどうかは気にしません。

  2. Android フォンと標準の NFC ライブラリで広くサポートされています。

  3. 暗号化キーを安全な方法で保存します (構成ヒューズが飛んだ後は読み取ることができなくなります)。

タグに格納できるペイロードの種類は気にしません。また、NDEF メッセージも使用しません。使用される暗号化が対称か非対称かは気​​にしません。私がしたいのは、タグに少しのデータを送信し、共有シークレットを使用してそのデータを暗号化または署名し、電話に送り返すことです。その後、私のコードは同じ機能を実行し、結果をタグを検証するためのタグの応答。

私は Atmel CryptoRF* タグのサンプルを持っています。これらはおそらく私が必要とすることのほとんどを実行しますが、私が持っている唯一の Android フォンでは適切に検出されません。電話が鳴り、適切な技術リストのエントリで「android.nfc.action.TECH_DISCOVERED」をフィルタリングしていますが、何も得られません。Atmel の技術サポートは役に立たないというよりも悪いです (なぜなら、彼らが答えようとしない質問をして時間を無駄にしたからです)。Logcat は次のようになります。

  • 09-04 21:03:53.474 1012-1012/? D/NativeNfcTag: 接続に失敗しました - ステータス = 146
  • 09-04 21:03:53.474 1012-1012/? E/NFCJNI: doDisconnect() - ターゲットはすでに切断されています

タグが Android によって認識されたことを示唆する以前のエントリはありません。

これは、どこかに存在しなければならない、単純で明白で必要なタイプのタグのように思えます。

NFCGuy またはその他 - 何かアイデアはありますか?

ありがとう!

* Atmel CryptoRF のデータ シートには次のように記載されています。これは、Android フォンでこれらの情報を読み取ることができるかどうかを判断するのに役立つ場合とそうでない場合があります。

  • ISO/IEC 14443-2:2001 タイプ B 準拠
  • ISO/IEC 14443-3:2001 タイプ B 準拠の衝突防止プロトコル
4

1 に答える 1

3

Mifare Desfire は、1 つのことを除いて、あなたが求めることを実行します。

暗号サポートは API レベルでは利用できません。

すべての認証と暗号化を行うコードを作成し、Desfire タグと直接やり取りする必要があります。Android API は、低レベル アクセス関数を介してこれを行うためのツールを提供しますIsoDep.transceive。暗号関数自体は次の場所にあります。javax.crypto.spec

他のタグとは異なり、認証と暗号化を実行するために必要な手順の暗号化ドキュメントがインターネットで入手できます。

于 2013-09-05T06:50:17.573 に答える