using System;
using System.Security.Cryptography;
using System.Text;
namespace Masuit.Tools.Security
{
///
/// 得到随机安全码(哈希加密)。
///
public static class HashEncode
{
///
/// 得到随机哈希加密字符串
///
/// 随机哈希加密字符串
public static string GetSecurity(this Random r) => HashEncoding(r.StrictNext().ToString());
///
/// 哈希加密一个字符串
///
/// 需要加密的字符串
/// 加密后的数据
public static string HashEncoding(this string security)
{
var code = new UnicodeEncoding();
byte[] message = code.GetBytes(security);
using var arithmetic = new SHA512Managed();
var value = arithmetic.ComputeHash(message);
var sb = new StringBuilder();
foreach (byte o in value)
{
sb.Append((int)o + "O");
}
return sb.ToString();
}
}
}