50MBごとのように、大きなファイルの部分的な合計、合計5つの合計があります。
ハッシュサム全体、つまりファイルの SHA1sum を 5 つの合計だけから復元できるかどうか疑問に思っていました。出来ますか?もしそうなら、どのように?そうでない場合、なぜですか?
これを行うコードを C# で作成しようとしています。
いいえ、これは不可能です。
その理由は、衝突が発生する可能性があるためです。2 つの異なるデータが常に異なる SHA-1 ハッシュを与えるという保証はありません。それは非常にありそうもないです。
これは、ハッシュの生成に使用されたデータが非決定論的であることを意味するため、それが何であったかを確実に知ることはできず、元のデータを再構築することはできません. それをハッシュできるようにするために必要なこと。
部分合計からファイルの SHA-1 を計算することはできませんが、ファイルの SHA-1 を段階的に計算することはできます。この質問への回答を参照してください。