2

重複の可能性:
データベースにパスワードを保存するための推奨される方法

私の問題は、ここで説明した問題と似ています。データベースにパスワードを保存するための最良の方法

アプリケーションが使用するデータベースに外部FTPログインのパスワードを保存する必要があります。リンクされたトピックの解決策は、パスワードをハッシュしているため適用できません。

C#を使用してSQL Server 2008に接続しています。誰かがソリューションの例を持っていますか?パスワードを暗号化し、暗号化された形式で保存し、アプリケーションがパスワードを使用する場合は->復号化する必要があると思います。

4

2 に答える 2

2

パスワードを保存する最良の方法は強力なハッシュ関数を使用することですが、ここでの場合のように、暗号化されていない文字列をサードパーティのライブラリまたはサービスに渡す必要がある場合があります。

この場合、私は可能な限り最強の暗号(逆にできるように)アルゴリズムを使用します。
暗号化のニーズには、常によく知られた、信頼できる、十分にテストされたサードパーティのライブラリを使用してください。暗号化の分野の専門家でない限り、これを間違えるのは簡単ではありません。

バージョン2005以降、SQL Serverには組み込みのハッシュ関数(T-SQLで直接)が組み込まれているため、組み込みの暗号化関数も含まれている可能性があります。詳細と例については、T-SQL暗号化関数を参照してください。

FTPを使用する場合、FTPサイトがセキュアFTP(FTPS)またはFTP over SSHをサポートしているかどうかを確認する価値があります。これらは、同じ仕事をすることを除いて、FTPに関連しないSFTPとは異なることに注意してください。ウィキペディアのFTPを
参照してください。

于 2012-10-04T07:51:02.007 に答える
1

おそらく最良のバージョンは、パスを暗号化してデータベースに保存する場合です。アプリケーションがパスワードが正しいかどうかを確認する必要がある場合、保存されているパスワードを復号化しないでください。ただし、挿入されたパスワードを暗号化して、同じかどうかを確認する必要があります。 。

例の周りには多くの優れた暗号化アルゴリズムがあります:C#の単純で安全でない双方向の「難読化」

しかし、あなたはいつでもあなた自身を書くことができます、それはとても楽しいです...

于 2012-10-04T07:20:20.533 に答える