System.EncryptHelper.EncryptStr C# (CSharp) Method

EncryptStr() public static method

加密(可逆,不固定)
public static EncryptStr ( this str, string key = "s?]8!sj;d" ) : string
str this this
key string 秘钥
return string
        public static string EncryptStr(this string str, string key = "s?]8!sj;d")
        {
            var des = DES.Create();

            // var timestamp = DateTime.Now.ToString("HHmmssfff");
            var inputBytes = Encoding.UTF8.GetBytes(MixUp(str));
            var keyBytes = Encoding.UTF8.GetBytes(key);
            SHA1 ha = new SHA1Managed();
            var hb = ha.ComputeHash(keyBytes);
            var sKey = new byte[8];
            var sIv = new byte[8];
            for (var i = 0; i < 8; i++)
                sKey[i] = hb[i];
            for (var i = 8; i < 16; i++)
                sIv[i - 8] = hb[i];
            des.Key = sKey;
            des.IV = sIv;
            using (var ms = new MemoryStream())
            {
                using (var cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write))
                {
                    cs.Write(inputBytes, 0, inputBytes.Length);
                    cs.FlushFinalBlock();
                    var ret = new StringBuilder();
                    foreach (var b in ms.ToArray())
                    {
                        ret.AppendFormat("{0:X2}", b);
                    }

                    return ret.ToString();
                }
            }
        }