web-dev-qa-db-ja.com

https://files.devuan.org/devuan-devs.gpgを確認するにはどうすればよいですか

DevuanJessieを実行しています。別のDevuanAsciiを最初からインストールしたいと思います。だから私はダウンロードしました:

しかし、devuan-devs.gpgを認証する方法が見つかりませんでした。

DebianやUbuntuなどの他のディストリビューション ISOを確認できます 既存の以前のバージョンから。

しかし、Devuanの場合、私は方法を見つけられませんでした。

tino@ts:~/ISO/devuan_ascii-2.0.0$ gpg --verify SHA256SUMS.asc
gpg: assuming signed data in `SHA256SUMS'
gpg: Signature made Wed 06 Jun 2018 08:55:55 PM CEST using DSA key ID 0B5F062F
gpg: Can't check signature: public key not found
tino@ts:~/ISO/devuan_ascii-2.0.0$ gpg --no-default-keyring --keyring /usr/share/keyrings/devuan-archive-keyring.gpg --verify SHA256SUMS.asc
gpg: assuming signed data in `SHA256SUMS'
gpg: Signature made Wed 06 Jun 2018 08:55:55 PM CEST using DSA key ID 0B5F062F
gpg: Can't check signature: public key not found
tino@ts:~/ISO/devuan_ascii-2.0.0$ gpg --no-default-keyring --keyring /usr/share/keyrings/devuan-keyring.gpg --verify SHA256SUMS.asc
gpg: assuming signed data in `SHA256SUMS'
gpg: Signature made Wed 06 Jun 2018 08:55:55 PM CEST using DSA key ID 0B5F062F
gpg: Can't check signature: public key not found

tino@ts:~/ISO/devuan_ascii-2.0.0$ gpg --keyring ../devuan-devs.gpg --verify SHA256SUMS.asc
gpg: assuming signed data in `SHA256SUMS'
gpg: Signature made Wed 06 Jun 2018 08:55:55 PM CEST using DSA key ID 0B5F062F
gpg: Good signature from "Vincenzo (KatolaZ) Nicosia <[email protected]>"
gpg:                 aka "Vincenzo Nicosia (KatolaZ) <[email protected]>"
gpg:                 aka "Vincenzo Nicosia (KatolaZ) <[email protected]>"
gpg:                 aka "KatolaZ <[email protected]>"
gpg:                 aka "Enzo Nicosia <[email protected]>"
gpg:                 aka "Enzo Nicosia -- KatolaZ <[email protected]>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 8E59 D6AA 445E FDB4 A153  3D5A 5F20 B3AE 0B5F 062F

「鍵は認証されていない」ため、鍵が偽物ではないことを示すものはありません。 この壊れた信頼チェーンをどのように修正できますか?

https://devuan.org/os/documentation/dev1fanboy/general-information この謎も解決しません。

ノート:

devuan-devs.gpgはおそらく偽物ではありません。ただし、この仮定は役に立ちません。確実にする方法が必要です、それは偽物ではありません。 Devuan(Jessie)がすでに私の側で実行されているため、最初のHen-Eggの問題はすでに解決されています。

JessieをAsciiにアップグレードするよりも、AsciiのISOを認証するためのより良い方法が確かにあります。正しい?

1
Tino

残念ながら、画像を認証するためのより良い方法はないようです。

  • 関連するすべてのファイルは同じチャネルを介してダウンロードされます。
  • SHA256SUMSファイルの署名に使用されるキーは、以前のDevuanリリースでは使用できません。
  • キーリングで提供されているキーは、他のキーによって署名されていません。
  • キーサーバーに公開されたキー 署名済み ですが、強力なセットには含まれておらず、以前のDevuanリリースのキーリングにあるキーからの署名はありません。

キーサーバーと公開されたキーリングで同じキーが利用できるという事実は、より多くの保証を提供すると解釈される可能性がありますが、所有者が正当なDevuanリリース署名者であるかどうかはまだわからないため、そうなるかどうかはわかりません。

0
Stephen Kitt

読者の利益のために、私は小さな助けを見つけました。それほど多くはありませんが、小さな一歩です。 (今のところ、受け入れられた答えはそのままにしておきますが、それでも最良の答えです。)

Devuanからの「古い」キーの出力は次のとおりです。

$ gpg devuan-devs.gpg | head -3
gpg: WARNING: no command supplied.  Trying to guess what you mean ...
pub   rsa4096 2015-11-20 [SC] [expired: 2018-11-20]
      102EFE3BBA4B2E45EBD56C7A27B9FAA4EBAA93A1
uid           Daniel Lambert Reurich <[email protected]>

Devuanからの「新しい」キーの出力は次のとおりです。

$ gpg devuan-devs.gpg.1 | head -3
gpg: WARNING: no command supplied.  Trying to guess what you mean ...
pub   rsa4096 2015-11-20 [SC] [expires: 2021-02-24]
      102EFE3BBA4B2E45EBD56C7A27B9FAA4EBAA93A1
uid           Daniel Lambert Reurich <[email protected]>

devuan-devs.gpg.1https://files.devuan.org/devuan-devs.gpg からです

あなたは2つのことを見つけることができます:

  1. 有効期限が更新されました
  2. キーのフィンガープリントは変更されませんでした:102EFE3BBA4B2E45EBD56C7A27B9FAA4EBAA93A1

したがって、信頼できる古いキーを見つけた場合は、新しいキーが古いキーに基づいているかどうかを確認して、新しいキーも信頼できるようにすることができます。 (まあ、誰かが秘密鍵をハッキングし、Devuanを危険にさらして公開鍵に偽の更新をアップロードすることができた可能性は非常に低く、誰もこれを検出しませんでした。)

  • 申し訳ありませんが、セキュリティを念頭に置いて、このような更新を適切かつ簡単に自動化する方法が見つかりませんでした。したがって、私たちが持っているのは、この非常に面倒で非常にエラーが発生しやすい(2つの長い16進文字列が実際に同一であることを確認するのが苦手な)手動の方法だけです。

  • gpg: WARNING:を取り除く方法が見つかりませんでした(2>/dev/nullで無視することを除いて、STDERRを無視することは、正しいことをしたいときにできる最も愚かなことです)。

新しいキーが古いキーより悪くないことを十分に確信したので、次のことができます。

mv devuan-devs.gpg.1 devuan-devs.gpg

もちろん、gpg出力の解釈に非常に大雑把なヒューリスティックを使用して、古いキーを新しいキーで更新するスクリプトを作成することもできます。しかし、このプロセスが実際に正しく、実装を忘れたいくつかのEdgeケースのために、実際にだまされることができないことを本当に確信できますか?
セキュリティに関しては、100%の保証に基づいていない場合、自分で何かをすることは非常に悪いことです。 gpgは出力を変更したり、誰かが何らかのエクスプロイトを発明したりする可能性があります。どちらもスクリプトをだまして、そのようなものが存在しないIDを確認する可能性があります。
質問は完全に確信することについてではありませんでした。誰もDevuanをハッキングしていないことはすでに確信しているので、そこにある鍵は本物ですよね?しかし、私たちが取り除きたいこの汚い小さな不確実性はまだあります。したがって、私たちが知っている1つの不確実性(Devuanがハッキングされる可能性があることはわかっていますが、他の人はいつかそれを検出します)を誤った安全感に置き換えます(スクリプトが機能しているように見えるため、証明できないものに信頼を置きます未確認の仮定に基づいているので正しい)実際にはセキュリティが一歩後退しています!
あいまいで、証明されておらず、信頼性の低いスクリプトを追加して複雑さの基準を引き上げても、セキュリティには役立ちません。セキュリティは生きることができ、適用しやすいものです。複雑になりすぎると、セキュリティが失敗します。常に。

1
Tino