评论

收藏

[R语言] asp.net代码练习 work080 MD5加密的示例

编程语言 编程语言 发布于:2021-12-17 18:50 | 阅读数:469 | 评论:0

webform1.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="work080.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>MD5加密的示例</title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
    <table border="0">
      <tr>
        <td colspan="2" align="center">MD5加密的示例</td>
      </tr>
      <tr>
        <td>
          <asp:TextBox ID="txtSource" runat="server" Columns="24" Rows="6" TextMode="MultiLine"></asp:TextBox>
        </td>
        <td>
          <asp:TextBox ID="txtResult" runat="server" Columns="24" Rows="6" TextMode="MultiLine"></asp:TextBox>
        </td>
      </tr>
      <tr>
        <td>
          <asp:Button ID="Button1" runat="server" Text="MD5加密"  />
        </td>
        <td>
        </td>
      </tr>
    </table>
  </div>
  </form>
</body>
</html>
webform1.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace work080
{
  public partial class WebForm1 : System.Web.UI.Page
  {
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
      string text = txtSource.Text;
      string result = MD5Provider.Hash(text);
      txtResult.Text = result;
    }
  }
}
md5provider.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace work080
{
  /// <summary>
  /// MD5
  /// </summary>
  public class MD5Provider
  {
    private MD5Provider()
    { 
    }
    /// <summary>
    /// 用MD5算法进行加密哈希
    /// </summary>
    /// <param name="message"></param>
    /// <returns></returns>
    public static string Hash(string message)
    {
      if (string.IsNullOrEmpty(message))
      {
        return string.Empty;
      }
      else
      {
        //创建默认实例
        System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();
        //将要加密的字符串按照UTF8格式转换成字节数组
        byte[] source = System.Text.Encoding.UTF8.GetBytes(message);
        //计算哈希值
        byte[] result = md5.ComputeHash(source);
        System.Text.StringBuilder buffer = new System.Text.StringBuilder();
        for (int i = 0; i < result.Length; i++)
        { 
          //将字节数组中的每个元素转成十六进制形式
          buffer.Append(result[i].ToString("X"));
        }
        return buffer.ToString();
      }
    }
  }
}

关注下面的标签,发现更多相似文章