亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

c#多種加解密示例(md5加密解密)

2020-01-24 02:46:09
字體:
來源:轉載
供稿:網友

復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Security.Cryptography;
using System.Text;

/// <summary>
/// 加解密
/// </summary>
public static class CryptHelper
{
    #region RSA加密

    /// <summary>
    /// 用指定公鑰加密文本
    /// </summary>
    /// <param name="publicKey">公鑰</param>
    /// <param name="input">文本</param>
    /// <returns></returns>
    public static string RsaEncrypt(string publicKey, string input)
    {
        const string sFormat =
            "<RSAKeyValue><Modulus>{0}</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";
        var provider = new RSACryptoServiceProvider();
        var arrPubKey = Hex2Bytes(publicKey);
        var pkB64 = Convert.ToBase64String(arrPubKey);
        var xmlStr = string.Format(sFormat, pkB64);
        var bytesInput = Encoding.UTF8.GetBytes(input);
        provider.FromXmlString(xmlStr);
        var encryptArray = provider.Encrypt(bytesInput, false);
        var hexStr = BitConverter.ToString(encryptArray).Replace("-", "");
        return hexStr.ToLower();
    }

    #endregion

    #region 公用函數

    /// <summary>
    /// 將字節轉換成16進制數字
    /// </summary>
    /// <param name="bytes">字節數組</param>
    /// <returns></returns>
    public static string Bytes2Hex(byte[] bytes)
    {
        var buffer = new StringBuilder();
        foreach (var t in bytes)
        {
            buffer.AppendFormat("{0:x2}", t);
        }
        return buffer.ToString();
    }

    /// <summary>
    /// 將16進制數組轉換成字節
    /// </summary>
    /// <param name="input">16進制數組</param>
    /// <returns></returns>
    /// <exception cref="ArgumentOutOfRangeException"></exception>
    public static byte[] Hex2Bytes(string input)
    {
        if (string.IsNullOrEmpty(input)) return null;
        var offset = input.Length%2;
        if (offset == 1) input = "0" + input;
        int i;
        var list = new List<byte>();
        for (i = 0; i < input.Length; i += 2)
        {
            var temp = input.Substring(i, 2);
            byte bv;
            var success = byte.TryParse(temp, NumberStyles.HexNumber, null, out bv);
            if (!success) throw new ArgumentOutOfRangeException();
            list.Add(bv);
        }
        return list.ToArray();
    }

    #endregion

    #region SHA1加密

    /// <summary>
    /// SHA1加密 使用缺省密鑰給字符串加密
    /// </summary>
    /// <param name="sourceString"></param>
    /// <returns></returns>
    public static string Sha1Encrypt(string sourceString)
    {
        var data = Encoding.Default.GetBytes(sourceString);
        HashAlgorithm sha = new SHA1CryptoServiceProvider();
        var bytes = sha.ComputeHash(data);
        return BitConverter.ToString(bytes).Replace("-", "");
    }

    #endregion

    #region DES加解密

    /// <summary>
    /// DES加密
    /// </summary>
    /// <param name="pubKey"></param>
    /// <param name="input"></param>
    /// <returns></returns>
    public static string DesEncrypt(string pubKey, string input)
    {
        var des = new DESCryptoServiceProvider();
        var bytes = Encoding.UTF8.GetBytes(input);
        des.Key = Encoding.ASCII.GetBytes(pubKey);
        des.IV = Encoding.ASCII.GetBytes(pubKey);
        using (var ms = new MemoryStream())
        {
            using (var cryptoStream = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write))
            {
                cryptoStream.Write(bytes, 0, bytes.Length);
                cryptoStream.FlushFinalBlock();
            }
            var data = ms.ToArray();
            return BitConverter.ToString(data).Replace("-", "");
        }
    }

    /// <summary>
    /// DES解密
    /// </summary>
    /// <param name="pubKey"></param>
    /// <param name="input"></param>
    /// <returns></returns>
    public static string DesDecrypt(string pubKey, string input)
    {
        var des = new DESCryptoServiceProvider();
        var bytes = Hex2Bytes(input);
        des.Key = Encoding.ASCII.GetBytes(pubKey);
        des.IV = Encoding.ASCII.GetBytes(pubKey);
        using (var ms = new MemoryStream())
        {
            using (var cryptoStream = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write))
            {
                cryptoStream.Write(bytes, 0, bytes.Length);
                cryptoStream.FlushFinalBlock();
            }
            var data = ms.ToArray();
            return Encoding.UTF8.GetString(data);
        }
    }

    #endregion

    #region MD5加密

    /// <summary>
    /// MD5加密
    /// </summary>
    /// <param name="input">輸入</param>
    /// <returns></returns>
    public static string Md5Encrypt(string input)
    {
        MD5 md5 = new MD5CryptoServiceProvider();
        var data = Encoding.UTF8.GetBytes(input);
        var encs = md5.ComputeHash(data);
        return BitConverter.ToString(encs).Replace("-", "");
    }

    #endregion
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
www.亚洲天堂| 91国产一区在线| 成人www视频在线观看| 亚洲视频网站在线观看| 97视频在线播放| 欧美精品久久久久久久久久| 日韩在线视频二区| 欧美成人小视频| 日韩精品中文字幕在线观看| 国产成人黄色av| 国产精品成人观看视频国产奇米| 伊人激情综合网| 成人黄色生活片| 日韩av网址在线观看| 久久久久久久久久久久久久久久久久av| 一区二区av在线| 欧美极品在线视频| 亚洲精品在线91| 久热爱精品视频线路一| 国产a∨精品一区二区三区不卡| 91精品国产91久久| 成人在线小视频| 最新国产精品拍自在线播放| 欧美丝袜美女中出在线| 91成品人片a无限观看| 国产精品自产拍在线观| 国产中文字幕91| 久久这里有精品视频| 91精品国产91久久久久福利| 国产精品流白浆视频| 亚洲人成在线观| 欧美一级淫片aaaaaaa视频| 国产精品永久免费观看| 国产亚洲福利一区| 亚洲福利视频网站| 欧美亚洲国产另类| 欧美日本高清一区| 九九九热精品免费视频观看网站| 久久久国产一区| 日韩经典中文字幕在线观看| 一区二区欧美久久| 欧美制服第一页| 成人免费视频网址| 国产一区二区三区在线观看网站| 亚洲男人天堂九九视频| 亚洲mm色国产网站| 国产一区二区三区在线播放免费观看| 欧美精品日韩www.p站| 成人在线播放av| 亚洲精品久久久久| 亚洲一区二区久久久| 久久久免费观看| 国产精品久久99久久| 日韩视频亚洲视频| 亚洲第一区第一页| 在线丨暗呦小u女国产精品| 精品久久久一区二区| 国产成人精品在线| 欧美亚洲成人精品| 欧美国产日韩一区二区三区| 欧美日韩免费一区| 国产亚洲欧美日韩美女| 国产亚洲欧洲在线| 最近2019年中文视频免费在线观看| 97国产精品视频人人做人人爱| 4438全国亚洲精品在线观看视频| 欧美成人一区在线| 97视频在线观看免费高清完整版在线观看| 欧美大肥婆大肥bbbbb| 久久久久久久久综合| 亚洲第一偷拍网| 亚洲香蕉成视频在线观看| 日韩专区中文字幕| 亚洲福利在线视频| 韩国三级日本三级少妇99| 久久精品人人做人人爽| 国产丝袜一区视频在线观看| 久久久久国产精品www| 色妞色视频一区二区三区四区| 久热爱精品视频线路一| 欧美在线视频免费观看| www.亚洲一区| 另类天堂视频在线观看| 91高清视频免费| 亚洲精选中文字幕| 欧美激情一区二区三区久久久| 日韩精品免费在线观看| 色综合老司机第九色激情| 欧美在线视频观看| 91国内免费在线视频| 国产极品jizzhd欧美| 久久久久久久久久久久av| 亚洲石原莉奈一区二区在线观看| 亚洲视频在线观看免费| 一区二区欧美久久| 一区二区亚洲精品国产| 一区二区三区视频免费| 亚洲人成网在线播放| 国产99久久精品一区二区 夜夜躁日日躁| 亚洲天堂av综合网| 日韩免费在线看| 国模精品视频一区二区| 国产精品久久久久7777婷婷| 亚洲视频777| 欧美日韩国产丝袜美女| 久久久久久尹人网香蕉| 91av免费观看91av精品在线| 激情成人中文字幕| 精品国产一区二区三区久久狼黑人| 欧美裸体xxxx极品少妇| 日韩欧美中文字幕在线观看| 国产精品美女999| 亚洲欧美日韩国产中文| 国外成人在线直播| 亚洲精品久久视频| 中文字幕欧美视频在线| 日韩不卡在线观看| 欧美性xxxxx极品| 97人人做人人爱| 久久青草福利网站| 精品亚洲精品福利线在观看| 亚洲摸下面视频| 精品欧美aⅴ在线网站| 国产女精品视频网站免费| 中日韩午夜理伦电影免费| 永久免费毛片在线播放不卡| 国产69精品99久久久久久宅男| 疯狂欧美牲乱大交777| 国产欧美精品久久久| 亚洲tv在线观看| 91精品国产综合久久男男| 在线视频中文亚洲| 国产精品美女视频网站| 亚洲va码欧洲m码| 亚洲人精品午夜在线观看| 国产深夜精品福利| 97香蕉久久夜色精品国产| 九九久久久久久久久激情| 久久伊人91精品综合网站| 亚洲欧美激情在线视频| 亚洲午夜未满十八勿入免费观看全集| 中文字幕久精品免费视频| 久久躁狠狠躁夜夜爽| 国产精品一区二区三区成人| 久久久久久成人精品| 久久久久亚洲精品国产| 国产精品成人播放| 国产精品国产亚洲伊人久久| 日韩欧美一区二区三区久久| 国产精品成人一区二区三区吃奶| 久久精品视频在线| 精品国产一区二区在线| 中文字幕最新精品| 欧美激情在线观看| 久久久久久久久久久网站| 国产精品九九久久久久久久| 日韩中文字幕国产精品| 日韩在线观看免费| 国产一区二区三区在线看| 欧美精品18videosex性欧美| 亚洲精品狠狠操| 国产精品亚洲片夜色在线| 亚洲一品av免费观看| 成人免费视频在线观看超级碰|