2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p>  個(gè)人日志系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b>  摘 要</b></p><p>  在互聯(lián)網(wǎng)越來越普及的今天,信息在人們的日常生活中占據(jù)了非常重要的地位,個(gè)人日志系統(tǒng)是基于ASP和SQL Server的一種在Internet上公開發(fā)布的快速更新的個(gè)人網(wǎng)站系統(tǒng),使用者可以簡單快速地完成個(gè)人網(wǎng)頁的創(chuàng)建、發(fā)布和更新,是一個(gè)方便的供廣大互聯(lián)網(wǎng)用

2、戶相互交流的平臺。它可以是單用戶的,也可以是多用戶的,本文主要研究單用戶系統(tǒng),主要包括前臺瀏覽、評論日志功能,后臺發(fā)表日志的功能、相關(guān)的管理功能和修改賬戶信息等功能。本文主要介紹了該系統(tǒng)的基本功能及具體設(shè)計(jì)實(shí)現(xiàn)方法:系統(tǒng)分析中系統(tǒng)的結(jié)構(gòu)圖分析了系統(tǒng)各模塊的功能;在系統(tǒng)設(shè)計(jì)中,詳細(xì)地展現(xiàn)了系統(tǒng)各個(gè)功能模塊的設(shè)計(jì)思路、所需的數(shù)據(jù)庫表及表字段等;最后介紹系統(tǒng)的安全功能——賬號密碼加密的必要性及具體實(shí)現(xiàn)方法。</p><p&

3、gt;  關(guān)鍵詞:個(gè)人日志系統(tǒng);ASP;SQL;加密</p><p>  Design and Implementation of Personal Journal System</p><p><b>  Abstract</b></p><p>  Nowadays, with the increasingly popularity of

4、the Internet, information has taken a main role in people's daily life, Personal Journal System is a kind of quickly renewed personal website system based on ASP and SQL Server which can be publicly released in Inter

5、net. The user can easily and fleetly do the work such as establishing, publishing a personal website and renewing it. It's a convenient platform for largeness Internet users to communicate with each other. It can be

6、single-user system or </p><p>  Key words: Personal Journal System; ASP; SQL; Encrypt</p><p><b>  目 錄</b></p><p>  論文總頁數(shù): 20頁</p><p><b>  1引言1<

7、;/b></p><p><b>  2開發(fā)概述1</b></p><p>  2.1開發(fā)背景1</p><p>  2.2系統(tǒng)概述1</p><p>  2.3開發(fā)工具概述2</p><p><b>  3系統(tǒng)分析4</b></p>

8、<p>  3.1系統(tǒng)功能流程圖4</p><p>  3.2系統(tǒng)模塊劃分4</p><p>  3.3系統(tǒng)功能設(shè)計(jì)5</p><p><b>  4數(shù)據(jù)庫設(shè)計(jì)6</b></p><p>  4.1數(shù)據(jù)庫表之間的關(guān)系6</p><p>  4.2數(shù)據(jù)庫表的詳細(xì)設(shè)計(jì)

9、7</p><p><b>  5系統(tǒng)實(shí)現(xiàn)8</b></p><p>  5.1前臺的實(shí)現(xiàn)8</p><p>  5.2后臺的實(shí)現(xiàn)9</p><p><b>  6系統(tǒng)安全13</b></p><p>  6.1系統(tǒng)安全簡介13</p>&l

10、t;p>  6.2加密算法描述13</p><p>  6.3系統(tǒng)安全實(shí)現(xiàn)15</p><p><b>  7系統(tǒng)測試15</b></p><p>  7.1訪問首頁15</p><p>  7.2后臺管理16</p><p><b>  結(jié) 論18&l

11、t;/b></p><p><b>  參考文獻(xiàn)18</b></p><p><b>  致 謝19</b></p><p><b>  聲 明20</b></p><p><b>  引言</b></p><p

12、>  個(gè)人日志系統(tǒng)是一種十分簡易的傻瓜式個(gè)人信息發(fā)布方式,讓任何人都可以像免費(fèi)電子郵件的注冊、書寫和發(fā)送一樣,簡單快速地完成個(gè)人網(wǎng)頁的創(chuàng)建、發(fā)布和更新,用戶可以通過該系統(tǒng)發(fā)布日志、圖片等各種信息,是一個(gè)方便的供廣大互聯(lián)網(wǎng)用戶相互交流的平臺。</p><p>  一般一個(gè)日志系統(tǒng)就是一個(gè)頁面,它通常由簡短而經(jīng)常更新的日志文章構(gòu)成,所有文章都是按照日期排列,現(xiàn)在流行的博客就是日志系統(tǒng)的具體表現(xiàn)??瓷先テ降瓱o奇,

13、毫無可炫耀之處,但它可以讓每個(gè)人零成本地創(chuàng)建自己的網(wǎng)絡(luò)媒體,每個(gè)人都可以隨時(shí)把自己的想法和靈感在日志系統(tǒng)站點(diǎn)上更新。它的人性化和平民視角使得它提供的消息更貼近人們的生活,而且它搜集的新聞資料大多是第一手資料。簡言之,該系統(tǒng)具有友好的用戶界面、簡單易懂的操作方式、強(qiáng)大的功能,有廣泛的應(yīng)用空間和無可比擬的價(jià)值。 </p><p><b>  開發(fā)概述</b></p><p&g

14、t;<b>  開發(fā)背景</b></p><p>  個(gè)人日志系統(tǒng)是近年來非常流行的一種快速更新的個(gè)人站點(diǎn),最初,人們將每天瀏覽網(wǎng)站的心得和意見記錄下來,并予以公開,來給其它人參考。但隨著日志系統(tǒng)的快速擴(kuò)張,它的目的與最初已相去甚遠(yuǎn)。目前網(wǎng)絡(luò)上數(shù)以千計(jì)的日志系統(tǒng)用戶發(fā)表和張貼網(wǎng)絡(luò)日志的目的有很大的差異,不過,由于溝通方式比電子郵件、討論群組更簡單和容易,日志系統(tǒng)已成為家庭、公司、部門和團(tuán)隊(duì)之

15、間越來越盛行的溝通工具,因?yàn)樗仓饾u被應(yīng)用在企業(yè)內(nèi)部網(wǎng)絡(luò),更有人稱它是繼Email、BBS、ICQ之后出現(xiàn)的第四種網(wǎng)絡(luò)交流方式。</p><p><b>  系統(tǒng)概述</b></p><p>  個(gè)人日志系統(tǒng)基本上有下列三種類型:</p><p>  1、個(gè)人雜志型。作者針對某些主題,每天貼出最新報(bào)導(dǎo),其中有個(gè)人觀察、網(wǎng)絡(luò)文章鏈接及讀者響應(yīng)等,

16、其中也有很多跟技術(shù)有關(guān)的網(wǎng)絡(luò)日志。</p><p>  2、傳統(tǒng)日記型。作者隨時(shí)寫下每日生活中的所思所感,同時(shí)也加入生活照片,是目前很多大學(xué)生等青年人群非常喜愛的一種網(wǎng)絡(luò)工具。</p><p>  3、網(wǎng)絡(luò)導(dǎo)覽型。作者以推薦當(dāng)日值得一讀的網(wǎng)絡(luò)文章、網(wǎng)站、網(wǎng)絡(luò)日志為主要任務(wù),相當(dāng)于過濾網(wǎng)絡(luò)內(nèi)容的義工,基本形式就是網(wǎng)絡(luò)資源的連接,并加入作者的觀點(diǎn)與評論,讀者也可參與討論。</p>

17、<p>  當(dāng)然也有以上述基本類型混合而成的網(wǎng)絡(luò)日志,總體而言,它們的特色都是個(gè)人化,更新快,有很多網(wǎng)絡(luò)鏈接。網(wǎng)絡(luò)日志之所以這么紅,最主要的原因還是這種工具非常方便,收費(fèi)便宜、易于使用,有的甚至完全免費(fèi),用戶從申請到建立好自己的網(wǎng)絡(luò)日志,只要短短十?dāng)?shù)分鐘。</p><p><b>  開發(fā)工具概述</b></p><p>  本系統(tǒng)所用的開發(fā)工具是ASP和

18、SQL server 2000。</p><p><b>  ASP</b></p><p>  最初,互聯(lián)網(wǎng)的應(yīng)用只局限于數(shù)據(jù)的共享,隨著客戶機(jī)/服務(wù)器模式的引入,以及Java語言、VBScript和JavaScript等腳本語言和ASP技術(shù)的應(yīng)用,互聯(lián)網(wǎng)的使用方式發(fā)生了根本的變革,網(wǎng)頁也開始精彩起來,許多條理清晰、交互性強(qiáng)、內(nèi)容豐富的網(wǎng)頁深深吸引著網(wǎng)絡(luò)用戶。<

19、;/p><p>  在網(wǎng)絡(luò)程序設(shè)計(jì)中,ASP(Active Server Pages)是服務(wù)器端的一種未經(jīng)編譯的開放式程序。程序設(shè)計(jì)者可按ASP的要求來編寫功能強(qiáng)大的網(wǎng)絡(luò)應(yīng)用程序,并實(shí)現(xiàn)服務(wù)器端的數(shù)據(jù)處理及數(shù)據(jù)上傳與下載。這種程序通常被稱作“ASP程序”(或“ASP網(wǎng)頁”)。一個(gè)ASP程序通常包括HTML標(biāo)簽語句、文本和腳本程序等。由于這類程序是以“.asp”為擴(kuò)展名存放的,因此對應(yīng)的文件可稱作“ASP文件”。<

20、;/p><p>  網(wǎng)絡(luò)開發(fā)者使用腳本語言和HTML語言設(shè)計(jì)完成一個(gè)ASP程序后,可通過文本編輯器輸入到機(jī)內(nèi),并將它保存在Web服務(wù)器的外部存儲器上(文件的擴(kuò)展名為.asp)。準(zhǔn)確地說,應(yīng)當(dāng)將ASP文件置于Web發(fā)布主目錄(C:\Inetpub\wwwroot)下,或者該主目錄的一個(gè)子目錄下。</p><p>  當(dāng)客戶從瀏覽器上讀取該ASP文件時(shí),將向Web服務(wù)器發(fā)出HTTP請求,服務(wù)器收到

21、該請求后調(diào)用ASP,讀取請求的文件,執(zhí)行其中的腳本命令,生成標(biāo)準(zhǔn)的Web頁回送給客戶的瀏覽器。此過程如下圖所示:</p><p>  該圖中,服務(wù)器與客戶機(jī)可以通過互聯(lián)網(wǎng)絡(luò)連接起來,使它們成為互聯(lián)網(wǎng)絡(luò)的兩個(gè)端點(diǎn),實(shí)際上它們可以是同一局域網(wǎng)絡(luò)內(nèi)的兩臺計(jì)算機(jī),或者是同一臺計(jì)算機(jī)。</p><p>  當(dāng)我們在安裝了IIS的電腦上打開瀏覽器,并在地址欄中輸入127.0.0.1時(shí),該計(jì)算機(jī)就已經(jīng)扮

22、演了兩個(gè)角色:作為客戶機(jī)發(fā)送瀏覽網(wǎng)頁的請求、作為Web服務(wù)器響應(yīng)客戶機(jī)的請求。</p><p>  在Windows XP上安裝IIS的過程:</p><p>  將Windows XP的系統(tǒng)光盤放入機(jī)內(nèi),打開【控制面板】選擇【添加/刪除程序】選項(xiàng),在彈出的選項(xiàng)框中選擇【添加/刪除Windows組件】選項(xiàng)卡中點(diǎn)選,然后點(diǎn)擊“下一步”進(jìn)行安裝。</p><p>  安

23、裝完成后,在c盤下會出現(xiàn)名為“Inetpub”的文件夾。</p><p>  SQL server 2000</p><p>  SQL Server 是一個(gè)關(guān)系數(shù)據(jù)庫管理系統(tǒng),是Microsoft推出的數(shù)據(jù)管理與分析軟件。SQL Server 2000是為迅速提供可伸縮性電子商務(wù)、企業(yè)及數(shù)據(jù)倉庫解決方案而開發(fā)的完整數(shù)據(jù)庫與分析軟件產(chǎn)品。SQL Server 2000定位于Internet

24、背景下的數(shù)據(jù)庫應(yīng)用,它為用戶的Web應(yīng)用提供了一款完善的數(shù)據(jù)管理和數(shù)據(jù)分析解決方案,極大地縮短了用戶開發(fā)電子商務(wù)、數(shù)據(jù)倉庫應(yīng)用的時(shí)間。SQL Server 2000還提供對XML(Extensible Markup Language擴(kuò)展標(biāo)示語言支持)和HTTP的全方位支持。 </p><p>  數(shù)據(jù)庫blog 登陸名sa 密碼hyde</p><p><b>  系統(tǒng)分析<

25、;/b></p><p><b>  系統(tǒng)功能流程圖</b></p><p><b>  系統(tǒng)模塊劃分</b></p><p>  該系統(tǒng)由前臺模塊和后臺管理模塊構(gòu)成:</p><p><b>  表1 功能模塊</b></p><p>  因?yàn)閭€(gè)

26、人日志是個(gè)人展現(xiàn)自己的一個(gè)網(wǎng)上舞臺,在這里日志所有者可以自由地把自己的個(gè)性和才能展現(xiàn)給大家,并能夠同來訪者交流,所以它的功能劃分會相對比較簡單些。</p><p><b>  系統(tǒng)功能設(shè)計(jì)</b></p><p>  前面已經(jīng)介紹了系統(tǒng)的流程與模塊劃分,這里將詳細(xì)描述各個(gè)功能模塊:</p><p><b>  表2 前臺功能列表<

27、;/b></p><p><b>  表3 后臺功能列表</b></p><p><b>  數(shù)據(jù)庫設(shè)計(jì)</b></p><p><b>  數(shù)據(jù)庫表之間的關(guān)系</b></p><p>  本系統(tǒng)需要設(shè)計(jì)的數(shù)據(jù)庫表單有:</p><p><b

28、>  表4 系統(tǒng)數(shù)據(jù)表</b></p><p>  這些數(shù)據(jù)表之間的關(guān)系如下:</p><p><b>  數(shù)據(jù)庫表的詳細(xì)設(shè)計(jì)</b></p><p>  表5 用戶信息表(blog)</p><p>  表6 類別信息表(category)</p><p>  表7 日志信息表

29、(article)</p><p>  表8日志評論信息表(feedback)</p><p>  表9 圖片信息表(picture)</p><p>  表10 鏈接信息表(href)</p><p><b>  系統(tǒng)實(shí)現(xiàn)</b></p><p><b>  前臺的實(shí)現(xiàn)</b&g

30、t;</p><p>  根據(jù)前面的描述,前臺共有4個(gè)模塊和相關(guān)的公共模塊,統(tǒng)一在首頁導(dǎo)航,首頁頁面布置如下: </p><p><b> ?。?)日志功能模塊</b></p><p>  日志版塊可以說是本系統(tǒng)里最復(fù)雜的一個(gè)前臺功能塊,文章的首頁程序要求把最近的日志的時(shí)間計(jì)算出來,然后把此時(shí)間段的日志列出。</p><p&

31、gt;  在首頁還列出了日志的評論、全部瀏覽的入口和訪問量,在日志版塊的功能中,還有日志詳細(xì)內(nèi)容頁、日志發(fā)表評論和日志列表頁。</p><p>  該模塊包括日志首頁、日志內(nèi)容顯示頁、日志評論顯示頁等頁面。</p><p><b> ?。?)圖片功能模塊</b></p><p>  圖片功能模塊同日志功能模塊很相似,也分為首頁、圖片內(nèi)容查看、圖

32、片列表頁,但沒有搜索程序,圖片可以通過在首頁單擊直接進(jìn)入圖片內(nèi)容頁。</p><p><b> ?。?)鏈接功能模塊</b></p><p>  鏈接功能模塊比較簡單,只有一個(gè)列表程序頁,它提供了日志空間所有者感興趣的網(wǎng)站的鏈接,與訪問者共享,因此只需要一個(gè)頁面把所有的鏈接列出來就可以了。</p><p><b>  (4)公共程序塊

33、</b></p><p>  公共程序塊的內(nèi)容包括:日志空間的標(biāo)識logo和一級菜單,這在前面的程序頁面規(guī)劃中已經(jīng)提到過了;還有就是日志空間頁面左邊的搜索、熱點(diǎn)評論、日志統(tǒng)計(jì)和最新鏈接,這4部分分別放在不同的程序文件中。</p><p><b>  后臺的實(shí)現(xiàn) </b></p><p>  系統(tǒng)的后臺主要體現(xiàn)管理的功能,是對前臺顯

34、示信息的管理。個(gè)人網(wǎng)上日志系統(tǒng)源于個(gè)人使用的需求,因此本系統(tǒng)是以單用戶為研究對象,如有需要以后可擴(kuò)展為多用戶系統(tǒng)。</p><p>  單用戶的日志系統(tǒng),其重點(diǎn)在于完成信息的管理、分類和思想的交流,不需要復(fù)雜的權(quán)限驗(yàn)證,所以后臺功能包括發(fā)表信息和系統(tǒng)設(shè)置兩大部分。</p><p>  (1)發(fā)表信息:發(fā)表日志、鏈接、圖片及相關(guān)的管理。</p><p>  (2)系統(tǒng)

35、設(shè)置:管理分類、管理評論、管理賬號、退出登錄。</p><p>  后臺管理功能流程圖如下:</p><p><b> ?。?)登錄驗(yàn)證 </b></p><p>  日志系統(tǒng)管理者進(jìn)入后臺時(shí),需要驗(yàn)證身份。輸入用戶名和密碼后,單擊【login】按鈕完成登錄。提交表單時(shí),通過js腳本驗(yàn)證不能提交空的用戶名和密碼:</p><

36、p>  function EW_onError(form_object, input_object, object_type, error_message) </p><p><b>  {</b></p><p>  alert(error_message);</p><p>  if (object_type ==

37、"RADIO" || object_type == "CHECKBOX") {</p><p>  if (input_object[0])</p><p>  input_object[0].focus();</p><p><b>  else</b></p><p>  in

38、put_object.focus();</p><p><b>  }</b></p><p>  else if (!(document.all && document.all["_"+input_object.name+"_editor"]))</p><p><b>  

39、{ </b></p><p>  input_object.focus(); </p><p><b>  } </b></p><p>  if (object_type == "TEXT" || object_type == "PASSWORD" || object_type == &

40、quot;TEXTAREA" || object_type == "FILE") </p><p><b>  {</b></p><p>  if (!(document.all && document.all["_"+input_object.name+"_editor"]))&

41、lt;/p><p>  input_object.select();</p><p><b>  }</b></p><p>  return false;</p><p><b>  }</b></p><p>  密碼驗(yàn)證程序是通過驗(yàn)證數(shù)據(jù)庫表blog中的賬號來判斷是否是系

42、統(tǒng)用戶:</p><p>  userid = Request.Form("userid")</p><p>  passwd = md5(Request.Form("passwd"))</p><p>  Set rs = conn.Execute( "Select * from [Blog] where [Use

43、rname] = '" & userid & "'")</p><p>  If Not rs.Eof Then</p><p>  If UCase(rs("Password")) = UCase(passwd) Then</p><p>  Session("blog_s

44、tatus_User") = rs("Username")</p><p>  Session("blog_status_UserID") = rs("BlogID")</p><p>  validpwd = True</p><p><b>  End If</b><

45、;/p><p><b>  End If</b></p><p><b>  rs.Close</b></p><p>  Set rs = Nothing</p><p>  conn.Close</p><p>  Set conn = Nothing</p>

46、<p><b>  End If</b></p><p>  (2)管理日志/鏈接/圖片</p><p>  這些都是需要發(fā)布的信息,其中日志的信息最復(fù)雜,這里主要說明管理日志功能,其他的只是數(shù)據(jù)表字段不同,管理操作的實(shí)現(xiàn)方法很相似。</p><p>  在這個(gè)功能模塊中,主要對日志空間中的日志進(jìn)行添加、編輯、刪除、拷貝等操作,這些操

47、作需要在日志列表中完成,列表是管理操作的載體,結(jié)果也在列表中體現(xiàn)。比如,添加新日志后,刷新列表就可以看到。</p><p>  列表需要解決兩個(gè)問題:快速搜索和分頁。</p><p>  (1)快速搜索的難點(diǎn)在于對輸入的關(guān)鍵字的處理,以及結(jié)果列表的排序。</p><p>  (2)分頁的難點(diǎn)在于準(zhǔn)確快速地顯示每頁的內(nèi)容。</p><p>  

48、通過對session的驗(yàn)證,判斷管理者的權(quán)限,失敗則返回登錄頁面:</p><p>  <% If Session("blog_status") <> "login" Then Response.Redirect "login.asp" %></p><p>  為了使日志列表能及時(shí)刷新,需要告訴瀏覽器不要

49、緩存此頁面。調(diào)用response對象的相關(guān)方法來禁止瀏覽器緩存此頁,具體程序見aspmkrfn.asp,該程序是日志系統(tǒng)的公共函數(shù)文件,包括格式化時(shí)間、調(diào)試、上傳文件等。</p><p>  快速搜索功能,由\admin\articlelist.asp完成,首先定義了完成搜索功能必需的變量:dbwhere、masterdetailwhere、searchwhere、a_search、b_search及wherec

50、lause,用于處理搜索條件,建立SQL查詢字符串。然后連接數(shù)據(jù)庫,執(zhí)行查詢語句,得到記錄集(recordset對象)。這樣就完成了搜索功能的大部分,剩下的就是把記錄集按照順序顯示出來。</p><p>  顯示記錄集,需要與頁面的輸出格式打交道,一般都是把記錄集顯示為列表。如果記錄集中的數(shù)據(jù)太多,就需要分頁顯示,分頁的算法是,通過頁數(shù)和分頁量計(jì)算出當(dāng)前頁的記錄在記錄集中的首位置和末位置,每翻一頁,根據(jù)提交的頁數(shù)

51、,重新計(jì)算首尾記錄的位置。</p><p><b> ?。?)管理分類</b></p><p>  管理分類的界面與日志列表相似,也包括搜索、添加、查看、修改、刪除、拷貝等功能,只是分類信息是存在分類表中的,信息保存的地方和字段不同,程序原理相同,參照日志管理列表編寫代碼,可以按照關(guān)鍵字搜索分類名稱,需要注意的是,分類表的表名為category,相關(guān)字段的名稱要對應(yīng)。

52、</p><p><b> ?。?)管理評論</b></p><p>  評論是用戶在前臺瀏覽日志等信息時(shí)發(fā)表的,在后臺可以查看其內(nèi)容,也可以選擇刪除某些評論。評論列表與前面的列表界面相似,不同在于評論只能查看和刪除。對評論列表進(jìn)行操作時(shí),修改的數(shù)據(jù)表feedback中的數(shù)據(jù),刪除評論時(shí),支持批量刪除。</p><p><b>  (

53、5)管理賬號</b></p><p>  本系統(tǒng)為單用戶系統(tǒng),只有唯一一個(gè)管理員,實(shí)際上不需要賬號列表,在此做個(gè)示意,多用戶的系統(tǒng)就需要進(jìn)行管理員權(quán)限分級,高級賬號可以管理普通賬號列表。</p><p>  賬號列表和其他列表并沒有太大區(qū)別,主要是顯示的字段信息不同,與之相關(guān)的數(shù)據(jù)表是blog,代碼與前面列表也大同小異,用戶查看賬號詳細(xì)信息,包括發(fā)表日志的數(shù)量統(tǒng)計(jì),也可以修改自

54、己賬號的密碼及其他信息。</p><p><b>  系統(tǒng)安全</b></p><p><b>  系統(tǒng)安全簡介</b></p><p>  系統(tǒng)的安全性除了網(wǎng)絡(luò)安全外,最重要的就是保障用戶口令的安全性,避免其被網(wǎng)絡(luò)黑客竊取進(jìn)而盜用用戶權(quán)限,這就需要對用戶口令進(jìn)行加密存放。在單用戶系統(tǒng)中,加密比較簡單,只需要配合用戶修改信

55、息時(shí)重新將修改后的用戶口令加密后存放。如果是在多用戶系統(tǒng)中,則還要涉及用戶注冊時(shí)對注冊時(shí)的口令進(jìn)行加密存放。</p><p>  在現(xiàn)階段,我們一般認(rèn)為存在兩種加密方式,單向加密和雙向加密。雙向加密是加密算法中最常用的,它將我們可以直接理解的明文數(shù)據(jù)加密為我們不可直接理解的密文數(shù)據(jù),也可以將密文數(shù)據(jù)解密為明文數(shù)據(jù);單向加密則只能對數(shù)據(jù)進(jìn)行加密,也就是說,沒有辦法對加密以后的數(shù)據(jù)進(jìn)行解密。在實(shí)際中的一個(gè)應(yīng)用就是數(shù)據(jù)

56、庫中的用戶信息加密,當(dāng)用戶創(chuàng)建一個(gè)新的賬號或者密碼,他的信息不是直接保存到數(shù)據(jù)庫,而是經(jīng)過一次加密以后再保存,這樣,即使這些信息被泄露,也不能立即理解這些信息的真正含義。 </p><p>  本系統(tǒng)采用的是md5加密算法。</p><p><b>  加密算法描述</b></p><p>  md5就是采用單向加密的加密算法,對于md5而言,

57、有兩個(gè)特性是很重要的,第一是任意兩段不同的明文數(shù)據(jù),加密以后的密文不能是相同的;第二是任意一段明文數(shù)據(jù),經(jīng)過加密以后,其結(jié)果必須永遠(yuǎn)是不變的。前者的意思是不可能有任意兩段明文加密以后得到相同的密文,后者的意思是如果我們加密特定的數(shù)據(jù),得到的密文一定是相同的。</p><p>  md5的全稱是message-digest algorithm 5(信息-摘要算法),在90年代初由mit laboratory for

58、 computer science和rsa data security inc的ronald l. rivest開發(fā)出來,經(jīng)md2、md3和md4發(fā)展而來。它的作用是讓大容量信息在用數(shù)字簽名軟件簽署私人密鑰前被"壓縮"成一種保密的格式(就是把一個(gè)任意長度的字節(jié)串變換成一定長的大整數(shù))。不管是md2、md4還是md5,它們都需要獲得一個(gè)隨機(jī)長度的信息并產(chǎn)生一個(gè)128位的信息摘要。雖然這些算法的結(jié)構(gòu)或多或少有些相似,但m

59、d2的設(shè)計(jì)與md4和md5完全不同,那是因?yàn)閙d2是為8位機(jī)器做過設(shè)計(jì)優(yōu)化的,而md4和md5卻是面向32位的電腦。</p><p>  對md5算法簡要的敘述可以為:md5以512位分組來處理輸入的信息,且每一分組又被劃分為16個(gè)32位子分組,經(jīng)過了一系列的處理后,算法的輸出由四個(gè)32位分組組成,將這四個(gè)32位分組級聯(lián)后將生成一個(gè)128位散列值。 </p><p>  程序主要用func

60、tion過程實(shí)現(xiàn)加密邏輯與結(jié)果返回,用sub過程實(shí)現(xiàn)加密算法的具體過程,典型代碼如下:</p><p>  Private Function LShift(lValue, iShiftBits)</p><p>  If iShiftBits = 0 Then</p><p>  LShift = lValue</p><p>  Exit

61、Function</p><p>  ElseIf iShiftBits = 31 Then</p><p>  If lValue And 1 Then</p><p>  LShift = &H80000000</p><p><b>  Else</b></p><p>  LShi

62、ft = 0</p><p><b>  End If</b></p><p>  Exit Function</p><p>  ElseIf iShiftBits < 0 Or iShiftBits > 31 Then</p><p>  Err.Raise 6</p><p>&

63、lt;b>  End If</b></p><p>  If (lValue And m_l2Power(31 - iShiftBits)) Then</p><p>  LShift = ((lValue And m_lOnBits(31 - (iShiftBits + 1))) * m_l2Power(iShiftBits)) Or &H80000000<

64、;/p><p><b>  Else</b></p><p>  LShift = ((lValue And m_lOnBits(31 - iShiftBits)) * m_l2Power(iShiftBits))</p><p><b>  End If</b></p><p>  End Funct

65、ion</p><p><b>  系統(tǒng)安全實(shí)現(xiàn)</b></p><p>  系統(tǒng)安全實(shí)現(xiàn)主要就是把md5加密文件嵌入需要用到加密的程序文件中,先在該程序文件中加入如下語句:</p><p>  <!--#include file="md5.asp"--></p><p>  可以把md5

66、算法文件當(dāng)作一個(gè)函數(shù),在需要加密的字段使用該“函數(shù)”即可。在本系統(tǒng)中有兩處需要用到md5加密,一是用戶修改密碼時(shí)(blogedit.asp):</p><p>  tmpFld = md5(Trim(x_Password))</p><p>  If Trim(tmpFld) & "x" = "x" Then tmpFld = Null<

67、;/p><p>  rs("Password") = tmpFld</p><p>  這樣用戶輸入的密碼就被加密存放在數(shù)據(jù)庫中,可以防止黑客盜取密碼,即使得到了,也是加密后的密文,無法使用。</p><p>  二是用戶登錄后臺驗(yàn)證密碼時(shí)(login.asp):</p><p>  userid = Request.Form

68、("userid")</p><p>  passwd = md5(Request.Form("passwd"))</p><p>  因?yàn)橥瑯拥拿魑慕?jīng)過md5加密后得到的密文相同,用戶登錄時(shí)輸入的密碼經(jīng)過md5加密與數(shù)據(jù)庫里存放的加密密碼對比即可判斷是否為系統(tǒng)用戶。</p><p><b>  系統(tǒng)測試</b

69、></p><p>  經(jīng)過正確配置系統(tǒng)運(yùn)行環(huán)境IIS、ODBC數(shù)據(jù)源和數(shù)據(jù)庫用戶,該系統(tǒng)運(yùn)行情況如下:</p><p><b>  訪問首頁</b></p><p>  在IE瀏覽器地址欄中輸入地址:http://127.0.0.1/index.asp即可訪問站點(diǎn)首頁,界面如下:</p><p><b>

70、;  圖6 站點(diǎn)首頁</b></p><p>  其中日志版塊和圖片版塊首頁列出了最新日志及最新圖片,而鏈接首頁則列出了所有鏈接;點(diǎn)擊進(jìn)入查看日志頁面,可以瀏覽評論、發(fā)表評論,截圖如下:</p><p><b>  圖7 評論日志</b></p><p><b>  后臺管理</b></p>&l

71、t;p>  在首頁點(diǎn)擊【登錄】,輸入正確的用戶名和密碼即可進(jìn)入后臺管理界面:</p><p><b>  圖8 后臺管理界面</b></p><p>  在后臺可以進(jìn)行添加或者修改日志/圖片/鏈接的操作,例如添加日志:</p><p><b>  圖9 添加日志</b></p><p>  管

72、理評論功能(支持批量刪除):</p><p><b>  圖10 刪除評論</b></p><p><b>  管理賬號:</b></p><p>  圖11 修改用戶信息</p><p>  經(jīng)過測試,系統(tǒng)運(yùn)行正常,能實(shí)現(xiàn)所設(shè)計(jì)的功能,包括瀏覽、評論日志,用戶登錄、修改用戶信息和相關(guān)的日志/圖片/

73、鏈接管理功能,系統(tǒng)達(dá)到預(yù)期目標(biāo)。</p><p><b>  結(jié) 論</b></p><p>  經(jīng)過幾個(gè)月的努力,終于完成了個(gè)人日志系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)以及安全保護(hù)功能,它是利用ASP和SQL Server 2000開發(fā)的用于個(gè)人用戶發(fā)布信息的簡易平臺。通過對個(gè)人日志的起源到對其特點(diǎn)和應(yīng)用前景的描述,概括了日志系統(tǒng)的基本概念;系統(tǒng)開發(fā)實(shí)現(xiàn)了瀏覽日志、發(fā)表評論的前臺功

74、能和后臺管理日志/圖片/評論/鏈接、修改賬號信息、賬號密碼安全保護(hù)等基本功能,詳細(xì)描述了系統(tǒng)運(yùn)行的情況和使用操作步驟。當(dāng)然這些都是一個(gè)個(gè)人日志系統(tǒng)最基本的功能,還可以在此基礎(chǔ)上增加更多實(shí)用功能,比如郵件系統(tǒng)等。</p><p>  由于以前很少應(yīng)用這方面的知識,所以也存在很多不足之處,比如搜索功能不完善,系統(tǒng)如果拓展為多用戶則會擁有更加強(qiáng)大的功能,這些都是有待進(jìn)一步開發(fā)的后續(xù)工作。</p><

75、p><b>  參考文獻(xiàn)</b></p><p>  [1]馬軍.ASP網(wǎng)絡(luò)編程從入門到精通[M].北京:清華大學(xué)出版社,2006。</p><p>  [2]方睿,刁仁宏,吳四九.網(wǎng)絡(luò)數(shù)據(jù)庫原理及應(yīng)用[M].成都:四川大學(xué)出版社,2005。</p><p>  [3]許曰濱,程亮.ASP網(wǎng)絡(luò)編程實(shí)例[M].北京:人民郵電出版社,2001

76、。</p><p>  [4]萬峰科技.ASP網(wǎng)站開發(fā)四“酷”全書[M]. 北京:電子工業(yè)出版社,2005。</p><p>  [5]鄧文淵,陳惠貞,陳俊榮.ASP與網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)[M].北京:中國鐵道出版社,2003。</p><p>  [6]屈喜龍,朱杰.ASP+SQL Server開發(fā)動(dòng)態(tài)網(wǎng)站實(shí)例薈萃.北京:機(jī)械工業(yè)出版社,2006</p>

77、<p>  [7]潘清芳.使用MD5 加密數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)[J].第3 卷第2 期:77-143</p><p><b>  致 謝</b></p><p>  本文是在戴維中老師的熱情關(guān)心和指導(dǎo)下完成的,他淵博的知識和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)使我受益匪淺,對順利完成本課題起到了極大的作用。在此向他表示我最衷心的感謝!</p><p> 

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論