
アプリケーションによって生成された暗号化ファイルの形式を理解することに興味がありますデータガーディアン. 私の知る限り、パスワードの何らかの変換が「hexIdentifier」というフィールドに保存されています。奇妙だと思うのは、2 つのファイルを同じパスワードで保存すると、両方のファイルに同じ「hexIdentifier」文字列が含まれることです。私はこのアプリを宣伝しているわけではなく、会社と提携しているわけでもありません。アプリを評価しているところです。
答え1
私はなるだろうとても実際にパスワード (エンコードされているかどうかに関係なく) が暗号化ファイルに保存されていたら驚きます。そうすると、暗号に対する根本的な理解が欠如していることを示すことになるからです。その場合、暗号化ファイルを安全に保つ必要がある場合は、このソフトウェアを使用しないことを強くお勧めします。パスワードを保存する実用的な理由はありません。
たとえ低価格であっても、パスワードを保存するのであれば、使用すべき理由にはなりません。多くののその他のプログラムより安全で、さらに無料(実際、標準的なアーカイバ安全な暗号化機能を提供します(パスワードを保存せずに)。
Data Guardianに関しては、悪い知らせがあります。いくつかテストしてみましたが、あなたとAmazedさんの言う通りです。どうやらこのhexIdentifier
フィールドはパスワードに関係しているだけでなく、ハッシュでもなく、実際のパスワード!(エンコードされていますが、大きなアルファベットでもありません)。
同じファイルを、パスワードの長さが増加する (たとえば、1 文字、2 文字、3 文字など) 状態で何度も保存すると、フィールドは変化しますが、サイズは一定 (64 ビット) のままです。8 文字までは、フィールドは 128 ビットに変化し、9 文字から 16 文字になると、フィールドは 128 ビットに変化します。つまり、パスワードを 8 文字のブロックにチャンク (パディング?) してエンコードします。ハッシュであれば、パスワードの長さに関係なく、フィールドのサイズは一定になります。したがって、実際にはパスワード自体をエンコードして保存します。
プログラム フォルダーには、Blowfish ブロック暗号 (64 ビット ブロックを使用 - 上記の 64 ビット チャンクを覚えていますか?) を使用することを示す DLL があるため、パスワードはデータとともにそれを使用して暗号化されている可能性があります (ただし、同じストリームの一部としてではなく、データとは別に暗号化されるため、さらに脆弱になります)。
私は、逆アセンブラで開いたり、コードを 1 行も見ることなく、プログラム内テストを (同時にテレビを見ながら) 実行しただけで、アルゴリズムのいくつかの側面をすでに見つけ出しました。適切な動機を持つ人にとっては、これを完全に逆転させることはそれほど難しいことではないと思います。
まとめると、暗号化が必要な場合、Data Guardianは信頼性が十分ではありません(名前の意味を少し無視しています)。必要暗号化やデータが機密でない場合は、これで十分です(これは一般的な暗号化プログラムではなく、特殊な記録管理プログラムです)。そうでない場合は、セキュリティが必要な場合は、より強力な暗号化を備えた別の記録管理プログラムを探すか、通常のプログラム(またはData Guardian)を使用して、保存したファイルを一般的な暗号化プログラム(またはNTFS暗号化)。
また、開発者に連絡するより強力な暗号化を実装できるかどうか(Microsoftの標準暗号化APIでも)を尋ねます。[1][2][3][4]良いだろう;また暗号++Boost では追加できなかったため、これは一般的です。