SafetyNetとは?Android Payがデバイスで動作しない理由とその対策
この記事にたどり着いたということは、おそらく何らかのアプリが正常に動作せず、その原因として「SafetyNet」が挙げられたのではないでしょうか。「SafetyNet」とは一体何なのか、そしてこの問題を回避する方法はあるのでしょうか。本記事では、SafetyNetの仕組みから対処法までをわかりやすく解説します。
なぜSafetyNet APIは存在するのか

SafetyNet APIは、GoogleがAndroid Payを開発した際に、デバイスの複数の側面――特に「改ざんされていないかどうか」をチェックするために作られました。つまり、AndroidデバイスをRoot化していたり、カスタムROMを導入していたりすると、SafetyNet APIはそれを検出し、多くのアプリにおいてデバイスからの利用をブロックします。

Googleのエンジニアによると、SafetyNetはAndroid Payとともに開発され、ユーザーの認証情報や決済情報を可能な限り高いレベルで保護することを目的としています。具体的には、Androidは未改造の状態では強力な「サンドボックス」機構によってアプリを分離していますが、Root化はこのサンドボックスを破壊してしまいます。その結果、GoogleはRoot化されたデバイス上のデータセキュリティを保証できなくなります。不正利用やデータ流出の責任を間接的に負うリスクを避けるためにも、Android PayはRoot化済みデバイスでは動作しない仕様になっているのです。
ただし、Root化していなくてもブロックされるケースがいくつか存在します。
Root化していないのにエラーが出るのはなぜ?

最大の要因は、「CTS(互換性テストスイート:Compatibility Test Suite)に対応していないデバイス」であることです。CTSへの対応は、Google Playストアやその他のGoogleアプリがプリインストールされた端末に義務付けられています。そのため、カスタムROMを焼いた場合や、正規ライセンスを取得していない海外の格安デバイスを購入した場合には、Root化していなくてもSafetyNetが特定のアプリやサービスの利用をブロックすることがあります。
さらに、SafetyNetはマルウェア感染の検出にも対応しています。公式のGoogleサポートを受けた正規デバイスで、Root化もカスタムROM導入も行っていない場合でも、実際のセキュリティ上の問題が原因で特定のアプリが使えなくなることがあります。この場合は、マルウェアの駆除対策を行う必要があります。
SafetyNetなどのAPIを回避することはできる?
結論から言えば、「可能だが推奨されない」というのが実情です。SafetyNetや類似のAPIをバイパスする手法は多数存在しますが、そのほとんどは短期間で検出され、すぐに修正されてしまいます。この攻防は常に変化しているため、当サイトではSafetyNet回避用のアプリやサービスを紹介することは控えます。また、回避を試みた結果生じたいかなるトラブルについても責任を負いかねますので、ご注意ください。
アンルートが必要になる場合も
最後に、厳しい現実をお伝えします。場合によっては、Rootを解除し、端末を工場出荷時のファームウェアに戻すことが最善の解決策となります。Root化・アンロックされたデバイスならではの便利な機能を手放すのは残念ですが、「Pokémon GO」のようなゲームやAndroid Pay/Samsung Payを本当に使いたいのであれば、まずデバイスを適切に安全な状態へ戻す必要があります。
もう一つの選択肢は、実績のない危険性のある回避策に手を出すこと、あるいは単純に該当アプリを使わないことです。幸い、現時点でSafetyNetを必須とするアプリはモバイル決済系が中心です。スマートフォンですべてを完結させる必要がないのであれば、特に問題なく生活できるでしょう。
-
Androidとは何か?スマホユーザーが知っておくべき基礎知識とその重要性
誰もがスマートフォンに依存して暮らしている現代において、Androidスマートフォンのない世界を想像するのは難しいでしょう。Androidは検索エンジン最大手のGoogleが提供するモバイルOSであり、世界市場のおよそ87%という圧倒的なシェアを誇っています。その機能とパフォーマンスには疑いようがありません。しかし、お気に入りのこのOSについては、まだ知らないことがたくさんあるのです。 AppleのiPhoneとは異なり、Androidは世界中のあらゆるメーカーの端末に搭載され、それぞれ見た目も操作感も異なります。なぜそうなるのか、疑問に思ったことはありませんか? この記事では、Android
-
Core i3・i5・i7の違いを徹底解説!Intelプロセッサの選び方と知っておくべきこと
Intel(インテル)は、プロセッサやゲーミングハードウェアの分野で最も人気のあるブランドの一つです。同社が製造する多彩な製品は、市販されているほぼすべてのパソコン、ノートPC、モバイルデバイスに搭載されています。 次のパソコンを選ぶときには、自分のライフスタイルに合ったプロセッサを見極める力が重要です。仕事の負荷に耐えられるものか、ゲームを快適に楽しめる性能を持つものか、事前にしっかり確認しておきましょう。 間違ったプロセッサを選んで動作のもっさりした不満を抱え、結局新しいパソコンを買い直す羽目になる——そんなことだけは絶対に避けたいところですね。 プロセッサの型番ラベルは何を意味している?