HKEY_LOCAL_MACHINE (HKLM) に安全なデータを書き込む必要がある Windows exe があります。また、その安全なデータを読み取る必要がある NetworkService アカウントとして実行されているサービスもあります。exe とサービスは別のユーザーとして実行されることに注意してください。
ここでの問題は、データの保護にあります。私はCryptProtectDataを試しましたが、 NetworkService アカウントを使用してデータが暗号化されていないため、サービスが復号化できないという問題があります。CryptProtectData を呼び出すときに CRYPTPROTECT_LOCAL_MACHINE フラグを使用したくありません。これは、任意のユーザーが暗号化を解除でき、本質的に安全でなくなるためです。
これは一般的なユースケースだと思いますが、解決策が見つかりません。アイデアはありますか?
参考までに、ビジュアル C++ を使用して exe とサービスを記述しています。