久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨(dú)角獸企業(yè)100強(qiáng)
全世界各行各業(yè)聯(lián)合起來,internet一定要實(shí)現(xiàn)!

用ASP.NET加密口令

2004-02-11 eNet&Ciweek

  每當(dāng)我們要建立數(shù)據(jù)庫驅(qū)動(dòng)的個(gè)人化的web站點(diǎn)時(shí),都必須要保護(hù)用戶的數(shù)據(jù)。盡管黑客可以盜取個(gè)人的口令,然而更嚴(yán)重的問題是有人能夠盜走整個(gè)數(shù)據(jù)庫,然后立刻就是所有的口令。

  原理

  有一個(gè)好的做法是不將實(shí)際的口令存儲(chǔ)在數(shù)據(jù)庫中,而是存儲(chǔ)它們加密后的版本。當(dāng)我們需要對(duì)用戶進(jìn)行鑒定時(shí),只是對(duì)用戶的口令再進(jìn)行加密,然后將它與系統(tǒng)中的加密口令進(jìn)行比較即可。

  在ASP中,我們不得不借助外部對(duì)象來加密字符串。而.NET SDK解決了這個(gè)問題,它在System.Web.Security名稱空間中的FormsAuthentication類中提供了HashPasswordForStoringInConfigFile方法,這個(gè)方法的目的正如它的名字所提示的,就是要加密存儲(chǔ)在Form表單的口令。

  例子

  HashPasswordForStoringInConfigFile方法使用起來非常簡(jiǎn)單,它支持用于加密字符串的“SHA1”和“MD5”散列算法。為了看看“HashPasswordForStoringInConfigFile”方法的威力,讓我們創(chuàng)建一個(gè)小小的ASP.NET頁面,并且將字符串加密成SHA1和MD5格式。下面是這樣的一個(gè)ASP.NET頁面源代碼:

  ASPX文件:

  <%@ Page language="c#" Codebehind="loginform.aspx.cs" AutoEventWireup="false" Inherits="konson.log.loginform" %>

  

  

  

  loginform

  

  

  

  

  

  

  


  

  

  

  

  

  

  

  

  

  

  

  

  

  
登錄名
密碼


  


  

      

  Code Behind文件:

  using System;

  using System.Collections;

  using System.ComponentModel;

  using System.Data;

  using System.Drawing;

  using System.Web;

  using System.Web.SessionState;

  using System.Web.UI;

  using System.Web.UI.WebControls;

  using System.Web.UI.HtmlControls;

  using System.Web.Security;

  

   

  namespace konson.log

  {

  public class loginform : System.Web.UI.Page

  {

  protected System.Web.UI.WebControls.TextBox userid;

  protected System.Web.UI.WebControls.Button login;

  protected System.Web.UI.WebControls.Button cancel;

  protected System.Web.UI.WebControls.TextBox pwd;

  string epwd;

  private void Page_Load(object sender, System.EventArgs e)

  {}

  #region Web Form Designer generated code

  override protected void OnInit(EventArgs e)

  {

  InitializeComponent();

  base.OnInit(e);

  }

  

  private void InitializeComponent()

  {

  this.login.Click += new System.EventHandler(this.login_Click);

  this.Load += new System.EventHandler(this.Page_Load);

  }

  #endregion

  

    private void login_Click(object sender, System.EventArgs e)

  {

  epwd=FormsAuthentication.HashPasswordForStoringInConfigFile(pwd.Text, "SHA1");

  //epwd=FormsAuthentication.HashPasswordForStoringInConfigFile(pwd.Text, "MD5");

  Response.Write(epwd);

  }

  }

  }

  上面的代碼中,你只要把加密后的epwd串寫時(shí)數(shù)據(jù)庫就ok了。加密口令就是這么簡(jiǎn)單。

相關(guān)頻道: eNews

您對(duì)本文或本站有任何意見,請(qǐng)?jiān)谙路教峤?,謝謝!

投稿信箱:tougao@enet16.com