在C#中加密/解密DateTime对象或字符串的最佳方法?

时间:2014-01-27 17:01:00

标签: c# string datetime encryption

我尝试想出一种方法将DateTime对象加密为字符串对象,然后解密。

public string Encrypt(DateTime dt)
{
  string Encrypt = "";
  {
     //Encryption code here
  }

  return Encrypt;
}

public string Decrypt(string Input)
{
  DateTime Decrypt = new DateTime();
  {
     //Decryption code here
  }

  return Decrypt;
}

1 个答案:

答案 0 :(得分:2)

取决于您要执行的加密类型。 .NET有一些内置的辅助类,你只需要决定你想要使用哪种算法。 AES很棒:

Using AES encryption in C#

现在的问题是,如何将DateTime转换为byte [],以便加密?有几种方法。您可以将其转换为字符串并加密字符串,或者您可以使用.ToBinary方法来获取标记。该方法用于序列化DateTimes。

编辑:第一个链接显示使用Rijndael类,但也有一组AES类:

http://msdn.microsoft.com/en-us/library/system.security.cryptography.aesmanaged(v=vs.110).aspx