ファイル (テキスト ファイルなど) を暗号化するアプリケーションを作成したい
アプリケーション (メモ帳など) がファイルを開こうとすると、アプリは要求を傍受し、復号化されたデータをアプリケーションに提供します。
メモ帳には、何が起こったのかわかりません。
問題は、どこから始めればよいかということです。
私は趣味のプログラマーとして 10 年以上の経験があり、C++ にも精通していますが、ビジュアル C++ は初めてです。
このような暗号化は、ファイル システム ミニフィルターファイル システム ミニフィルター ドライバーを使用して実装できます。これにより、すべてのファイル操作 (IRP) を傍受し、何をしたいのかを決定できます。これには暗号化を含めることができます。
ただし、ファイル データを変更する場合、処理が難しい状況がかなりあります (ページング IO、ダイレクト IO など)。また、ファイルのデータ サイズを透過的に変更すると、管理が非常に難しくなり、多くの問題が発生する可能性があります。そのため、暗号化/復号化するときにファイルのデータ サイズを変更しないようにしてください。
理解するには、IFS キットのドキュメントにある minispy と swapbuffers の例を参照してください。
ところで、これは VC++ ではありません。
基本的に、NTFS 暗号化を複製しているので、NTFS ファイル システム ドライバーから始めます。特に、暗号化されたファイルは「再解析ポイント」である必要があります。