ダウンロードしたオープンソースファイルの完全性をどのようにチェックしますか?

私は自分のアプリケーションで使っているオープンソースプロジェクトが開発者がリリースしたものであることを確認したいと思います。私は、SHA1とMD5のダイジェストを持つプロジェクトが多いことに気付きました。おそらく、たとえば、ハッカーがミラー上のOrginial Zipファイルを置き換えて、.md5と.sha1を置き換えることができます。

私が依存しているサードパーティのオープンソースライブラリの完全性をチェックするにはどうすればよいですか?

1

3 答え

ハッカーがソースファイルとそのファイル(md5またはsh1)を変更する可能性があるので、これは信頼できる方法ではないと思います。彼は単にプロジェクト全体を別のものに置き換えることができます。 したがって、sourceforgやcode.google.comなどの信頼できるサイトやこれらのサイトで推奨されているコードプロジェクトやミラーからソースをダウンロードしてください。

2
追加された

通常はオープンソースプロジェクトですが、ダウンロードして変更することはできますが、実際にアップロードされたファイルを変更する機能はプロジェクトオーナーが管理する特定の個人に限られています。

良い例は https://github.com/thecodemine/formwizard です。この例では、唯一のリンクですが、承認されない限り直接変更することはできません。

However you can fork the project to your own account and modify as you wish, for example https://github.com/AlexKey/formwizard

私はまた、例えば、Linuxディストリビューションのような大規模なオープンソースプロジェクトを推測しています。公認された個人がアップロードしたコード/ファイルも、正式リリース前に厳格なレビューを行う予定です。

システムを腐敗させるハッカーは、自由にファイルを変更することができますが、これはオープンソースモデルの弱点ではありませんが、代わりにどのプロジェクトでも問題になる可能性があります。

また、コード署名のようなものは不正な変更を検出するのに役立ちます。

http://ja.wikipedia.org/wiki/Code_signing

コードの署名は、実行可能ファイルにデジタル署名するプロセスです。   ソフトウェアの作成者を確認し、コードが持つことを保証するためのスクリプト   それが使用されて署名されて以来、変更または壊れていない   暗号ハッシュ。

1
追加された
私の主な目標は、Tomcat、Spring ...などのオープンソースのJavaベースのプロジェクトの整合性をチェックすることです?
追加された 著者 ams,
こんにちは@ams、チェックアウト tomcat.apache.org/download-70.cgi#Release_Integrity tomcatがコード化されているようです(私は思います)。だから、MD5を使ってチェックサムだけを検証することはできません。しかし、公開鍵に対しても検証します。彼らは秘密鍵をしっかりロックしたままにしておくので、これは信頼性の高い検証方法になります。私は専門家ではない(私はいつも学んでいる)が、これは十分に信頼できるだろうが、私はいくつかの研究がコード署名のためのfortとagaintを示してくれると確信している。
追加された 著者 Alex KeySmith,

あなたはあなたの質問をGoogledしていない。あなたがそうするなら、あなたはそれについて多くのコンテンツを得るでしょう。以下のリンクは、ダウンロードしたファイルの整合性をチェックする方法を教えてくれます。

https://help.ubuntu.com/community/HowToMD5SUM

また、 .md5 .sh1 ファイルの変更や置き換えが非常に難しいことを示す次のリンクを確認することもできます。

Here's the link.

0
追加された
こんにちはhimanshu、私は@amsがMd5などを使用する方法を尋ねているとは思わないが、私は誰かが簡単にmd5ファイル自体を偽造できると思っていると思う。
追加された 著者 Alex KeySmith,