問題タブ [hce]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 別のコンテキストから HostApduService に情報を渡す
これは以前に質問されたもので、回答がなかったので、質問の言い回しを少し変えてみます。Service
自分でバインドしたり起動したりせずに、Android にデータを渡すさまざまな方法は何ですか?
これが問題HostApduService
です-NFCカードトランザクションごとにオペレーティングシステムによって開始される. システム権限である権限が必要なandroid.permission.BIND_NFC_SERVICE
ため、アプリケーションはそれにバインドできません。データを保存したくないので、ディスクに書き込まれるものは何でも構いません。いくつかの可能な解決策を考えましたが、それらは厄介であるか、安全ではありません。
- アプリの SharedPreferences にデータを入れます。これにより、DAR の問題が発生します。
- に情報をブロードキャストします
Service
。はカード トランザクションのHostApduService
間実行されるため、サービスが機能し始める前にブロードキャストがサービスに到達するタイミングを確実に計ることはできません。 - 渡したい情報を
static
どこかのフィールドに入れます。これは面倒で、並行性の問題を引き起こす可能性がありますが、私が現在使用しているものです。
他のアイデアはありますか?前もって感謝します。
android - NFC デバイスを NFC タグとして使用する
Android デバイスを NFC タグとして機能させたい。NFCデバイスをNFCタグとして使用することはできますか? どうすればそれを達成できますか?タグの読み取り/書き込み、デバイス間のビームデータを実行しました。
android - Android HCE サービス
NFC リーダーとの間でデータを送受信する HCE サービスを使用していますが、サービスの起動設定を指定できるかどうか疑問に思っていました。アプリが実行されている場合にのみ、サービスを呼び出すことができるように指定したいと考えています。アプリが閉じている場合、サービスは呼び出されません。これは可能ですか、それともサービスを常に呼び出すことができるように意図されていましたか?
tags - NFC TAG ID (UID) を確認するにはどうすればよいですか?
各端末で APK & TAG を使用すると、他の NFC TAG ID を知ることができます。たとえば、電話機 A と B がタグ付けを試みます。次に、電話 A は電話 B の NFC タグ ID (4 バイト - 16 進数) を知ることができます。しかし、携帯電話で NFC TAG ID を知る方法を知りたいです。他の電話は使用していません。他に何か情報をご存知でしたら、アドバイスをお願いします。
android - ホスト カード エミュレーションでの暗号化された論理チャネル
HCE 実装は単一の論理チャネルのみをサポートし、デフォルトでは暗号化されていません。
HCEで暗号化された論理チャネルを確立すること、またはホストカードエミュレーションをより安全にする他の方法を確立することは可能ですか?
ありがとう
android - MIFARE DESFire カードにアクセスする
Android フォンを NFC リーダーとして使用して MIFARE DESFire カードにアクセスするにはどうすればよいですか? AndroidフォンでAndroidアプリケーション(支払い用)を開発する予定です。
Android フォンを使用して実行したい DESFire 操作 (認証、読み取り、書き込み) には SAM カードが必要です。HCE を使用して電話でその SAM カードをエミュレートできると考えました。
nfc - 電話からデスクトップへの NFC ビーム
Nexus 5 スマートフォンから Windows 8 デスクトップに .doc ファイルを送信する必要があります (ACR122U-A9 NFC リーダーが接続されています)。私が見つけた同様のプロジェクトでは、LLCP/SNEP プロトコルを使用しています (このリンクで見つけることができる Android Beam など: https://code.google.com/p/java-android-beam-api/ )。ホストベースのカード エミュレーションの新機能があるため、Android と ACR122U 間の通信を確立するために、LLCP/SNEP の代わりに HCE を使用できるかどうかを知りたいですか?
android - Android ユーザーランドから HCE サービスに APDU を送信することは可能ですか?
私の質問がばかげているように聞こえる場合は、前もってお詫び申し上げます。
Android Kit-Kat で導入された比較的新しいホスト カード エミュレーションの可能性に興味があります。
以前の Secure-Element ベースの NFC アプリケーションでは、NFC コントローラーまたは「接触」インターフェイス (チップと電話の間のソケット) を介して、SE でホストされているアプレットと APDU を交換することができました。
後者は、SE と Android ユーザーランド (リモート サーバーのプロキシとして機能できる) で実行されているアプリケーションとの間の通信を可能にします。アプリケーションがアプレットと通信するための承認は、事前に SE に「注入」する必要のあるアプリケーションのある種のハッシュに基づいて付与されました — 私の知る限り、このセキュリティ メカニズムはグローバル プラットフォーム仕様の一部です。
Googleドキュメントのこのセクションを読んだので、HCEでの同様の可能性について疑問があります。
HCE アーキテクチャ自体は、セキュリティの 1 つのコア部分を提供します。サービスは BIND_NFC_SERVICE システム権限によって保護されているため、OS のみがサービスにバインドして通信できます。
ユーザーランド アプリケーションが HCE サービスと APDU を交換することは不可能だと思われます。これは、NFC コントローラーを介して「外部」からのみ行うことができます。私が間違っている場合、それを行う方法と、どのユーザーランドアプリケーションが HCE サービスと通信できるかを制御するセキュリティメカニズムはありますか?
HCE を介してエミュレートされたカードの内容を表示し、リモート サーバー (NFC リーダーとして機能する) と HCE サービスの間でトランザクションを開始できる Android アプリケーションを開発できるかどうかを知りたいので、これらの質問をしています。
御時間ありがとうございます!