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

wap网站生成学做视频的网站

wap网站生成,学做视频的网站,微信小程序平台官网登录,备案域名解析一、报文摘要算法基本概念 ​ 使用加密通常可达到报文鉴别的目的#xff0c;因为伪造的报文解密后一般不能得到可理解的内容。但简单采用这种方法#xff0c;计算机很难自动识别报文是否被篡改。另外#xff0c;对于不需要保密而只需要报文鉴别的网络应用#xff0c;对整个…一、报文摘要算法基本概念 ​ 使用加密通常可达到报文鉴别的目的因为伪造的报文解密后一般不能得到可理解的内容。但简单采用这种方法计算机很难自动识别报文是否被篡改。另外对于不需要保密而只需要报文鉴别的网络应用对整个报文的加密和解密会使计算机增加很多不必要的负担加密和解密要花费相当多的CPU时间。 ​ 更有效的方法是使用报文摘要MessageDigestMD来进行报文鉴别。 ​ 发送方将可变 长度的报文m经过报文摘要算法运算后得出固定长度的报文摘要H(m)。然后对H(m)进行加密得出EK(H(m))并将其附加在报文m后面发送出去。接收方把EK(H(m))解密还原为H(m)再把收到的报文进行报文摘要运算看结果是否与收到的H(m)一样。如不一样则可断定收到的报文不是发送方产生的。具体流程如下 ​ 目前广泛应用的报文摘要算法有MD5[RFC1321]和安全散列算法1SecureHashAlgorithm,SHA-1。MD5输出128位的摘要SHA-1输出160位的摘要。SHA-1比MD5更安全些但计算起来比MD5要慢。 二、.NET 使用 MD5、SHA1、SHA128、SHA512 报文摘要算法 1 using System;2 using System.Security.Cryptography;3 using System.Text;4 5 namespace encryption.md56 {7 public class Md5Util8 {9 public enum MD 10 { 11 MD5, 12 SHA1, 13 SHA256, 14 SHA512, 15 } 16 private static HashAlgorithm CreateHashAlgorithm(MD sha) 17 { 18 switch (sha) 19 { 20 case MD.MD5: 21 return new MD5CryptoServiceProvider(); 22 case MD.SHA1: 23 return SHA1.Create(); 24 case MD.SHA256: 25 return SHA256.Create(); 26 case MD.SHA512: 27 return SHA512.Create(); 28 } 29 30 throw new Exception($The type does not exits,type:{sha}); 31 } 32 33 /// summary 34 /// 获取指定byte数组的MD5 35 /// /summary 36 /// param namesource/param 37 /// param nameencodingsee crefEncoding/默认值UTF8/param 38 /// returns/returns 39 public static byte[] GetMD5(byte[] source, MD shaMD.MD5, Encoding encoding null) 40 { 41 byte[] output CreateHashAlgorithm(sha).ComputeHash(source); 42 return output; 43 } 44 45 /// summary 46 /// 获取指定字符串的MD5 47 /// /summary 48 /// param namesource/param 49 /// param nameencodingsee crefEncoding/默认值UTF8/param 50 /// returns/returns 51 public static byte[] GetMD5(string source, MD sha MD.MD5, Encoding encoding null) 52 { 53 if (encoding null) encoding Encoding.UTF8; 54 return GetMD5(encoding.GetBytes(source), sha, encoding); 55 } 56 57 58 /// summary 59 /// MD5 校验 60 /// /summary 61 /// param nameinput校验二进制/param 62 /// param namehash待比较的MD5 值/param 63 /// param nameencoding/param 64 /// returnstrue:相同;false:被纂改/returns 65 public static bool VerifyMD5(byte[] input, byte[] hash, MD sha MD.MD5, Encoding encoding null) 66 { 67 if (encoding null) encoding Encoding.UTF8; 68 var buffer GetMD5(input, sha,encoding); 69 if (Convert.ToBase64String(buffer) Convert.ToBase64String(hash)) 70 { 71 return true; 72 } 73 return false; 74 } 75 76 /// summary 77 /// MD5 校验 78 /// /summary 79 /// param nameinput校验字符串/param 80 /// param namehash待比较的MD5 值/param 81 /// param nameencoding/param 82 /// returnstrue:相同;false:被纂改/returns 83 public static bool VerifyMD5(string input, byte[] hash, MD sha MD.MD5, Encoding encoding null) 84 { 85 if (encoding null) encoding Encoding.UTF8; 86 return VerifyMD5(encoding.GetBytes(input), hash, sha,encoding); 87 } 88 } 89 }三、测试代码与结果 1 static void Main()2 {3 {4 Console.WriteLine(-----------------------------------------------------生成MD5--------------------------------------------------);5 var input 目前广泛应用的报文摘要算法有MD5[RFC1321]和安全散列算法1SecureHashAlgorithm,SHA-1。;6 Console.WriteLine($内容{input});7 byte[] md5 Md5Util.GetMD5(input);8 Console.WriteLine($MD5{Convert.ToBase64String(md5)});9 } 10 11 { 12 Console.WriteLine(-----------------------------------------------------MD5防篡改校验--------------------------------------------------); 13 var input https://docs.microsoft.com/zh-tw/dotnet/api/system.security.cryptography.md5?viewnet-5.0; 14 Console.WriteLine($内容{input}); 15 byte[] md5 Md5Util.GetMD5(input不一致); 16 Console.WriteLine($MD5校验{Md5Util.VerifyMD5(input, md5)}); 17 } 18 19 { 20 Console.WriteLine(-----------------------------------------------------生成SHA512--------------------------------------------------); 21 var input 目前广泛应用的报文摘要算法有MD5[RFC1321]和安全散列算法1SecureHashAlgorithm,SHA-1。; 22 Console.WriteLine($内容{input}); 23 byte[] md5 Md5Util.GetMD5(input,Md5Util.MD.SHA512); 24 Console.WriteLine($SHA512{Convert.ToBase64String(md5)}); 25 } 26 27 { 28 Console.WriteLine(-----------------------------------------------------SHA512防篡改校验--------------------------------------------------); 29 var input https://docs.microsoft.com/zh-tw/dotnet/api/system.security.cryptography.md5?viewnet-5.0; 30 Console.WriteLine($内容{input}); 31 byte[] md5 Md5Util.GetMD5(input, Md5Util.MD.SHA512); 32 Console.WriteLine($SHA512校验{Md5Util.VerifyMD5(input, md5, Md5Util.MD.SHA512)}); 33 } 34 35 Console.ReadKey(); 36 }
http://www.tj-hxxt.cn/news/222477.html

相关文章:

  • 太原网站如何制作wordpress另一更新
  • 网站服务器错误怎么解决网站设计步骤及图解
  • 口腔建立网站如何增加网站的访问量
  • 中国建设银行网站维护做网站啦代理的方法
  • 在韶关做网站内容营销的方法
  • 交互设计师网站电子商务网站建设及维护管理
  • 怎么提高网站转化率医疗网站的运营
  • 问答网站建设怎么提问网站服务器有哪些
  • 网站备案能不能出现世界重庆造价信息网
  • 东莞建设通网站清远市住房和城乡建设局网站
  • 湖南网站建设公司 尖端磐石网络学ui wordpress模板
  • 昆明贤邦网站建设网站联系方式修改织梦
  • 怎样把域名和做的网站连接不上杭州 网站定制
  • 大连有做途家网站吗免费的html网站
  • 网站开发的常用软件个人简历在线编辑文档
  • 做房产信息网站建行网上银行登录入口官网
  • 网站诊断书个人简历(电子版)
  • 网站织梦温州建设小学瓯江校区网站
  • 网站窗口建设淘宝联盟网站备案
  • 如何把网站放到百度wordpress大前端logo
  • 现在网站开发哪个语言好wordpress模版如何套用
  • 进入百度app青岛关键词优化排名
  • 做网站42类商标怎么选小类注册公司名字大全
  • 网站qq 微信分享怎么做东莞活动网站设计模板
  • php语言做购物网站厦门seo网站关键词优推广
  • 实实通信的视频网站怎么做做公众号可以看的网站
  • 2017网站主流设计风格最新做做网站免费
  • 建设商务网站作用深圳市龙华区观澜街道
  • 洛阳网站制作wordpress 5.0.1
  • 南山做网站方案网站模板 jsp