DotNet.Authorize/RSA/RSAHelper.cs

(开头部分) 6KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Security.Cryptography;
using System.Text;

namespace DotNet.Authorize
{
    public class RSAHelper
    {
        /// <summary>
        /// RSA密钥信息
        /// </summary>
        private static RSAKeyInfo _RSAKeyInfo;

        /// <summary>
        /// RSA的容器 可以解密的源字符串长度为 DWKEYSIZE/8-11 
        /// </summary>
        private const int DWKEYSIZE = 1024;

        public RSAHelper(RSAKeyInfo rsaKeyInfo)
        {
            _RSAKeyInfo = rsaKeyInfo;
        }

        /// <summary>
        /// 检查明文的有效性 DWKEYSIZE/8-11 长度之内为有效 中英文都算一个字符
        /// </summary>
        /// <param name="source"></param>
        /// <returns></returns>
        private bool CheckSourceValidate(string source)
        {
            return (DWKEYSIZE / 8 - 11) >= source.Length;
        }

        #region 授权码操作(最多允许43个汉字或者字符)

        /// <summary>
        /// RSA公钥加密
        /// </summary>
        /// <param name="Str"></param>
        /// <returns></returns>
        public string RSAEncryptWithPublicKey(string Str)
        {
            try
            {
                RSAUtils rsahd = new RSAUtils(_RSAKeyInfo);
                RSACryptoServiceProvider rsaprd1 = rsahd.CreateRSAEncryptProvider();
                byte[] data = new UnicodeEncoding().GetBytes(Str);
                byte[] endata = rsaprd1.Encrypt(data, true);
                return Convert.ToBase64String(endata);
            }
            catch (Exception ex)
            {
                return ex.ToString();
            }
        }

        /// <summary>
        /// RSA私钥解密
        /// </summary>
        /// <param name="Str"></param>
后面还有 137 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。