zoukankan      html  css  js  c++  java
  • MD5码加密

    很多时候,我们需要访问一个页面或者方法,参数不得不放在url上 。 为了防止有人恶意修改ulr地址参数,我们可以使用MD5码加密。

    MD5是非逆转的哦!

    实现MD5码的步骤:

    一. 需要引入命名空间:

    using System.Security.Cryptography;

    二. 代码

               var  str=" 需要加密字符串 " ;

        MD5 md5 = new MD5CryptoServiceProvider();   
                string newP = BitConverter.ToString(md5.ComputeHash(Encoding.Default.GetBytes(str)), 4, 8);
                newP = newP.Replace("-", "");

    然后  newP就是加密后的字符串了。

    我们可以用ajax把参数字符串传到一个方法进行加密, 然后返回加密过的参数(字符串),在把参数 和加密后的参数(字符串)都传递到需要访问的页面。

    进入该页面, 因为md5加密是不能逆转的,所以我们可以把参数加密,然后和之前加密过的参数(字符串)进行对比。如果 !=  那么就是地址栏参数被修改过。

        /// <summary>
            /// 将字符串进行MD5编码
            /// </summary>
            /// <param name="str">待编码的字符串</param>
            /// <returns></returns>
            public static string EncryptString(string str)
            {
                MD5 md5 = MD5.Create();
                // 将字符串转换成字节数组
                byte[] byteOld = Encoding.UTF8.GetBytes(str);
                // 调用加密方法
                byte[] byteNew = md5.ComputeHash(byteOld);
                // 将加密结果转换为字符串
                StringBuilder sb = new StringBuilder();
                foreach (byte b in byteNew)
                {
                    // 将字节转换成16进制表示的字符串,
                    sb.Append(b.ToString("x2"));
                }
                // 返回加密的字符串
                return sb.ToString();
            }
    

      

  • 相关阅读:
    助教观察记录5(10/21-11/3)
    助教观察记录4(10/07-10/20)
    助教观察记录3(9/23-10/06)
    助教观察记录1(9/5-9/15)
    2019年春季学期《C语言程序设计II》课程总结
    2020软件工程个人作业06——软件工程实践总结作业
    软件工程第二次作业
    2020软件工程作业3
    2020软件工程作业01
    神必高考数学题乱写
  • 原文地址:https://www.cnblogs.com/liuzheng0612/p/10870791.html
Copyright © 2011-2022 走看看