自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

概述ASP.NET Membership

開發(fā) 后端
本文介紹ASP.NET Membership,以及介紹Anders Liu僅研究了SqlMembershipProvider,該類位于System.Web.dll,System.Web.Security命名空間中。

本來打算寫一篇介紹如何實現(xiàn)用戶登錄功能的文章的,但因為時間有限,所以先介紹一下密碼的散列和ASP.NET Membership

1.加Salt散列

我們知道,如果直接對密碼進行散列,那么黑客(統(tǒng)稱那些有能力竊取用戶數(shù)據(jù)并企圖得到用戶密碼的人)可以對一個已知密碼進行散列,然后通過對比散列值得到某用戶的密碼。換句話說,雖然黑客不能取得某特定用戶的密碼,但他可以知道使用特定密碼的用戶有哪些。

加Salt可以一定程度上解決這一問題。所謂加Salt,就是加點“佐料”。其基本想法是這樣的——當(dāng)用戶***提供密碼時(通常是注冊時),由系統(tǒng)自動往這個密碼里撒一些“佐料”,然后再散列。而當(dāng)用戶登錄時,系統(tǒng)為用戶提供的代碼撒上同樣的“佐料”,然后散列,再比較散列值,已確定密碼是否正確。

這里的“佐料”被稱作“Salt值”,這個值是由系統(tǒng)隨機生成的,并且只有系統(tǒng)知道。這樣,即便兩個用戶使用了同一個密碼,由于系統(tǒng)為它們生成的salt值不同,他們的散列值也是不同的。即便黑客可以通過自己的密碼和自己生成的散列值來找具有特定密碼的用戶,但這個幾率太小了(密碼和salt值都得和黑客使用的一樣才行)。

下面詳細介紹一下加Salt散列的過程。介紹之前先強調(diào)一點,前面說過,驗證密碼時要使用和最初散列密碼時使用“相同的”佐料。所以Salt值是要存放在數(shù)據(jù)庫里的。

2.ASP.NET Membership中的相關(guān)代碼

(省略關(guān)于Membership的介紹若干字)

本文Anders Liu僅研究了SqlMembershipProvider,該類位于System.Web.dll,System.Web.Security命名空間中。

首先,要使用Membership,必須先用aspnet_regsql.exe命令來配置數(shù)據(jù)庫,該工具會向現(xiàn)有數(shù)據(jù)庫中添加一系列表和存儲過程等,配置好的數(shù)據(jù)庫中有一個表aspnet_Membership,就是用于存放用戶帳戶信息的。其中我們所關(guān)注的列有三個——Password、PasswordFormat和PasswordSalt。

Password存放的是密碼的散列值,PasswordFormat存放用于散列密碼所使用的算法,PasswordSalt就是系統(tǒng)生成的Salt值了。

3.小結(jié)

本文只是簡單地介紹了加Salt散列的工作方式(而非原理)、ASP.NET Membership中對其的實現(xiàn)。通過本文大家雖然無法對加Salt加密的有點和原理“知其所以然”,但相信大家應(yīng)該大致了解了這種方式的使用方法,并能通過修改Membership的代碼實現(xiàn)自己的密碼散列存儲了。

由于時間有限,Anders Liu這篇文章寫得很潦草,羅列了不少代碼卻沒有系統(tǒng)性介紹,還望大家原諒。下一篇文章我將相對完整地介紹如何實現(xiàn)自己的用戶登錄(無需使用MembershipProvider,但同時也喪失了Login等控件為我們帶來的便利)。

【編輯推薦】

  1. ASP.NET開發(fā)技巧之Theme功能淺析
  2. 詳解ASP.NET動態(tài)編譯
  3. Apache支持ASP.NET方法淺析
  4. 淺談ASP.NET服務(wù)器標(biāo)準(zhǔn)控件
  5. ASP.NET中SQL Server數(shù)據(jù)庫備份恢復(fù)淺析
責(zé)任編輯:佚名 來源: 51CTO.com
相關(guān)推薦

2009-07-27 15:34:11

MembershipASP.NET

2009-07-22 17:45:35

ASP.NET教程

2009-07-28 17:17:19

ASP.NET概述

2009-12-07 09:23:05

ASP.NET MVC

2009-07-22 16:17:39

ASP.NET AJA

2009-07-23 16:55:55

ASP.NET特點

2009-07-27 15:52:21

ASP.NET特點ASP.NET概述

2009-07-29 13:04:59

2009-08-04 15:22:33

ASP.NET緩存機制

2009-07-22 15:58:52

ASP.NET AJA

2009-07-23 10:52:38

2009-08-04 16:46:58

ASP.NET內(nèi)置Ht

2009-08-27 17:20:30

ASP.NET登陸控件membership配

2009-08-05 17:54:04

ASP.NET運行模式

2009-07-22 10:09:59

ASP.NET MVC

2009-07-20 10:16:13

配置ASP.NET A

2009-07-28 11:09:02

ASP.NET狀態(tài)類型

2009-07-30 15:17:16

ASP.NET 2.0

2009-12-18 16:51:41

ASP.NET概述

2009-07-22 17:32:40

ASP.NET應(yīng)用程序
點贊
收藏

51CTO技術(shù)棧公眾號