このチュートリアルは、macOSおよびWindows上でチェックサムとGPG署名検証を使用して、OneKey Appクライアントインストールパッケージの整合性と信頼性を確認する方法を案内します。検証がサポートされているインストールパッケージプラットフォームは次のとおりです:
デスクトップクライアント | モバイルアプリ |
macOS Silicon macOS Intel Windows Linux |
Android APK |
検証方法
- まず、検証したいクライアントのインストールパッケージをローカルにダウンロードします。
-
ダウンロードしたクライアントのバージョン番号に基づいて、GitHub Releaseで対応するGPG情報検証ファイルを見つけ、ファイル名をクリックしてダウンロードします(下の図はv3.3.0のGPGファイルの位置を示しています)。
-
ファイルがダウンロードされたディレクトリに移動し、以下のコマンドを実行します:
shasum -a 256 --check SHA256SUMS.asc
- ダウンロードしたインストールパッケージ(この場合、バージョンv3.3.0-mac-arm64)を見つけ、そのチェックサムがファイルの内容と一致することを確認します。
- SHA256SUMSファイルにはすべてのバージョンのインストールパッケージのチェックサムが含まれているため、存在しないファイルについて警告が表示されることがあります。これらの警告は検証結果に影響しません。ダウンロードしたパッケージのチェックサムがOKであることを確認してください。
-
ファイルはOneKeyによって生成され、GPGツールを使用して検証する必要があります。システムにGNU Privacy Guard (GPG)をインストールしていない場合は、こちらからダウンロードできます。 https://www.gnupg.org/download/index.en.html#binary
-
GPGをインストールした後、公開鍵をインポートするコマンドを実行します:
gpg --keyserver keys.openpgp.org --recv-keys EB68AE544F1FDD8CD264624FB369A67A90BF387B
-
キーがインポートされたら、同じディレクトリで以下のコマンドを実行してSHA256SUMS.ascファイルの署名を検証します:
-
これにより、SHA256SUMSファイルがdev@onekey.soによって署名されたことが確認されます。
gpg --verify SHA256SUMS.asc
-
まず、Windowsインストールパッケージをローカルマシンにダウンロードします。
-
ダウンロードしたクライアントのバージョン番号に基づいて、GitHub Releaseで対応するGPG情報検証ファイルを見つけ、ファイル名をクリックしてダウンロードします(下の図はv3.3.0のGPGファイルの位置を示しています)。
-
コマンドプロンプトを開き、以下のコマンドを実行します(<file_path>をダウンロードしたインストールパッケージのパスに置き換えてください)。
certutil -hashfile <file_path> SHA256
-
コマンドからのSHA256結果をSHA256SUMS.ascファイルの対応するエントリと比較します。SHA256SUMS.ascファイルをテキストエディタで開き、一致するエントリを見つけることができます。
-
SHA256SUMS.ascファイルがOneKeyによって生成されたことを確認するには、GPGツールを使用する必要があります。GPGをインストールしていない場合は、こちらからダウンロードしてください。 https://www.gnupg.org/download/index.en.html#binary
-
注: 下の画像で示されているGnuPGインストーラーを選択することをお勧めします。
-
- インストール後、GPGがインストールされているディレクトリ(例: C:\Program Files (x86)\GnuPG\bin)に移動し、gpg.exe実行ファイルを見つけます。この実行ファイルをコマンドプロンプトにドラッグして実行します。
-
公開鍵をインポートするコマンドを実行します:
gpg --keyserver keys.openpgp.org --recv-keys EB68AE544F1FDD8CD264624FB369A67A90BF387B
- キーのインポートに成功したら、以下のコマンドを実行します:
gpg --verify SHA256SUMS.asc
- 成功した検証メッセージが表示されると、SHA256SUMS.ascファイルがOneKeyによって生成されたことが確認されます。