0

アプリケーションがあります。その名前とロゴは、同じディレクトリ内のTXTファイルとPNGファイルから直接変更できます。

次のことを行う別のアプリケーションからロゴとテキストファイルを変更する機能をユーザーに提供したいと思います。

Takes the Logo.png , Name.txt file paths and the directory of my Software then encrypt these two files and put them in the Directory of the Software

その一方で。ソフトウェアは、これら2つのファイルを復号化し、ハードディスクの一時ディレクトリに書き込んでから、名前とロゴを表示するために使用します。

私はファイルを暗号化する最も簡単で簡単な方法を探しました、そして私は見つけました:

MSDNから:

File.Encrypt(): Encrypts a file so that only the account used to encrypt the file can decrypt it.

「ファイルの暗号化に使用されたアカウントのみがファイルを復号化できる」とはどういう意味ですか?

Computer1からApplication1でアプリケーションを暗号化すると、ファイルはApplication2のComputer2で復号化されます。

暗号化は正しく機能しますか?



編集:
これら2つのファイルを暗号化する必要がある理由は、ユーザーがディレクトリからロゴとアプリケーションの名前を直接変更しないようにするためです。

4

3 に答える 3

4

これによりファイルは暗号化されますが、期待どおりではありません。また、別のコンピューター上の別のアプリケーション/ユーザーが復号化できるようになることはほぼ間違いありません。

このEncryptメソッドは基本的に、基盤となるNTFSドライバーの機能を切り替えて、ファイルシステム自体で指定されたファイルを暗号化します。優れた機能は、(通常)ユーザーにシームレスなファイル暗号化を提供することですが、実際には移植性のある暗号化ではありません。これは、ファイルのプロパティを開き、詳細ボタンをクリックして[暗号化]チェックボックスを選択するのと同じです。

NTFSの暗号化機能の詳細については、http ://technet.microsoft.com/en-us/library/bb457116.aspxを参照してください。

高度なファイルプロパティ

于 2013-02-19T16:07:47.167 に答える
1

いいえ。System.Security.Cryptography名前空間などの適切な暗号化方法を使用する必要があります。これには、CryptoStreamと呼ばれるストリーム実装もあります。これは、ファイルを暗号化するためにFileStreamをラップすることができます。

于 2013-02-19T16:02:47.353 に答える
1

これは、WindowsのEFSに関連しています。

ファイル、[プロパティ]、[詳細]、[コンテンツの暗号化]を右クリックして、Windowsエクスプローラーから試すことができます。ファイルデータは、アプリがアクセスすると、その場で自動的に復号化/暗号化されます。ただし、別のユーザーがマシンにログインしてファイルをコピーすると、暗号化はユーザートークンに基づいているため、暗号化されているように見えます。

これはあなたが望むものであるかもしれないし、そうでないかもしれません、そしてそれはその機能のあなたの意図された使用に依存します。ユーザーがアプリの外部でデータを変更できないようにする場合は、それだけでは不十分です。

于 2013-02-19T16:03:13.867 に答える