RijndaelManaged rm = new RijndaelManaged();
?private void Awake() ? ? { ? ? ? ? rm.BlockSize = 128; ? ? ? ? rm.KeySize = 256; ? ? ? ? rm.FeedbackSize = 128; ? ? ? ? rm.Padding = PaddingMode.PKCS7; ? ? ? ? rm.Mode = CipherMode.CBC;
? ? ? ? rm.Key = (new SHA256Managed()).ComputeHash(Encoding.ASCII.GetBytes("2b58592aab597b16c0e04477")); ? ? ? ? rm.IV = Encoding.ASCII.GetBytes("8d3affe547824a710817ccd46f"); ? ? }
? ??
? ? //加密 ? ? public string AESEncrypt(string msg) ? ? { ? ? ? ? ICryptoTransform encryptor = rm.CreateEncryptor(rm.Key, rm.IV); ? ? ? ? byte[] _bytes; ? ? ? ? using (MemoryStream ms = new MemoryStream()) ? ? ? ? { ? ? ? ? ? ? using (CryptoStream csEncrypt = new CryptoStream(ms, encryptor, CryptoStreamMode.Write)) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? using (StreamWriter sw = new StreamWriter(csEncrypt)) ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? sw.Write(msg); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? _bytes = ms.ToArray(); ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? return Convert.ToBase64String(_bytes); ? ? }
? ? //解密 ? ? public string AESDecrtpt(byte[] msg) ? ? { ? ? ? ? ICryptoTransform ict = rm.CreateDecryptor(rm.Key, rm.IV);
? ? ? ? string backString; ? ? ? ? using (MemoryStream ms = new MemoryStream(msg)) ? ? ? ? { ? ? ? ? ? ? using (CryptoStream cs = new CryptoStream(ms, ict, CryptoStreamMode.Read)) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? using (StreamReader sr = new StreamReader(cs)) ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? backString = sr.ReadToEnd(); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? return backString; ? ? }
|