Himall.Core/Helper/SecureHelper.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;
using System.Text.RegularExpressions;
namespace Himall.Core.Helper
{
public class SecureHelper
{
private readonly static byte[] _aeskeys;
private static Regex _base64regex;
private static Regex _sqlkeywordregex;
static SecureHelper()
{
SecureHelper._aeskeys = new byte[] { 18, 52, 86, 120, 144, 171, 205, 239, 18, 52, 86, 120, 144, 171, 205, 239 };
SecureHelper._base64regex = new Regex("[A-Za-z0-9\\=\\/\\+]");
SecureHelper._sqlkeywordregex = new Regex("(select|insert|delete|from|count\\(|drop|table|update|truncate|asc\\(|mid\\(|char\\(|xp_cmdshell|exec|master|net|local|group|administrators|user|or|and|-|;|,|\\(|\\)|\\[|\\]|\\{|\\}|%|@|\\*|!|\\')", RegexOptions.IgnoreCase);
}
public SecureHelper()
{
}
public static string AESDecrypt(string decryptStr, string decryptKey)
{
string empty;
if (!string.IsNullOrWhiteSpace(decryptStr))
{
decryptKey = StringHelper.SubString(decryptKey, 32);
decryptKey = decryptKey.PadRight(32, ' ');
byte[] numArray = Convert.FromBase64String(decryptStr);
SymmetricAlgorithm bytes = Rijndael.Create();
bytes.Key = Encoding.UTF8.GetBytes(decryptKey);
bytes.IV = SecureHelper._aeskeys;
byte[] numArray1 = new byte[numArray.Length];
MemoryStream memoryStream = new MemoryStream(numArray);
try
{
CryptoStream cryptoStream = new CryptoStream(memoryStream, bytes.CreateDecryptor(), CryptoStreamMode.Read);
try
{
cryptoStream.Read(numArray1, 0, numArray1.Length);
cryptoStream.Close();
memoryStream.Close();
}
finally
{
if (cryptoStream != null)
{
((IDisposable)cryptoStream).Dispose();
}
}
}
finally
{
if (memoryStream != null)
后面还有 118 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
