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

网站建设与app开发手机电商网站模板

网站建设与app开发,手机电商网站模板,网页游戏传奇合击版,定制企业app开发一、报文摘要算法基本概念 ​ 使用加密通常可达到报文鉴别的目的#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.dnsts.com.cn/news/224171.html

相关文章:

  • asp网站咋做有哪些基于网站开发的报表设计器
  • 企业网站的高跳出率应该如何解决网上有做衣服的网站
  • 网站开发必学的技巧有哪些做网站好还是做安卓app好
  • 网站设计企业wordpress mylife
  • 青岛网站建设方案优化漳州公司建设网站
  • 做电影网站需要什么条件wordpress 加载
  • 工信部官网查询系统查询手机哈尔滨百度推广排名优化
  • WordPress如何备份恢复长春搜索引擎优化
  • 合肥高新城创建设投资有限公司网站天津网站建设基本流程图
  • 网站建设 有哪些费用商标和logo的区别
  • wordpress外贸网站好用的模板有了源码怎么做网站
  • 安徽池州做企业网站wordpress系统和插件
  • 网站后台有显示前台没有wordpress根目录
  • 免费网站建设凡科国内知名商业设计公司
  • 泰安网站建设最好做企业网站用什么cms好
  • 凡客建站手机版下载中国十大公关公司
  • 代刷网站推广链接快手网页设计实验报告3000
  • 用python做的网站多吗新开发的聊天软件
  • 网站建设运转湖北企业模板建站信息
  • 网站的推广优化蝶恋直播视频在线观看
  • 做网站最简单的方法燕窝网站怎么做的
  • 可以更改上传到网站的文件内容吗企业邮箱申请理由
  • 和17做网店类似的货源网站网站开发百度云
  • 高校文明建设网站wordpress 批量换
  • 电商网站用php做的吗怎样开电商
  • 广州led网站建设wordpress 优化
  • wordpress页面找不到该网页网站标题优化工具
  • 云南装饰公司做网站网站开发公司 网站空间
  • 专门做奢侈品的网站有哪些iis6cgi php网站缓存
  • 网站建设有什么职位wordpress varinsh