RMS.Common/Tools/CipherManager.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
namespace RMS.Common
{
public class CipherManager
{
private const string defaultKey = "rms"; //默认密钥
private static byte[] GetKey(string strKey = defaultKey)
{
byte[] arrBTmp = Encoding.UTF8.GetBytes(strKey);
// 创建一个空的8位字节数组(默认值为0)
byte[] arrB = new byte[8];
// 将原始字节数组转换为8位
for (int i = 0; i < arrBTmp.Length && i < arrB.Length; i++)
{
arrB[i] = arrBTmp[i];
}
return arrB;
}
/// <summary>
/// DES编码 密钥加密
/// </summary>
/// <param name="text">加密内容</param>
/// <param name="key">密钥</param>
/// <returns></returns>
public static string DESEncode(string text, string key = defaultKey)
{
try
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
byte[] inputByteArray = Encoding.UTF8.GetBytes(text);
des.Key = GetKey(key);
des.IV = des.Key;
des.Mode = CipherMode.ECB;
des.Padding = PaddingMode.PKCS7;
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
using (CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write))
{
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
StringBuilder ret = new StringBuilder();
foreach (byte b in ms.ToArray())
{
ret.AppendFormat("{0:x2}", b);
}
return ret.ToString();
}
}
}
catch (Exception ex)
{
throw ex;
后面还有 37 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。