Example #1
0
        public KeyValuePair <byte[], byte[]> SecretGetTest([PexAssumeUnderTest] TripleDes target)
        {
            KeyValuePair <byte[], byte[]> result = target.Secret;

            return(result);
            // TODO: add assertions to method TripleDesTest.SecretGetTest(TripleDes)
        }
Example #2
0
        public ActionResult CryptoEncrypted(HttpPostedFileBase upload1, string key, string algoritm)
        {
            var baseLocation = Server.MapPath("~/Files/");

            var fileName1     = GetUniqueFileName(upload1.FileName);
            var fileLocation1 = Path.Combine(baseLocation, fileName1);

            upload1.SaveAs(fileLocation1);

            StreamReader sr   = new StreamReader(fileLocation1, Encoding.Default);
            string       text = sr.ReadToEnd();

            if (algoritm == "AES")
            {
                text = Crypto.EncryptStringAES(text, key);
            }
            else if (algoritm == "TripleDES")
            {
                text = TripleDes.Encrypt <TripleDESCryptoServiceProvider>(text, key);
            }
            else if (algoritm == "Rijndael")
            {
                text = TripleDes.Encrypt <RijndaelManaged>(text, key);
            }

            var baseLocationResult = Server.MapPath("~/Text/");
            var fileNameRes        = GetUniqueFileName("res.txt");
            var fileLocationRes    = Path.Combine(baseLocationResult, fileNameRes);

            System.IO.File.AppendAllText(fileLocationRes, text, Encoding.Default);
            TempData["FileLocationRes"] = fileLocationRes;
            return(RedirectToAction("PreviewCryptoEn"));
        }
Example #3
0
        public TripleDes ConstructorTest02(byte[] key, byte[] iv)
        {
            TripleDes target = new TripleDes(key, iv);

            return(target);
            // TODO: add assertions to method TripleDesTest.ConstructorTest02(Byte[], Byte[])
        }
Example #4
0
        public string EncryptTest([PexAssumeUnderTest] TripleDes target, string value)
        {
            string result = target.Encrypt(value);

            return(result);
            // TODO: add assertions to method TripleDesTest.EncryptTest(TripleDes, String)
        }
Example #5
0
        public TripleDes ConstructorTest01(KeyValuePair <byte[], byte[]> secret)
        {
            TripleDes target = new TripleDes(secret);

            return(target);
            // TODO: add assertions to method TripleDesTest.ConstructorTest01(KeyValuePair`2<Byte[],Byte[]>)
        }
Example #6
0
        public TripleDes ConstructorTest()
        {
            TripleDes target = new TripleDes();

            return(target);
            // TODO: add assertions to method TripleDesTest.ConstructorTest()
        }
        private XmlNode EncryptDecrypt(bool encrypt, XmlNode node)
        {
            string data;

            using (var tripleDes = new TripleDes(_secret))
            {
                data = encrypt
                           ? tripleDes.Encrypt(node.OuterXml)
                           : tripleDes.Decrypt(node.InnerText);
            }
            var xmlDoc = new XmlDocument
            {
                PreserveWhitespace = true
            };

            string value = data;

            if (encrypt)
            {
                const string encryptedDataTag = "EncryptedData";
                value = string.Format(CultureInfo.InvariantCulture, Constants.XmlTag, encryptedDataTag, data);
            }

            xmlDoc.LoadXml(value);
            // ReSharper disable once AssignNullToNotNullAttribute
            return(xmlDoc.DocumentElement);
        }
Example #8
0
 public void Open()
 {
     if (sqlConnection == null)
     {
         sqlConnection = new SqlConnection(TripleDes.Decrypt(CommonObjects.GetConnectionString()));
         sqlConnection.Open();
         sqlTransaction = sqlConnection.BeginTransaction();
     }
 }
Example #9
0
        private void UserLogin()
        {
            wapp.SysConfig.atUser = new wapp.SysUser();
            string Name = cBName.Text.Trim();

            if (Name == "")
            {
                WinOften.MessShow("用户名不能为空!", 1);
                return;
            }
            string Pwd = tPwd.Text.Trim();

            if (Pwd == "")
            {
                WinOften.MessShow("密码不能为空!", 1);
                return;
            }
            if (wapp.UserList.UsersTable.Rows.Count <= 0)
            {
                wapp.SysUser su = new wapp.SysUser();
                su.UserName   = "******";
                su.UserPwd    = "123456";
                su.RealName   = "admin";
                su.Phones     = "";
                su.ManageLv   = 60;
                su.LoginCount = 1;
                su.LoginDate  = DateTime.Now;
                wapp.UserList.SaveUsersTable(su);
            }
            string ePwd = TripleDes.DesEn(Pwd, wapp.AppList.DeKey).Trim();

            DataRow[] udrs = wapp.UserList.UsersTable.Select("UserName='******' and UserPwd='" + ePwd + "'");
            if (udrs.Length > 0)
            {
                wapp.SysConfig.atUser.UserName   = udrs[0]["UserName"].ToString().Trim();
                wapp.SysConfig.atUser.UserPwd    = Pwd;
                wapp.SysConfig.atUser.ManageLv   = Convert.ToInt32(udrs[0]["ManageLv"]);
                wapp.SysConfig.atUser.RealName   = udrs[0]["RealName"].ToString().Trim();
                wapp.SysConfig.atUser.Phones     = udrs[0]["Phones"].ToString().Trim();
                wapp.SysConfig.atUser.LoginCount = Convert.ToInt32(udrs[0]["LoginCount"]) + 1;
                wapp.SysConfig.atUser.LoginDate  = DateTime.Now;
                wapp.UserList.SaveUsersTable(wapp.SysConfig.atUser);
                SaveUserConfig();
            }
            if (wapp.SysConfig.atUser.ManageLv == 0)
            {
                WinOften.MessShow("用户名或密码错误!", 1);
                return;
            }
            else
            {
                this.Hide();
                ShowFrm();
            }
        }
Example #10
0
        /// <summary>
        ///  解密
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static string DecrypString(string str)
        {
            if (string.IsNullOrEmpty(str))
            {
                return(string.Empty);
            }

            TripleDes l = new TripleDes();

            return(l.Decode(str));
        }
Example #11
0
        /// <summary>保存用户配置信息</summary>
        /// <param name="uc">用户信息</param>
        public static void SaveSysConfig(UserConfig uc)
        {
            string ulpath = wapp.AppList.SaveConfigPath + UserLoginTable.TableName + ".xml";
            string ucpath = wapp.AppList.SaveConfigPath + UserConifgTable.TableName + ".xml";

            if (File.Exists(ulpath))
            {
                File.Delete(ulpath);
            }
            if (File.Exists(ucpath))
            {
                File.Delete(ucpath);
            }
            for (int i = 0; i < UserLoginTable.Rows.Count; i++)
            {
                UserLoginTable.Rows[i]["IsUser"] = 0;
            }
            if (uc.UserName != "")
            {
                string    pwd = TripleDes.DesEn(uc.UserPwd.Trim(), wapp.AppList.DeKey).Trim();
                DataRow[] dr  = UserLoginTable.Select("UserName='******'");
                if (dr.Length > 0)
                {
                    dr[0]["UserPwd"] = pwd;
                    dr[0]["IsUser"]  = 1;
                }
                else
                {
                    DataRow newRow = UserLoginTable.NewRow();
                    newRow["UserName"] = uc.UserName;
                    newRow["UserPwd"]  = pwd;
                    newRow["IsUser"]   = 1;
                    UserLoginTable.Rows.Add(newRow);
                }
                DataRow[] drc = UserConifgTable.Select("UserName='******'");
                if (drc.Length > 0)
                {
                    drc[0]["IsSave"]    = uc.IsSave;
                    drc[0]["AutoStat"]  = uc.AutoStat;
                    drc[0]["AutoLogin"] = uc.AutoLogin;
                }
                else
                {
                    DataRow newRow = UserConifgTable.NewRow();
                    newRow["UserName"]  = uc.UserName;
                    newRow["IsSave"]    = uc.IsSave;
                    newRow["AutoStat"]  = uc.AutoStat;
                    newRow["AutoLogin"] = uc.AutoLogin;
                    UserConifgTable.Rows.Add(newRow);
                }
            }
            UserLoginTable.WriteXml(ulpath, XmlWriteMode.WriteSchema);
            UserConifgTable.WriteXml(ucpath, XmlWriteMode.WriteSchema);
        }
Example #12
0
        public ActionResult  Encrypted(HttpPostedFileBase upload1, HttpPostedFileBase upload2, string key, string algoritm)
        {
            var baseLocation = Server.MapPath("~/Files/");

            var fileName1     = GetUniqueFileName(upload1.FileName);
            var fileLocation1 = Path.Combine(baseLocation, fileName1);

            upload1.SaveAs(fileLocation1);

            var fileName2     = GetUniqueFileName(upload2.FileName);
            var fileLocation2 = Path.Combine(baseLocation, fileName2);

            upload2.SaveAs(fileLocation2);


            Image image = Image.FromStream(upload2.InputStream);

            image.Save(fileLocation2);
            string imagePath = fileLocation2;
            Bitmap bmp       = new Bitmap(imagePath);

            StreamReader sr   = new StreamReader(fileLocation1, Encoding.Default);
            string       text = sr.ReadToEnd();

            if (algoritm == "AES")
            {
                text = Crypto.EncryptStringAES(text, key);
            }
            else if (algoritm == "TripleDES")
            {
                text = TripleDes.Encrypt <TripleDESCryptoServiceProvider>(text, key);
            }
            else if (algoritm == "Rijndael")
            {
                text = TripleDes.Encrypt <RijndaelManaged>(text, key);
            }

            Bitmap bmp1 = SteganoHelper.embedText(text, bmp);

            arr = bmp1.ToByteArray(ImageFormat.Png);
            MemoryStream ms          = new MemoryStream(arr);
            Image        imageResult = Image.FromStream(ms);

            var fileNameRes     = "res.png";
            var fileLocationRes = Path.Combine(baseLocation, fileNameRes);

            imageResult.Save(fileLocationRes);

            TempData["ImageLocation"] = fileNameRes;
            return(RedirectToAction("Preview"));
        }
Example #13
0
        public void EncryptDescryptTest()
        {
            // Arrange
            var    tripleDes     = new TripleDes();
            string expectedValue = MethodBase.GetCurrentMethod()
                                   .Name;
            // Act
            string value       = tripleDes.Encrypt(expectedValue);
            string actualValue = tripleDes.Decrypt(value);

            // Assert
            Assert.AreEqual(expectedValue, actualValue);
            Assert.AreNotEqual(expectedValue, value);
        }
        /// <summary>
        /// Decrypt data using this key.
        /// </summary>
        /// <param name="data">16, 32 or 48 hex data to decrypt.</param>
        /// <returns>Decrypted data.</returns>
        public string Decrypt(string data)
        {
            ValidateEncryptDecryptData(data);

            if (data.Length == 16)
            {
                return(TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data));
            }

            if (data.Length == 32)
            {
                return(TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(0, 16)) +
                       TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(16, 16)));
            }

            return(TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(0, 16)) +
                   TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(16, 16)) +
                   TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(32, 16)));
        }
Example #15
0
        public ActionResult Decrypted(HttpPostedFileBase upload, string key, string algoritm)
        {
            string fileName = GetUniqueFileName(upload.FileName);
            Image  image    = Image.FromStream(upload.InputStream);

            image.Save(Server.MapPath("~/Files/" + fileName));

            string imagePath     = Server.MapPath("~/Files/" + fileName);
            Bitmap bmp           = new Bitmap(imagePath);
            string extractedText = SteganoHelper.extractText(bmp);


            var baseLocation    = Server.MapPath("~/Text/");
            var fileNameRes     = GetUniqueFileName("res.txt");
            var fileLocationRes = Path.Combine(baseLocation, fileNameRes);

            try
            {
                if (algoritm == "AES")
                {
                    extractedText = Crypto.DecryptStringAES(extractedText, key) + Environment.NewLine;
                }
                else if (algoritm == "TripleDES")
                {
                    extractedText = TripleDes.Decrypt <TripleDESCryptoServiceProvider>(extractedText, key) + Environment.NewLine;
                }
                else if (algoritm == "Rijndael")
                {
                    extractedText = TripleDes.Decrypt <RijndaelManaged>(extractedText, key) + Environment.NewLine;
                }

                System.IO.File.AppendAllText(fileLocationRes, extractedText, Encoding.Default);
                TempData["FileLocation"] = fileLocationRes;
                return(RedirectToAction("PreviewDecrypt"));
            }
            catch
            {
                extractedText = "Wrong password";
                System.IO.File.AppendAllText(fileLocationRes, extractedText, Encoding.Default);
                TempData["FileLocation"] = fileLocationRes;
                return(RedirectToAction("PreviewDecrypt"));
            }
        }
Example #16
0
        /// <summary>保存用户列表</summary>
        /// <param name="su">用户对象</param>
        public static void SaveUsersTable(SysUser su)
        {
            string upath = wapp.AppList.SaveConfigPath + _UsersTable.TableName + ".xml";

            if (File.Exists(upath))
            {
                File.Delete(upath);
            }
            if (su != null)
            {
                string pwd = "";
                if (su.UserPwd.Trim() != "")
                {
                    pwd = TripleDes.DesEn(su.UserPwd.Trim(), wapp.AppList.DeKey).Trim();
                }
                DataRow[] dr = _UsersTable.Select("UserName='******'");
                if (dr.Length > 0)
                {
                    if (pwd != "")
                    {
                        dr[0]["UserPwd"] = pwd;
                    }
                    dr[0]["RealName"]   = su.RealName;
                    dr[0]["ManageLv"]   = su.ManageLv;
                    dr[0]["Phones"]     = su.Phones;
                    dr[0]["LoginDate"]  = su.LoginDate;
                    dr[0]["LoginCount"] = su.LoginCount;
                }
                else
                {
                    DataRow newRow = _UsersTable.NewRow();
                    newRow["UserName"]   = su.UserName;
                    newRow["UserPwd"]    = pwd;
                    newRow["RealName"]   = su.RealName;
                    newRow["ManageLv"]   = su.ManageLv;
                    newRow["Phones"]     = su.Phones;
                    newRow["LoginDate"]  = su.LoginDate;
                    newRow["LoginCount"] = su.LoginCount;
                    _UsersTable.Rows.Add(newRow);
                }
            }
            _UsersTable.WriteXml(upath, XmlWriteMode.WriteSchema);
        }
Example #17
0
        /// <summary>返回用户验证密钥</summary>
        /// <param name="sid">sid</param>
        /// <param name="uid">用户id</param>
        /// <param name="name">用户名</param>
        /// <param name="pwd">密码</param>
        /// <returns>返回用户验证密钥</returns>
        public static string GetVerKey(string sid, string uid, string name, string pwd)
        {
            string mpwd = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(pwd, "SHA1");

            if (WebInfo.IsSysManageUser(name, mpwd))
            {
                return("");
            }
            StringBuilder sb = new StringBuilder();

            sb.Append(sid);
            sb.Append("|");
            sb.Append(uid);
            sb.Append("|");
            sb.Append(name);
            sb.Append("|");
            sb.Append(pwd);
            return(TripleDes.DesEn(sb.ToString()));
        }
Example #18
0
        public ActionResult CryptoDecrypted(HttpPostedFileBase upload, string key, string algoritm)
        {
            var baseLocation  = Server.MapPath("~/Text/");
            var fileName1     = GetUniqueFileName(upload.FileName);
            var fileLocation1 = Path.Combine(baseLocation, fileName1);

            upload.SaveAs(fileLocation1);

            StreamReader sr            = new StreamReader(fileLocation1, Encoding.Default);
            string       extractedText = sr.ReadToEnd();


            var fileNameRes     = GetUniqueFileName("res.txt");
            var fileLocationRes = Path.Combine(baseLocation, fileNameRes);

            try
            {
                if (algoritm == "AES")
                {
                    extractedText = Crypto.DecryptStringAES(extractedText, key) + Environment.NewLine;
                }
                else if (algoritm == "TripleDES")
                {
                    extractedText = TripleDes.Decrypt <TripleDESCryptoServiceProvider>(extractedText, key) + Environment.NewLine;
                }
                else if (algoritm == "Rijndael")
                {
                    extractedText = TripleDes.Decrypt <RijndaelManaged>(extractedText, key) + Environment.NewLine;
                }

                System.IO.File.AppendAllText(fileLocationRes, extractedText, Encoding.Default);
                TempData["FileLocationCrypto"] = fileLocationRes;
                return(RedirectToAction("PreviewCryptoDecrypt"));
            }
            catch
            {
                extractedText = "Wrong password";
                System.IO.File.AppendAllText(fileLocationRes, extractedText, Encoding.Default);
                TempData["FileLocationCrypto"] = fileLocationRes;
                return(RedirectToAction("PreviewCryptoDecrypt"));
            }
        }
Example #19
0
        public void TestEncryptStringToBase64()
        {
            var encryptor = new TripleDes();
            string raw = "Đây là Unicode string", key = "password", salt = "this_is_salt";
            string encrypted; string decrypted;

            // without salt
            encrypted = encryptor.EncryptToBase64(raw, key);
            Assert.NotNull(encrypted);
            decrypted = encryptor.DecryptFromBase64ToString(encrypted, key);
            Assert.NotNull(decrypted);
            Assert.Equal(raw, decrypted);

            // with salt
            encrypted = encryptor.EncryptToBase64(raw, key, salt);
            Assert.NotNull(encrypted);
            decrypted = encryptor.DecryptFromBase64ToString(encrypted, key);
            Assert.NotNull(decrypted);
            Assert.Equal(raw, decrypted);
        }
Example #20
0
        public void TestEncryptString()
        {
            var encryptor = new TripleDes();
            string raw = "Đây là Unicode string", key = "password", salt = "this_is_salt";
            byte[] encrypted; byte[] decrypted;

            // without salt
            encrypted = encryptor.Encrypt(raw, key);
            Assert.NotNull(encrypted);
            decrypted = encryptor.Decrypt(encrypted, key);
            Assert.NotNull(decrypted);
            Assert.Equal(raw, decrypted.GetString());

            // with salt
            encrypted = encryptor.Encrypt(raw, key, salt);
            Assert.NotNull(encrypted);
            decrypted = encryptor.Decrypt(encrypted, key);
            Assert.NotNull(decrypted);
            Assert.Equal(raw, decrypted.GetString());
        }
        /// <summary>
        /// Decrypt data using CBC mode.
        /// </summary>
        /// <param name="data">16, 32 or 48 hex data to decrypt.</param>
        /// <returns>Decrypted data.</returns>
        public string DecryptCbc(string data)
        {
            ValidateEncryptDecryptData(data);

            if (data.Length == 16)
            {
                return(TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data));
            }

            if (data.Length == 32)
            {
                var resulta1 = TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(0, 16));
                return(resulta1 + TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(16, 16)).XorHex(data.Substring(0, 16)));
            }

            var resulta2 = TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(0, 16));
            var resultb  = TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(16, 16).XorHex(data.Substring(0, 16)));

            return(resulta2 + resultb + TripleDes.TripleDesDecrypt(PartA, PartB, PartC, data.Substring(32, 16).XorHex(data.Substring(16, 16))));
        }
Example #22
0
        public void TestEncryptFile()
        {
            var encryptor = new TripleDes();
            string file = FILE1, encrypted = FILE1 + ".3des_encrypted", decrypted = FILE1 + ".3des_decrypted",
                key = "password", salt = "this_is_salt";

            // without salt
            encryptor.EncryptFile(file, encrypted, key);
            Assert.True(File.Exists(encrypted));
            encryptor.DecryptFile(encrypted, decrypted, key);
            Assert.True(File.Exists(decrypted));
            Assert.Equal(new FileInfo(file).ReadBytes().ToHexaDecimalString(), new FileInfo(decrypted).ReadBytes().ToHexaDecimalString());

            // with salt
            encryptor.EncryptFile(file, encrypted, key, salt);
            Assert.True(File.Exists(encrypted));
            encryptor.DecryptFile(encrypted, decrypted, key);
            Assert.True(File.Exists(decrypted));
            Assert.Equal(new FileInfo(file).ReadBytes().ToHexaDecimalString(), new FileInfo(decrypted).ReadBytes().ToHexaDecimalString());
        }
Example #23
0
        /// <summary>根据筛选值返回默认用户配置信息</summary>
        /// <param name="sel">筛选值</param>
        /// <returns>根据筛选值返回默认用户配置信息</returns>
        public static UserConfig GetSelectUserConfig(string sel)
        {
            UserConfig uc = new UserConfig();

            if (UserLoginTable.Rows.Count > 0)
            {
                DataRow[] dr = UserLoginTable.Select(sel);
                if (dr.Length > 0)
                {
                    uc.UserName = dr[0]["UserName"].ToString().Trim();
                    uc.UserPwd  = TripleDes.DesDe(dr[0]["UserPwd"].ToString().Trim(), wapp.AppList.DeKey).Trim();
                    if (dr[0]["IsUser"].ToString().Trim() == "1")
                    {
                        uc.IsUser = 1;
                    }
                    if (UserConifgTable.Rows.Count > 0)
                    {
                        DataRow[] drc = UserConifgTable.Select("UserName='******'");
                        if (drc.Length > 0)
                        {
                            if (drc[0]["IsSave"].ToString().Trim() == "1")
                            {
                                uc.IsSave = 1;
                            }
                            if (drc[0]["AutoLogin"].ToString().Trim() == "1")
                            {
                                uc.AutoLogin = 1;
                            }
                            if (drc[0]["AutoStat"].ToString().Trim() == "1")
                            {
                                uc.AutoStat = 1;
                            }
                        }
                    }
                }
            }
            return(uc);
        }
Example #24
0
        /// <summary>
        /// Calculates a MAC using the X9.19 algorithm.
        /// </summary>
        /// <param name="data">Hex data to MAC.</param>
        /// <param name="key">MACing key.</param>
        /// <param name="iv">Initial vector.</param>
        /// <param name="blockType">Message block to MAC.</param>
        /// <returns>MAC result.</returns>
        public static string MacHexData(string data, HexKey key, string iv, IsoX919BlockType blockType)
        {
            if (data.Length % 16 != 0)
            {
                data = Iso9797Pad.PadHexString(data, Iso9797PaddingMethodType.PaddingMethod1);
            }

            for (var i = 0; i <= (data.Length / 16) - 1; i++)
            {
                iv = iv.XorHex(data.Substring(i * 16, 16));
                iv = TripleDes.DesEncrypt(key.PartA, iv);
            }

            var result = iv;

            if (blockType == IsoX919BlockType.FinalBlock || blockType == IsoX919BlockType.OnlyBlock)
            {
                result = TripleDes.DesDecrypt(key.PartB, iv);
                result = TripleDes.DesEncrypt(key.PartA, result);
            }

            return(result);
        }
Example #25
0
        /// <summary>
        /// 创建加密程序
        /// </summary>
        /// <param name="cryptType"></param>
        /// <param name="key"></param>
        /// <returns></returns>
        public ICrypt CreateCrypt(string cryptType, string key = null)
        {
            ICrypt appCrypt;

            switch (cryptType)
            {
            case "DES":
                appCrypt = new Des(key);
                break;

            case "TripleDES":
                appCrypt = new TripleDes(key);
                break;

            case "AES":
                appCrypt = new Aes(key);
                break;

            default:
                appCrypt = new Des(key);
                break;
            }
            return(appCrypt);
        }
Example #26
0
        /// <summary>
        /// 创建加密程序
        /// </summary>
        /// <param name="cryptType"></param>
        /// <param name="key"></param>
        /// <returns></returns>
        public ICrypt CreateCrypt(Type cryptType, string key = null)
        {
            ICrypt appCrypt;

            switch (cryptType)
            {
            case Type.Des:
                appCrypt = new Des(key);
                break;

            case Type.TripleDes:
                appCrypt = new TripleDes(key);
                break;

            case Type.Aes:
                appCrypt = new Aes(key);
                break;

            default:
                appCrypt = new Des(key);
                break;
            }
            return(appCrypt);
        }
Example #27
0
 public void TestTripleDes(byte[] key1, byte[] key2, byte[] key3, byte[] data, byte[] expected)
 {
     Assert.AreEqual(expected, TripleDes.TripleDesEncrypt(key1, key2, key3, data));
     Assert.AreEqual(data, TripleDes.TripleDesDecrypt(key1, key2, key3, expected));
 }
Example #28
0
        /// <summary>
        /// 注册
        /// </summary>
        /// <param name="token"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        public ResponseBase <string> ValidateRegister(string mobile, string smsCode, string password)
        {
            var response = new ResponseBase <string>();

            try
            {
                var client       = new HttpClient();
                var requestJson  = JsonConvert.SerializeObject(new { mobile = mobile, smsCode = smsCode, password = TripleDes.EncryptDES(password, "50yc_czm", "12345678") });
                var result       = client.PostAsync(YCDomain + "/api/app/v2/member/register", new StringContent(requestJson, System.Text.Encoding.UTF8, "application/json")).Result;
                var responseJson = result.Content.ReadAsStringAsync().Result;
                var apiResponse  = (JObject)JsonConvert.DeserializeObject(responseJson);
                response.IsSuccess     = apiResponse.GetValue("code").Value <string>().Equals("0000");
                response.OperationDesc = apiResponse.GetValue("msg").Value <string>();
                if (response.IsSuccess)
                {
                    response.Result = apiResponse.GetValue("result").Value <string>("memberNo");
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess     = false;
                response.OperationDesc = "请求错误";
                WriteLogException(ex); // 记录日志信息
            }
            return(response);
        }
Example #29
0
 public void DisposeTest([PexAssumeUnderTest] TripleDes target)
 {
     target.Dispose();
     // TODO: add assertions to method TripleDesTest.DisposeTest(TripleDes)
 }
Example #30
0
 public void TestByteDes(byte[] key, byte[] data, byte[] expected)
 {
     Assert.AreEqual(expected, TripleDes.DesEncrypt(key, data));
     Assert.AreEqual(data, TripleDes.DesDecrypt(key, expected));
 }
 protected override byte[] Encrypt(PropertyInfo property, byte[] key, byte[] bytes)
 {
     TripleDes.GenerateIV();
     return(CreateBinaryFrame(TripleDes.IV, Transform(bytes, TripleDes.CreateEncryptor(key, TripleDes.IV))));
 }
        protected override byte[] Decrypt(PropertyInfo property, byte[] key, byte[] bytes)
        {
            var frame = ExtractBinaryFrame(bytes);

            return(Transform(frame[1], TripleDes.CreateDecryptor(key, frame[0])));
        }
Example #33
0
 public TrijnDes(CryptoKey rijndaelKey, CryptoKey tripleDesKey, CryptoKey rijndaelKey2)
 {
     _rijndael = new Rijndael(rijndaelKey);
     _tripleDes = new TripleDes(tripleDesKey);
     _rijndael2 = new Rijndael(rijndaelKey2);
 }
Example #34
0
        /// <summary>
        /// 验证登录
        /// </summary>
        /// <returns></returns>
        public ResponseBase <object> ValidateLogin(string userName, string password)
        {
            var response = new ResponseBase <object>();

            try
            {
                var client      = new HttpClient();
                var requestJson = JsonConvert.SerializeObject(new { Account = userName, Password = TripleDes.EncryptDES(password, "50yc_czm", "12345678") });

                var result       = client.PostAsync(YCDomain + "/api/app/v2/member/signin", new StringContent(requestJson, System.Text.Encoding.UTF8, "application/json")).Result;
                var responseJson = result.Content.ReadAsStringAsync().Result;
                var apiResponse  = (JObject)JsonConvert.DeserializeObject(responseJson);
                response.IsSuccess     = apiResponse.GetValue("code").Value <string>().Equals("0000");
                response.OperationDesc = apiResponse.GetValue("msg").Value <string>();
                response.Result        = apiResponse.GetValue("result");
            }
            catch (Exception ex)
            {
                response.IsSuccess     = false;
                response.OperationDesc = ex.ToString();
                WriteLogException(ex); // 记录日志信息
            }
            return(response);
        }