チェーンを操作し、ウォレットキーにセキュリティロックを追加する必要があります

Web3.0 の世界では、秘密キーとシードワードのセキュリティが最も重要です。これらを所有すると、自分のデジタル資産に自由にアクセスできるため、紛失または盗難はユーザーの財産に多大な損害を与える可能性があります。
Web 3.0 分野でモバイル ウォレット アプリケーションが台頭しているため、これらのキーを保護するさまざまなセキュリティ メカニズムを理解することが重要です。
この記事では、Web3.0 モバイル ウォレット アプリケーションによって提供されるさまざまなレベルのセキュリティ保護について概要を説明します。 9つの人気のあるオープンソースモバイルウォレットの調査を通じて、単純なパスワード保護からハードウェアサポートされた信頼できる実行環境などのセキュリティ保護に至るまで、これらの人気のあるウォレットがユーザーの秘密キーやニーモニックフレーズを実際にどのように実装しているかについて議論しました。調査を通じて、これらのセキュリティ保護メカニズムのいくつかは、一般的な秘密キーの盗難攻撃を効果的に解決できることがわかりました。ただし、システム レベルからの脅威 (root の悪用など) がほとんど無視されていることもわかりました。
ウォレットのセキュリティ コア: 秘密キーの保護
モバイル ウォレット アプリケーションで最も重要なデータは、秘密キーとシード フレーズです。
したがって、モバイル ウォレット アプリケーションに対する最も深刻な脅威は、秘密キーまたはシード フレーズの漏洩です。この脅威を適切に軽減するには、適切に設計されたモバイル ウォレット アプリケーションには、保管段階または使用段階で秘密キーを保護するための体系的なアプローチが必要です。

上の表では、Android モバイル デバイス上のユーザーの秘密キーを保護するために Web3.0 ウォレットで使用される一般的な手法をまとめています。この表は、Android モバイル デバイスのウォレットにおける秘密キーとシード フレーズの保護の一般的な方法をまとめたものです。各レベルのセキュリティ対策はセキュリティ レベルの高い順にリストされており、完全には対処していない対応する脅威も含まれています。
9 つの人気のあるオープンソース Web 3.0 ウォレットを調査することで、それらをさまざまなセキュリティ レベルに分類し、これらのプラクティスが現実の世界でどのように適用されるかをより深く理解することができます。
下の画像には、これらのモバイル ウォレット アプリの名前と、Google Play ストアでのダウンロード数も示されています。

ウォレットのセキュリティ: S 0 から S 4
副題
S 0 (メモリ保護なし)
S 0 レベルのセキュリティ実践では、秘密キーやニーモニック フレーズなどを含むすべてのユーザーの個人情報をアプリケーションのストレージ領域に保存します。これにより通常、特権のないユーザーやアプリケーションがストレージ ファイルに直接アクセスできなくなります。
画像の説明

Protobuf ファイルからビットコインウォレットを復元する
Android デバイスで特権アクセス許可を取得することは不可能ではないことに注意してください。ユーザーが積極的にデバイスをルート化することを選択し、悪意のあるアプリによってさらに悪用されることに加えて、サイバー犯罪者が脆弱性を悪用して権限を取得することが、Android デバイスにおける新たな脅威となっています。
画像の説明

Sqlite データベースからシンプルなビットコイン ウォレットを復元する
副題
S1(パスワード暗号化)
S1 レベルのウォレット セキュリティでは、ユーザー定義のパスワードを使用して、秘密キーとニーモニック フレーズを含むストレージ ファイルを暗号化します。これにより、特権のないユーザーやアプリケーションがストレージ ファイルに直接アクセスすることができなくなります。ただし、アプリケーションの起動時に、保存されているファイルを復号化する必要があるため、特権ユーザーまたはアプリケーションがウォレットに侵入して、暗号化されたパスワードを傍受することが可能になります。これにより、暗号化されたキー ファイルをローカルで復号したり、直接ブルート フォースで復号したりすることができます。
画像の説明

副題
S 2 [Keystore(Trustzone)]
キーストア ファイルの暗号化キーが攻撃者によってメモリ内で傍受されるのを防ぐために、メタマスクなどの一部のウォレット アプリケーションは Android キーストア システムを使用して暗号化キーを生成および使用します。
キーストア システムは、Android の信頼された実行環境 (TEE) で実行される信頼されたアプリケーションによって実装されます。この環境はメインのオペレーティング システムから分離されており、ハードウェア ベースのセキュリティ機能によって保護されています。キーストア システムを使用すると、保存されたファイルの暗号化または復号化が TEE で行われ、暗号化キーが侵害される可能性が低くなります。
副題
S 3 [キーストア(トラストゾーン)+ルート検出]
S2 レベルの保護のセキュリティを強化するために、一部のウォレット アプリでは、モバイル デバイスが root 化されているかどうかを確認することでユーザー資産を保護するためにさらに一歩進んでいます。ルート化されたデバイスは攻撃者によって悪用されやすいため、この検出はデバイスの整合性を確保するのに役立ちます。
副題

S 4 (専用の信頼できる実行環境 TA 信頼できるアプリケーション)
モバイル ウォレット アプリケーションにおける最高レベルのセキュリティ実践は、専用の信頼された実行環境 (TEE) を使用して秘密キー情報を保存および処理することです。これは、専用の TEE ベースの信頼されたアプリケーション (TA) をデバイスにインストールすることによって実現されます。
たとえば、この保護方法は現在、一部のハイエンド Samsung スマートフォンの Samsung ブロックチェーン アプリケーションで使用されています。このアプローチでは、秘密キー情報が TEE 内でのみ保存および使用され、メイン オペレーティング システムから分離され、ベンダーの信頼されたコードによってのみアクセスできるため、追加の保護が提供されます。特権ユーザーやアプリケーションであっても、この情報に直接アクセスすることはできません。ただし、このアプローチには、ウォレット開発者が TEE を使用するための特定のインターフェイスをスマートフォンのメーカーが提供する必要があるという点で制限があります。
モバイルウォレットアプリのセキュリティ
S 3 レベルの保護では、ルート検出をキーストア システムと併用してユーザーの個人情報を保護できると説明しました。ルート検出は、デバイスが基本的な整合性を維持していることを確認するための重要な側面であると考えており、より高いレベルの保護を確保するには、セキュリティ対策と組み合わせて実装する必要があることに注意してください。
ただし、ルート検出技術はさまざまであり、必ずしも効果的であるとは限らないことに注意することが重要です。たとえば、Airgap Vault r はテスト デバイスでルート化されていましたが、Samourai Wallet は同じテスト環境でルート化されたデバイスを正常に検出できませんでした。
さらに、この調査には、追加のハードウェア実装を含まない、モバイル デバイス上のソフトウェア ウォレット アプリケーションのみが含まれています。ハードウェアベースの Web 3.0 ウォレットとコールド ウォレット セキュリティはどちらも魅力的なセキュリティ機能を提供しており、それぞれについて詳しく説明する独自の記事が必要です。
要約する
要約する
このペーパーでは、CertiK の専門家チームが、モバイル デバイス上の Web3.0 ウォレット アプリケーションが直面する脅威、特に秘密キーのストレージと関連する潜在的な脅威を分析します。 CertiK の専門家チームは、9 つの異なる人気のあるウォレット アプリケーションのテストと調査を通じて、各アプリケーションで採用されているセキュリティ レベルを明らかにし、ほとんどの主要なウォレットが暗号化を解決するためにハードウェアを利用したキー保護テクノロジーを使用していることを発見しました。 Android 上のシステム。
ただし、ほとんどのウォレットはデバイスがルート化されているかどうかなどの完全性をチェックしていないため、メモリ内で秘密キーの操作を実行するときにセキュリティ上の問題が発生する可能性があることにも気づきました。この記事でまとめた 5 つのレベルのセキュリティ対策に加えて、ウォレット開発者は Android の Trustzone 設計を最大限に活用して一般的なリスクをより効果的に軽減する方法にも注意を払う必要があると考えています。今後の記事でも引き続きこのトピックを紹介し、開発者がユーザーの資産をより適切に保護できるよう支援していきます。


