天天看點

aes iv key 微信_C#實作微信AES-128-CBC加密資料的解密

1.微信小程式登入擷取使用者的openid資訊

需要使用AES-128-CBC解密處理

///

/// ASE加解密

///

public class AESHelper

{

///

/// 秘鑰

///

public static string AesKey;

///

/// 16位初始向量

///

public static string AesIV;

///

/// AES解密

///

///

///

///

///

public static string AESDecrypt(string text)

{

try

{

//16進制資料轉換成byte

byte[] encryptedData = Convert.FromBase64String(text);  // strToToHexByte(text);

RijndaelManaged rijndaelCipher = new RijndaelManaged();

rijndaelCipher.Key = Convert.FromBase64String(AesKey); // Encoding.UTF8.GetBytes(AesKey);

rijndaelCipher.IV = Convert.FromBase64String(AesIV);// Encoding.UTF8.GetBytes(AesIV);

rijndaelCipher.Mode = CipherMode.CBC;

rijndaelCipher.Padding = PaddingMode.PKCS7;

ICryptoTransform transform = rijndaelCipher.CreateDecryptor();

byte[] plainText = transform.TransformFinalBlock(encryptedData, 0, encryptedData.Length);

string result = Encoding.Default.GetString(plainText);

return result;

}

catch (Exception ex)

{

throw ex;

}

}

}

測試代碼:

[csharp] view plain copy

AESHelper.AesIV = "r7BXXKkLb8qrSNn05n0qiA==";

AESHelper.AesKey = "tiihtNczf5v6AKRyjwEUhQ==";

string text =

"CiyLU1Aw2KjvrjMdj8YKliAjtP4gsMZM" +

"QmRzooG2xrDcvSnxIMXFufNstNGTyaGS" +

"9uT5geRa0W4oTOb1WT7fJlAC+oNPdbB+" +

"3hVbJSRgv+4lGOETKUQz6OYStslQ142d" +

"NCuabNPGBzlooOmB231qMM85d2/fV6Ch" +

"evvXvQP8Hkue1poOFtnEtpyxVLW1zAo6" +

"/1Xx1COxFvrc2d7UL/lmHInNlxuacJXw" +

"u0fjpXfz/YqYzBIBzD6WUfTIF9GRHpOn" +

"/Hz7saL8xz+W//FRAUid1OksQaQx4CMs" +

"8LOddcQhULW4ucetDf96JcR3g0gfRK4P" +

"C7E/r7Z6xNrXd2UIeorGj5Ef7b1pJAYB" +

"6Y5anaHqZ9J6nKEBvB4DnNLIVWSgARns" +

"/8wR2SiRS7MNACwTyrGvt9ts8p12PKFd" +

"lqYTopNHR1Vf7XjfhQlVsAJdNiKdYmYV" +

"oKlaRv85IfVunYzO0IKXsyl7JCUjCpoG" +

"20f0a04COwfneQAGGwd5oa+T8yO5hzuy" +

"Db/XcxxmK01EpqOyuxINew==";

string s = AESHelper.AESDecrypt(text);

Console.WriteLine(s);

标簽: 微信 C#

頂一下

(0)

0%

踩一下

(0)

0%