42 lines
1.2 KiB
C#
42 lines
1.2 KiB
C#
using System;
|
|
using System.IO;
|
|
using System.Security.Cryptography;
|
|
using System.Text;
|
|
|
|
public static class CryptoUtility
|
|
{
|
|
private static readonly string key = "1234567890123456";
|
|
|
|
|
|
public static string Encrypt(string plainText)
|
|
{
|
|
byte[] keyBytes = Encoding.UTF8.GetBytes(key);
|
|
using Aes aes = Aes.Create();
|
|
aes.Key = keyBytes;
|
|
aes.IV = keyBytes;
|
|
|
|
using MemoryStream ms = new MemoryStream();
|
|
using CryptoStream cs = new CryptoStream(ms, aes.CreateEncryptor(), CryptoStreamMode.Write);
|
|
using (StreamWriter sw = new StreamWriter(cs))
|
|
{
|
|
sw.Write(plainText);
|
|
}
|
|
|
|
return Convert.ToBase64String(ms.ToArray());
|
|
}
|
|
|
|
public static string Decrypt(string encryptedText)
|
|
{
|
|
byte[] keyBytes = Encoding.UTF8.GetBytes(key);
|
|
using Aes aes = Aes.Create();
|
|
aes.Key = keyBytes;
|
|
aes.IV = keyBytes;
|
|
|
|
byte[] buffer = Convert.FromBase64String(encryptedText);
|
|
|
|
using MemoryStream ms = new MemoryStream(buffer);
|
|
using CryptoStream cs = new CryptoStream(ms, aes.CreateDecryptor(), CryptoStreamMode.Read);
|
|
using StreamReader sr = new StreamReader(cs);
|
|
return sr.ReadToEnd();
|
|
}
|
|
} |