Mifare DESFire通信は、いくつかのAndroidデバイスでオフホスト(UICC)ではなくHCEにルーティングされます。M4M - Mifare DESFire EV1:UICCのMifare DESFire仮想カードへのオフホストルーティングのために、どのMifare AIDをNFCルーティングテーブルに追加する必要がありますか?
OMAPIベースのオフホストセキュアエレメントとの通信から、私はすでにAndroidオフホストルーティングテーブルにAIDを追加する方法を学びました。そのため、UICCでそれらを選択できるようになりました。 (ありがとう@MichaelRoland)
私の現在の問題:私は私のUICCに仮想Mifare DESfireカードを持っています。現在、一部のデバイスでは、ネイティブのラップされたMifareコマンドをUICCにルーティングしないため、デフォルトのルーティングを変更するスイッチはありません。だから私はオフホストルーティングテーブルに別のエントリを持っていましたが、どのAIDを使うのか分かりません。
MIFARE DESFireテストアプリケーションF01010
のPICCアプリケーションAIDがあります。これは、CLTインターフェイス上でアプリケーションを選択するために使用されるAIDですが、これをAndroidオフホストルーティングテーブルに入力することはできません。さらに、MIFARE DESFireアプリケーションに関連する2つの追加AIDがあります。これは仮想カードマネージャAID(A0000003964D344D1400000000000000
)とサービスマネージャAID(A0000003964D344D2400000000000000
)です。
しかし、どのAIDをルーティングテーブルに挿入する必要がありますか?
申し訳ありませんが、私はAIDを持っていますが、ルーティングテーブルに何を追加する必要があるのか分かりません。私のアプリは、基本的に、このMifare Desfire VC(またはMifare Desfire)のすべてのコマンドがUICCにルーティングされるようにしています。そしてそのために、Mifare Desfire VC(AID)をオフホストルーティングにどのように追加できるかを知る必要があります。 –
こんにちはAndy、アプリケーションレベルからは、実際のルーティングテーブルにアクセスすることはできません。あなたがマニフェストでやっていることは、基本的にどのAIDがどのAIDを使っているかをアンドロイドシステムに登録することだけです。私が知る限り、何をホストするのか、UICCに行くのかを決定する実際のルーティングテーブルはアプリケーションレベルからアクセスできません。デフォルトルーティングを変更する場合は、NFCスタック自体の設定ファイルにアクセスする必要があります。電話機にブロードコムチップがある場合は/etc/libnfc-brcm.confなどです。この場所では基本的にルートを追加する必要があります。 – ph10