【解決方法】C#でファイルがパスワードで保護されているかどうかを確認するにはどうすればよいですか


how can we check any file is password protect or not in c#

私が試したこと:

試してみましたが、ファイルタイプを指定する必要がありますが、Excel CSV Wordまたは任意のファイルをチェックしたいと考えています

解決策 1

できません。パスワードで保護されたデータは暗号化されており (そうでなければ、アクセスするのにパスワードは必要ありません)、正しいパスワードがなければ単なる乱数のように見えます。これはまさにランダム データ ファイルと同じです。 はい、「これはテキスト ファイルです」と言うことがあり、そこから「ああ、これは CSV データです」または「これは JSON です」と言えるかもしれません。しかし、テキスト ファイルであっても、キリル文字、韓国語、中国語で書かれている場合はランダムなデータのように見えることがあります。 、アラビア語、…リストは続きます。 また、EXE ファイル、DLL、画像、音楽、ビデオなどのバイナリ データも、実際のデータ形式またはそれぞれの形式 (おそらくそれぞれ数十の異なる種類がある) を理解していないと、非常にランダムに見える可能性があります。 次に、独自のデータ形式にたどり着きます。形式の詳細は公開されていない可能性があるため、ランダムなデータのように見え、暗号化される場合とされない場合があります。

さらに悪いことに、Excel と Word はパスワード保護をサポートしているだけでなく、最新の圧縮 XML ベースのファイル (保護されていないとしても、一見すると非常にランダムに見えます) をサポートしているだけでなく、古い独自のバイナリ形式もサポートしています。

あなたが達成しようとしていることを再考して、そこに到達するための別の方法を見つけるか、検出する必要があるものの範囲を制限することができます。これはおそらく現在の形式では成功しないでしょう。

コメント

タイトルとURLをコピーしました