【问题标题】:AES 128 Encription in SQLSERVER OR ASP.NetSQL SERVER 或 ASP.Net 中的 AES 128 加密
【发布时间】:2017-11-03 10:28:37
【问题描述】:

我正在尝试创建一个需要以 AES 128 加密格式返回数据的 Web 服务。有人请帮助我,我怎样才能做到这一点。

提前致谢。

【问题讨论】:

  • 问题是?
  • 您想做什么以及为什么要通过实施您自己的自定义加密方案来削弱安全性?你打算如何交换密钥?你想保护什么?为什么不将 HTTPS 与使用 更强 加密并与 每个 客户端一起使用的 TLS1.2 一起使用?
  • AES128 不是一种格式,它是一种加密算法。该加密的结果可以以各种格式返回。无论如何,如果web services 是指 SOAP,WCF 已经提供了符合 WS-* 标准的安全功能。

标签: c# asp.net sql-server-2008


【解决方案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;

【讨论】:

  • 这段代码应该做什么?它不会加密数据库中的数据,这是 TDE 的工作。它不会加密 Web 服务的响应,这是 HTTPS 和 TLS1.2 的工作。钥匙从哪里来?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-25
  • 1970-01-01
  • 1970-01-01
  • 2019-04-18
  • 2013-08-24
  • 2013-01-16
相关资源
最近更新 更多