2017-08-05 4 views
2

私は大学の教育目的のプロジェクトでAndroid隠しAPIを使用しています。特に、私は指紋認証で遊んでいます。私の目標はFingerprintオブジェクトをAuthenticationResultから取ることです。 AuthenticationResultには2つのゲッター:getCryptoObject()getFingerprint()があります。最後のものは隠されています(また、Fingerprintクラスには@hideアノテーションがあります)ので、私はそれを呼び出すことはできません。その後、私はこのリポジトリを見つけました(https://github.com/anggrayudi/android-hidden-api参照)ので、android.jarを私のsdkの場所に置き換えました。そうすることで、私はFingerprintクラスにアクセスでき、getFingerprint()も呼び出すことができますが、nullを返します。私のデバイスに隠されたAPIを有効にしたframework.jarバージョン(Androidスタジオで実際にアプリケーションをビルドするのと同じもの)を持っているのか、単純にこれらの情報にアクセスできないのか(フィンガープリントなのか) ありがとうございますAndroid非表示APIを使用して指紋情報にアクセスする

答えて

1

GMS認定デバイスの場合、Android 6.0以降では指紋にアクセスできません。

参照: https://source.android.com/compatibility/7.1/android-7.1-cdd.pdf

セクション:7.3.10

ハイライト:

  • は、ハードウェア・バックキーストアの実装を持ち、信頼実行環境で指紋照合を実行しなければなりません(TEE )またはTEEへの安全なチャネルを備えたチップ上に置くことができる。
  • Android Open Source Projectサイトの実装ガイドラインに記載されているように、信頼できる実行環境(TEE)の外部で取得、読み取り、変更できないように、すべての識別可能な指紋データを暗号化して暗号化しなければなりません。
  • は、第三者のアプリケーションで個々の指紋を区別してはいけません。
関連する問題