既知の問題点

### PAR クライアントのエラー

作成や検査や修復などでコンソール・アプリケーションの動作時にエラーが発生した場合は、 「Error : 何々〜」のように表示されます。 コンソール・アプリケーションがエラー終了すると設定に関係なく 出力内容がログに書き込まれるので、それを参考にして問題を解決します。 だいたいは「メモリーが足りない」とか「ファイルの読み書きができない」 とかいったユーザー側の環境に依存するエラーが多いだろうと思います。

メモリーが足りない場合は、ブロック数を減らすか、パソコンにメモリーを増設してください。 ファイルが存在するドライブやメディアが書込み不可だとそこでは修復できないので、 HDD などの書き込み可能なドライブにコピーしてから修復を試みてください。 大きなファイルを修復する際には、HDD の空き容量にも注意してください。 ファイルを開いたり修復したりできない時は、 他のアプリケーションや OS がファイルへのアクセスを邪魔してるかもしれません。 他のを閉じて、自分の権限を確認してください。 システム・ファイルなど OS が保護してるファイルは、別の場所にコピーしてから修復して、 OS を起動する前に元の場所に戻すなどの工夫が必要です。

「checksum mismatch」というエラーが発生した場合は、 パソコン (メモリーや CPU) が故障してるか高温で不安定になってます。 オーバー・クロックしてるなら適正値に戻してください。 MultiPar の設定で CPU 使用率を下げたり、拡張機能を無効にしてみてください。 GPU を使ってエラーが発生した時は、GPU を使わない設定にしてください。

### ハッシュ値の衝突

PAR 仕様では、破損したファイルのハッシュ値が、 破損する前の本来のファイルのハッシュ値と偶然同じになってしまうと、 そのファイルが破損してると認識できません。 これは厄介な問題で、PAR では破損してないファイルを修復時の計算で使うので、 破損してるのに破損してると認識できないと、正しく復元することができません。 修復を試みてもまだ破損してると判定された場合は、 完全だと判定されたソース・ファイルが破損してないかを別のハッシュ値などで確かめてください。

PAR のハッシュ値は MD5 で計算されてるので、 偶然のエラーで破損したファイルのハッシュ値が一致することは普通は無いでしょう。 ちなみに、PAR 1.0 では MD5 だけですが、 PAR 2.0 では MD5 と CRC-32 の両方で確認するので、 破損を見逃す可能性は更に低いです。 ただし、悪意のある人がハッシュ値を同じに保ったままファイル内容を改竄した場合は、 その意図的な破損を検出することはできません。

### PAR 1.0 仕様の問題点

PAR 1.0 では、同じ内容のファイルが複数あると、それらをハッシュ値では識別できません。 同じ内容のファイルが二個あって、その片方の名前が異なり片方が消失してる場合は、 実際には片方しか名前を変更できず、もう片方は消失扱いになるので、 修復にはリカバリ・ブロックが必要になってしまいます。 ユーザーの方でファイルの内容が同じだとわかってる場合は、 リカバリ・ファイルから修復するより単純に片方をコピーした方が速いです。

### PAR 1.0 & 2.0 仕様の欠陥

PAR 1.0 と PAR 2.0 はリカバリ・データの生成行列に欠陥があります。 そのため、破損したブロックとそれを復元するリカバリ・ブロックの組み合わせによっては、 修復に失敗することがあります。 このエラー (逆行列を計算できない) はめったに発生しないのですが、 QuickPar のユーザーから何件か報告されています。 MultiPar の PAR 2.0 では自動的に別のリカバリ・ブロックを使って再計算するので、 このエラーを目にすることは QuickPar よりも少ないはずです。