web-dev-qa-db-ja.com

Android L暗号化とiOS 8暗号化の比較

最近、AppleのiOS 8オペレーティングシステムの新しいフルディスク暗号化システムが ニュースで になりました。そして、Appleのリリース直後に Googleが発表 は、次期バージョンのAndroidオペレーティングシステムでもデフォルトで暗号化を有効にする予定です。

私の質問は次のとおりです。セキュリティの観点から、2つのシステムは似ていますか、または異なりますか(同じパスワードを使用している、またはPIN code)を使用していると想定していますか)?Androidの暗号化は完全にどのように機能しますか?

より具体的に言えば、8文字の小文字のランダムなパスワードを使用した場合、約60秒かかります。 iOSデバイスの場合、総当たりで265年になりますが、Androidの電話で同様の設定を行うと、どのくらい安全ですか?


AppleがiOS 8で採用したアプローチの背景については、 このドキュメント を参照してください。この権利を理解している場合、重要な点は、特別な部分があることです。デバイス固有の秘密識別子を含む改ざん防止ハードウェアの例です。暗号化キーを取得する唯一の方法は、PINコードをこのハードウェアに送り、80ミリ秒待って何が出てくるかを確認することです。これは、PINコードをこの単一の固有のハードウェアに入力し続ける必要があります(そして、各試行には80ミリ秒かかります。そして、世界にそのようなチップが1つしかないため、これを並列化することはできません。 )、または識別子を総当たりにする必要があります(非常に長い)。

これは、Google(およびAndroid電話メーカー)がAndroid電話)で行っていることとどのように比較しますか?

15
Jukka Suomela

現在、Androidのデバイス暗号化 dm-cryptを使用 であり、実際にPIN /パスワードは多かれ少なかれ直接復号化されたキーを導出するために使用されるため、ブルートフォース攻撃の種類の影響を受けやすいようですボリュームヘッダーに格納されているAESキー。

このようなブルー​​トフォース攻撃から保護するには、パスワードが十分に高いエントロピーである必要があります(デスクトップ暗号化システムと同様)。残念ながら、Androidでは、ディスクの復号化と画面ロックに別のパスワードを設定できません。ただし、これはUIの制限にすぎません。ブート時のディスクの復号化に強力なパスワードを使用することは 簡単に可能 ですが、これにはルートアクセスが必要です。

ただし、これはAndroid Lによってすべて変更される可能性があります。現時点で公に知られているものはありませんが、 suggestions があり、Androidは、 iOSのように「信頼できる」ハードウェア部分。

ちなみに、あなたが説明したiOSハードウェアキーの派生は、A7 SoC(またはそれ以降)を使用するデバイスでは別のものに置き換えられたようです。 Appleは、Secure Enclave内でPIN /パスワードの検証を実行(およびレート制限)しているようです。これにより、理論的にはより安全になります。あなたが参照した文書から:

A7以降のAシリーズプロセッサを搭載したデバイスでは、キー操作はSecure Enclaveによって実行されます。これにより、繰り返されたロック解除要求の繰り返しの間に5秒の遅延が適用されます。これは、iOSによって実施される保護手段に加えて、総当たり攻撃に対するガバナーを提供します。

Android Lソースコード全体が確実にリリースされるのを待つ必要があります(それでも、デバイスの製造元が実装する必要があるかもしれません)。しかし、現時点では、一部のAndroidデバイスはすでにサポートしています 非対称キー用のハードウェアキーストア ;このメカニズム ARMのTrustZone実行環境に基づいているようです であり、AppleのSecure Enclaveの概念と同様に、理論的にはデバイスの暗号化キーに拡張できます。

7
lxgr

Android(ブロックレベルの暗号化)とiOS(ファイルレベルの暗号化)の間の異なる暗号化アーキテクチャは、ファイルが削除されたときに異なる動作を作成します。

  • ブロックレベルの暗号化では、ファイルが削除されると、ファイルシステムはファイルシステムからブロックをリンク解除しますが、実際にはデータを破壊しません。ほとんどのAndroidデバイスは「ウェアレベリング」を含むNANDフラッシュを使用するため、特定のデータを実際に上書きすることは一般的に不可能であり、機密ファイルを削除できません。
  • ファイルレベルの暗号化では、inodeがリンク解除されるとファイルごとのキーが破棄され、現在参照されていないデータが効果的に破棄されるため、削除を取り消すことはできません。
0
ve6yeq