2017-11-03 3 views
-4

AES 128暗号化形式でデータを返す必要があるWebサービスを作成しようとしています。誰かが私を助けてください、どのように私はこれを達成することができます。AES 128 Encription in SQLSERVERまたはASP.Net

ありがとうございます。

+0

質問は? –

+1

あなたは何をしようとしていますか、独自のカスタム暗号化方式を実装してセキュリティを弱めようとしているのはなぜですか?どのように鍵を交換するつもりですか?あなたは何を保護しようとしていますか? *強力な*暗号化を使用し、すべての*クライアントで動作するTLS1.2でHTTPSを使用してみませんか? –

+0

AES128はフォーマットではなく、暗号化アルゴリズムです。その暗号化の結果はさまざまな形式で返すことができます。いずれにしても、「Webサービス」によってSOAPを意味する場合、WCFはすでにWS- *標準に準拠したセキュリティ機能を提供します。 –

答えて

-1
public class EncryptionAES128 
    { 
    static public string EncryptString(string inputString, string key) 
      { 
       string output = ""; 


       Rijndael encryption = new RijndaelManaged(); 

       try 
       { 
        encryption.IV = GenerateIV(); 
        encryption.Key = StringToByte(key); 

        ICryptoTransform encryptor = encryption.CreateEncryptor(encryption.Key, encryption.IV); 

        using (MemoryStream msEncrypt = new MemoryStream()) 
        { 
         using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)) 
         { 
          using (StreamWriter swEncrypt = new StreamWriter(csEncrypt)) 
          { 
           swEncrypt.Write(inputString); 
          } 

          byte[] cipherText = msEncrypt.ToArray(); 
          byte[] encrypted = new byte[cipherText.Length + encryption.IV.Length]; 

          encryption.IV.CopyTo(encrypted, 0); 
          cipherText.CopyTo(encrypted, IV_LENGTH); 

          output = ByteToString(encrypted); 
         } 
        } 
       } 
       catch (Exception ex) 
       { 
        throw ex; 
       } 


       return output; 
+0

このコードは何をする予定ですか?それはデータベースのデータを暗号化しません、それはTDEの仕事です。 Webサービスのレスポンスは暗号化されません。それはHTTPSとTLS1.2の仕事です。鍵はどこから来ますか? –

関連する問題