当前位置: 首页 > news >正文

石家庄手机网站制作昆明网站策划

石家庄手机网站制作,昆明网站策划,个人网站模板儿童,阳江房产网签一. MD5 1 防止看到明文 数据库密码#xff0c;加盐(原密码固定字符串#xff0c;然后再MD5/双MD5) 2 防篡改 3 急速秒传(第一次上传文件#xff0c;保存md5摘要#xff0c;第二次上传检查md5摘要) 4文件下载(防篡改#xff0c;官方发布的时候给一个md5摘要#xf… 一. MD5  1 防止看到明文 数据库密码加盐(原密码固定字符串然后再MD5/双MD5)  2 防篡改   3 急速秒传(第一次上传文件保存md5摘要第二次上传检查md5摘要)   4文件下载(防篡改官方发布的时候给一个md5摘要安装的时候首先检查下摘要)  5 svn TFS git VSS(本地保存文件的md5摘要任何修改都会影响md5)   1 public class MD5Encrypt2 {3 #region MD54 /// summary5 /// MD5加密,和动网上的16/32位MD5加密结果相同,6 /// 使用的UTF8编码7 /// /summary8 /// param namesource待加密字串/param9 /// param namelength16或32值之一,其它则采用.net默认MD5加密算法/param 10 /// returns加密后的字串/returns 11 public static string Encrypt(string source, int length 32)//默认参数 12 { 13 if (string.IsNullOrEmpty(source)) return string.Empty; 14 HashAlgorithm provider CryptoConfig.CreateFromName(MD5) as HashAlgorithm; 15 byte[] bytes Encoding.UTF8.GetBytes(source);//这里需要区别编码的 16 byte[] hashValue provider.ComputeHash(bytes); 17 StringBuilder sb new StringBuilder(); 18 switch (length) 19 { 20 case 16://16位密文是32位密文的9到24位字符 21 for (int i 4; i 12; i) 22 { 23 sb.Append(hashValue[i].ToString(x2)); 24 } 25 break; 26 case 32: 27 for (int i 0; i 16; i) 28 { 29 sb.Append(hashValue[i].ToString(x2)); 30 } 31 break; 32 default: 33 for (int i 0; i hashValue.Length; i) 34 { 35 sb.Append(hashValue[i].ToString(x2)); 36 } 37 break; 38 } 39 return sb.ToString(); 40 } 41 #endregion MD5 42 43 #region MD5摘要 44 /// summary 45 /// 获取文件的MD5摘要 46 /// /summary 47 /// param namefileName/param 48 /// returns/returns 49 public static string AbstractFile(string fileName) 50 { 51 using (FileStream file new FileStream(fileName, FileMode.Open)) 52 { 53 return AbstractFile(file); 54 } 55 } 56 57 /// summary 58 /// 根据stream获取文件摘要 59 /// /summary 60 /// param namestream/param 61 /// returns/returns 62 public static string AbstractFile(Stream stream) 63 { 64 MD5 md5 new MD5CryptoServiceProvider(); 65 byte[] retVal md5.ComputeHash(stream); 66 67 StringBuilder sb new StringBuilder(); 68 for (int i 0; i retVal.Length; i) 69 { 70 sb.Append(retVal[i].ToString(x2)); 71 } 72 return sb.ToString(); 73 } 74 #endregion 75 } View Code    二 . DES可逆对称加密 1 /// summary2 /// DES AES Blowfish3 /// 对称加密算法的优点是速度快4 /// 缺点是密钥管理不方便要求共享密钥。5 /// 可逆对称加密 密钥长度86 /// /summary7 public class DesEncrypt8 {9 private static byte[] _rgbKey ASCIIEncoding.ASCII.GetBytes(key)); 10 private static byte[] _rgbIV ASCIIEncoding.ASCII.GetBytes(value); 11 12 /// summary 13 /// DES 加密 14 /// /summary 15 /// param nametext需要加密的值/param 16 /// returns加密后的结果/returns 17 public static string Encrypt(string text) 18 { 19 DESCryptoServiceProvider dsp new DESCryptoServiceProvider(); 20 using (MemoryStream memStream new MemoryStream()) 21 { 22 CryptoStream crypStream new CryptoStream(memStream, dsp.CreateEncryptor(_rgbKey, _rgbIV), CryptoStreamMode.Write); 23 StreamWriter sWriter new StreamWriter(crypStream); 24 sWriter.Write(text); 25 sWriter.Flush(); 26 crypStream.FlushFinalBlock(); 27 memStream.Flush(); 28 return Convert.ToBase64String(memStream.GetBuffer(), 0, (int)memStream.Length); 29 } 30 } 31 32 /// summary 33 /// DES解密 34 /// /summary 35 /// param nameencryptText/param 36 /// returns解密后的结果/returns 37 public static string Decrypt(string encryptText) 38 { 39 DESCryptoServiceProvider dsp new DESCryptoServiceProvider(); 40 byte[] buffer Convert.FromBase64String(encryptText); 41 42 using (MemoryStream memStream new MemoryStream()) 43 { 44 CryptoStream crypStream new CryptoStream(memStream, dsp.CreateDecryptor(_rgbKey, _rgbIV), CryptoStreamMode.Write); 45 crypStream.Write(buffer, 0, buffer.Length); 46 crypStream.FlushFinalBlock(); 47 return ASCIIEncoding.UTF8.GetString(memStream.ToArray()); 48 } 49 } 50 } View Code   三 RSA可逆非对称加密 1 /// summary2 /// RSA ECC3 /// 可逆非对称加密 4 /// 非对称加密算法的优点是密钥管理很方便缺点是速度慢。5 /// /summary6 public class RsaEncrypt7 {8 /// summary9 /// 获取加密/解密对 10 /// 给你一个是无法推算出另外一个的 11 /// 12 /// Encrypt Decrypt 13 /// /summary 14 /// returnsEncrypt Decrypt/returns 15 public static KeyValuePairstring, string GetKeyPair() 16 { 17 RSACryptoServiceProvider RSA new RSACryptoServiceProvider(); 18 string publicKey RSA.ToXmlString(false); 19 string privateKey RSA.ToXmlString(true); 20 return new KeyValuePairstring, string(publicKey, privateKey); 21 } 22 23 /// summary 24 /// 加密内容加密key 25 /// /summary 26 /// param namecontent/param 27 /// param nameencryptKey加密key/param 28 /// returns/returns 29 public static string Encrypt(string content, string encryptKey) 30 { 31 RSACryptoServiceProvider rsa new RSACryptoServiceProvider(); 32 rsa.FromXmlString(encryptKey); 33 UnicodeEncoding ByteConverter new UnicodeEncoding(); 34 byte[] DataToEncrypt ByteConverter.GetBytes(content); 35 byte[] resultBytes rsa.Encrypt(DataToEncrypt, false); 36 return Convert.ToBase64String(resultBytes); 37 } 38 39 /// summary 40 /// 解密 内容解密key 41 /// /summary 42 /// param namecontent/param 43 /// param namedecryptKey解密key/param 44 /// returns/returns 45 public static string Decrypt(string content, string decryptKey) 46 { 47 byte[] dataToDecrypt Convert.FromBase64String(content); 48 RSACryptoServiceProvider RSA new RSACryptoServiceProvider(); 49 RSA.FromXmlString(decryptKey); 50 byte[] resultBytes RSA.Decrypt(dataToDecrypt, false); 51 UnicodeEncoding ByteConverter new UnicodeEncoding(); 52 return ByteConverter.GetString(resultBytes); 53 } 54 55 56 /// summary 57 /// 可以合并在一起的每次产生一组新的密钥 58 /// /summary 59 /// param namecontent/param 60 /// param nameencryptKey加密key/param 61 /// param namedecryptKey解密key/param 62 /// returns加密后结果/returns 63 private static string Encrypt(string content, out string publicKey, out string privateKey) 64 { 65 RSACryptoServiceProvider rsaProvider new RSACryptoServiceProvider(); 66 publicKey rsaProvider.ToXmlString(false); 67 privateKey rsaProvider.ToXmlString(true); 68 69 UnicodeEncoding ByteConverter new UnicodeEncoding(); 70 byte[] DataToEncrypt ByteConverter.GetBytes(content); 71 byte[] resultBytes rsaProvider.Encrypt(DataToEncrypt, false); 72 return Convert.ToBase64String(resultBytes); 73 } View Code       转载于:https://www.cnblogs.com/saodiseng2015/p/9296639.html
http://wiki.neutronadmin.com/news/258539/

相关文章:

  • 辽宁省住房和城乡建设网站wordpress手机版
  • 购物商城网站开发公司小程序爱成毅的微博
  • 网站图片标签网站怎么做能让人搜到
  • 茶叶网站开发如何建立公司网页
  • 企业网站建设方案书 备案佛山南海区建网站的公司
  • 成都科技网站建设联系学网页设计网页设计
  • 怎么做跟P站一样的网站网站站外链接
  • 怎么做网站前端大学生简历模板
  • 企业网站建设费属于办公费吗建设官网入口
  • 手机网站图片宽度wordpress+插件+h5
  • 怎样学习做网站的编程深圳网站建设 培训学校
  • 企业网站建设的经费预算小程序的开发流程有哪几步
  • 企业网站建设 租用服务器深圳国外网站制作公司
  • 浙江新华建设有限公司官方网站做网站泰州
  • photoshop 做网站logo简述一下软件开发的流程
  • 做app做网站从何学起建模外包网站
  • 网站建设公司选择意见书智慧团建密码初始密码是什么
  • 南宁网站建设博信wordpress后台改中文
  • 服装设计网站大全深圳 网站建设培训学校
  • 什么是网站改版做网站效果图是用ps还是ai
  • 北京网站建设华网天下深圳网站制作与建设公司
  • 工程建设举报网有哪些网站网站建设需要下载哪些软件有哪些
  • 专业的营销型网站最新报价广州建网站定制
  • 新乡个人网站建设哪家好电脑上如何进入wordpress
  • 做网站找哪个三亚河北建设招聘信息网站
  • 网站开发收获深圳市建设工程有限公司
  • 网站开发制作云盘wordpress把文章转语音
  • 青海集团网站建设常用的英文网站字体
  • 洛阳建设工程网站定制型网站制作公司
  • 汉语资源建设相关网站适合学生做网站的图片