任健
摘 要 本文主要介紹基于ASP.NET的教學(xué)管理系統(tǒng)中MD5加密算法的基本原理和具體應(yīng)用。
關(guān)鍵詞 ASP.NET 教學(xué)管理系統(tǒng) MD5加密
中圖分類號:TP3 文獻標識碼:A
0 引言
隨著時代的進步,教學(xué)改革的呼聲越來越高,與此同時,信息化校園的建設(shè)也在不斷地提上日程,伴隨著計算機網(wǎng)絡(luò)的不斷普及,各種各樣的教學(xué)管理系統(tǒng)應(yīng)運而生,作為一個基于ASP.NET技術(shù),采用B/S網(wǎng)絡(luò)架構(gòu)的教學(xué)管理系統(tǒng),在提供較好的用戶體驗與較為完善的系統(tǒng)功能的前提下,降低了客戶端的投入成本,將被廣大學(xué)校欣然接受。在校園內(nèi)部署本系統(tǒng),能夠有效地加快信息化校園建設(shè)的腳步,為廣大教師的教學(xué)及日常工作提供便利,同時,也有助于學(xué)校教務(wù)管理部門了解學(xué)校的整體教學(xué)情況,為學(xué)校的教學(xué)改革奠定基礎(chǔ)。
作為一個功能較為完善的教學(xué)管理系統(tǒng),主要提供以下功能:教師用戶登錄與注銷,授課計劃的制定、修改與提交,教案上傳,課堂考勤,授課日志錄入,成績錄入,校歷查看,調(diào)課申請,教材需求添加,個人信息維護,信息查詢,學(xué)校新聞查看,資源上傳共享等功能。
本系統(tǒng)在用戶安全性方面采用MD5加密,對用戶密碼等數(shù)據(jù)實現(xiàn)高度保密;同時,增加了網(wǎng)站流量與統(tǒng)計監(jiān)測功能,有助于系統(tǒng)使用者有效了解本系統(tǒng)在信息化校園的建設(shè)中所起到的巨大作用。
1 加密方式分類
現(xiàn)有的加密方式,主要分為單項加密和雙向加密,而在日常的使用過程中,雙向加密是最為常用的,即將能夠直接理解的明文加密成為不能夠被理解的密文,在需要的時候,可以根據(jù)特定的解密算法進行解密。
雙向加密在隱私通訊的過程中運用較為廣泛,恰恰相反,單向加密只能對數(shù)據(jù)進行加密,卻無法解密。正是因為單項加密的這一特性,使其在數(shù)據(jù)庫私密信息的加密過程中受到了廣泛的應(yīng)用。當(dāng)用戶創(chuàng)建一個新的賬號,賬號的相關(guān)隱私信息(例如:密碼、特殊信息)不是直接保存在數(shù)據(jù)庫中,而是經(jīng)過加密以后再保存。這樣,既使這些信息被泄露,人們也不能理解這些信息的真正含義,從而保證了數(shù)據(jù)的安全。
2 MD5算法簡述
MD5的全稱是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L.Rivest開發(fā)出來,經(jīng)MD2、MD3和MD4發(fā)展而來。MD5即屬于單向加密的加密算法,因此在數(shù)字簽名、身份認證、數(shù)據(jù)保密等方面得到了廣泛的應(yīng)用。
在經(jīng)過一些初始化的處理之后,MD5加密算法以512位分組來處理輸入的相關(guān)信息,其中的每一個分組又被劃分為16個32位子分組,經(jīng)過了一系列的處理后,算法的輸出由四個32位分組組成,將這四個32位分組級聯(lián)后將生成一個128位散列值。
在MD5加密算法中,首先要做的就是對信息進行填充,使其長度恰好為一個比512位的倍數(shù)僅小64位的數(shù)。填充方法是附一個1在消息后面,后接所要求的多個0,然后在其后附上64位的消息長度(填充前)。這兩步的作用是使消息長度恰好是512位的整數(shù)倍(算法的其余部分要求如此),同時確保不同的消息在填充后不相同。
MD5加密算法主循環(huán)的次數(shù)是消息中512位消息分組的數(shù)目,共有四輪,第一輪進行16次操作。每次操作對a,b,c和d中的其中三個作一次非線性函數(shù)運算,然后將所得結(jié)果加上第四個變量,文本的一個子分組和一個常數(shù)。再將所得結(jié)果向右環(huán)移一個不定的數(shù),并加上a,b,c或d中之一,最后用該結(jié)果取代a,b,c或d中之一。
MD5加密算法是一種單向加密算法,在本系統(tǒng)中主要是針對用戶的注冊登錄,用戶在注冊和登陸時所提交的信息(密碼)利用MD5算法加密之后再保存到數(shù)據(jù)庫中,這樣可以有效地防止用戶密碼的泄露,既使密碼數(shù)據(jù)被他人非法獲取,也無法進行破譯,有效地提高了系統(tǒng)的安全性。
3 ASP.NET中MD5加密算法的實現(xiàn)
4 結(jié)束語
伴隨著互聯(lián)網(wǎng)時代的不斷進步,其中普遍涉及的安全問題愈發(fā)凸顯,如何在大數(shù)據(jù)時代有效地保證數(shù)據(jù)的完整性和安全性,是我們需要不斷考慮和為之奮斗的目標。正所謂,道高一尺,魔高一丈,沒有絕對的安全,也沒有絕對的完整,今天我們討論的,只是其中很簡單、很基礎(chǔ)的一種防范方法,對于真正的互聯(lián)網(wǎng)安全,我們還有很多工作要做,我們的明天任重而道遠。