私は、.Net4とMVC3以上の私の学生プロジェクトに取り組んでいます。 接続文字列などの設定ファイルに保存するためのエンコード/デコード情報などのセキュリティ機能を除いて、プロジェクトはほぼ終了しています。.NETで暗号化技術を強力かつ簡単に実装できますか?
非常に複雑なソリューションを避けたいので、使いやすい暗号化を探しています。私はちょうどKEYとStringを提供することができ、エンコードされたテキストを返すことができます(以下のBase64の例に似ています)。
私はMSDNのSystem.Security.Cryptography名前空間のドキュメントをオンラインで見ましたが、それは私のような初心者のための多くのオプションがあります。
私はそれを達成するための提案と方法を教えてください。 ありがとうございます。
static public string EncodeTo64(string toEncode)
{
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
string encodedValue = System.Convert.ToBase64String(toEncodeAsBytes);
return encodedValue;
}
static public string DecodeFrom64(string toDecode)
{
var toDecodeAsString = System.Convert.FromBase64String(toDecode);
string decodedValue = System.Text.ASCIIEncoding.ASCII.GetString(toDecodeAsString);
return decodedValue;
}
は細かい動作しますが、問題は、私の知る限り、この理解きたようであるとして、非常に信頼性の高いものではありません。検索中
は、私はこのように実装Base64での簡単な解決策を見つけましたスタティックエンコーディング技術(カスタムKEYなしのもの)は簡単にデコードでき、多くのオンラインベースの64個のデコーダがネット上で利用可能です。私もAES as expalined hereと仕事をしようとしましたが、成功しませんでした。 最大簡単にするためにここに
Base64は暗号化されていないため、エンコードしています。深刻な暗号プリミティブを実装しようとする前に、その違いを知る必要があります。とにかく、真の答えは、実装するのが簡単な暗号はないということです。強力な暗号とシンプルさは、定義によってほぼ排他的です。 – Polynomial
何を暗号化しようとしていますか?ユーザーのコンテンツまたは構成データ –
** Encoding **と** Encrypting **を混同しないように注意してください。最初はセキュリティとは関係ありません。 – Strillo