今私が興味を持っているgithubプロジェクトがあります。
プロジェクト作成者は、.ascファイルに独自の指紋と公開鍵を含めます。
この分野に初めて触れたとき、色々なものを一つにつなげたかった。
公開鍵と指紋を使用してアイテムの真偽を確認するにはどうすればよいですか?
リポジトリを複製し、gitの表示署名フラグを使用します。
私はまだこの分野に慣れておらず、私がやっていることをもっと学び、理解したいと思います。トピックをより深く探求するために、詳細な答えを喜んで聞きたいです。
指紋と.ascファイルを使用してレプリケートされたリポジトリの信頼性を確認する方法の正確な手順を理解し、理解したいと思います。
みんなありがとう
答え1
これは実際にはUnix / Linux関連の問題ではないため、Cryptozoology、Computer Security StackExchange、またはSuperUser.SEに移動できます。
gpg2 --import keyfile.asc
を使用してキーをGPGにインポートできます。これにより、git verify-commit
コマンドgit verify-tag
を使用して、複製されたGitリポジトリ内のさまざまな要素の署名を確認できます。ただし、キー自体をさらにチェックしないと、悪意のある作業ではなく、間違いによるデータの破損だけを防ぐことができます。
指紋はキー自体にのみ関連し、gitリポジトリには関係ありません。公開鍵とともに指紋が提供される場合、指紋は、送信中に鍵自体が誤って損傷していないことを確認するためにのみ使用することができる。 (キーが悪意を持って改ざんされている場合、隣の指紋も悪意を持って改ざんされている可能性があります。)
鍵が他の人によって署名されていることを確認するために使用できますgpg2 --show-keys keyfile.asc
。署名者のGPG公開鍵がある場合、GPGは自動的に鍵を確認できます。そして他の人の鍵に署名するとき、署名者は注意を払うだろうとGPGに言いました。これはあなたが喜んで受け入れることができるだけ多くの人々を通して「信頼の鎖」を形成するために繰り返すことができます。
そうでない場合は、プロジェクトの作成者に連絡して、改ざんされていないことを信頼できる方法で指紋を取得する必要があります。指紋を確認しgpg2 --fingerprint <key ID>
、所有者が話す人と一致することを確認したら、キーが実際にプロジェクトの作成者から来たことを信頼できます。