プロジェクトに DLL ファイル (cf.dll) があります。ファイルへ/から文字列を暗号化および復号化するためのいくつかの方法があります。
私の「cf.dll」には、次のメソッドがいくつかあります。
write "mystring" ---to-->> 新しい暗号化された dll
と
暗号化された dll を読み取る ---to--->> "mystring"
プロジェクトを公開したいのですが、エンド ユーザーが私の dll を自分のビジュアル スタジオで (dll を参照して) 使用すると、暗号化されたファイルを復号化できます。
私のプロジェクトは時々彼らのメソッドを使用するため、公開されたプロジェクトでこのdllが必要です。
今私の質問は次のとおりです。 この公開されたdll(cf.dll)を参照のないdllに変更して、ハッキングを防ぐにはどうすればよいですか。
編集(詳細):
私がしたいこと:
いくつかの接続文字列を (DataTable として) ファイルに暗号化し、このファイルをもう一度読みたいと思います。
この作業を行うための dll ファイルがあります。cf.dllです。暗号化と復号化のためのいくつかの方法があります。
暗号化ワークフロー>
DatatTable ------to------>> Xml as String ------cf.dll メソッドによる to------>> enc.dll
復号化ワークフロー
enc.dll ------ cf.dll メソッドにより ------>> Xml as String ------to------>> DataTable
すべてが正常に機能し、暗号化されたファイル (enc.dll) が作成されます。
しかし、エンド ユーザーが私の魔法の DLL (cf.dll) を Visual Studio の新しいプロジェクトで (それを参照して) 使用すると、暗号化されたファイル (enc.dll) を解読し、プログラムをハッキングできます。
したがって、DLL (cf.dll) を非参照 DLL に変更するか、別の安全なソリューションを使用して、このハッキングを防止したいと考えています。
編集:
接続文字列データを保持するためのマイ テーブル列:
Server DbName DbUser DbPass FileName
しかし、この暗号化メカニズムによって別の DataTable を保存するようお願いしてもよろしいですか。ConnectionStringだけでなく、任意の文字列を保存するための解決策を教えてください。あらゆるデータから非常に安全な暗号化ファイルが必要です。私のソリューションでは、各オブジェクトを文字列に変換し、dll メソッドを使用して暗号化されたファイルとして保存します (上記で説明した問題をうまく処理できます)。