密碼與信息安全實(shí)驗(yàn)指導(dǎo)書_第1頁
密碼與信息安全實(shí)驗(yàn)指導(dǎo)書_第2頁
密碼與信息安全實(shí)驗(yàn)指導(dǎo)書_第3頁
密碼與信息安全實(shí)驗(yàn)指導(dǎo)書_第4頁
密碼與信息安全實(shí)驗(yàn)指導(dǎo)書_第5頁
已閱讀5頁,還剩150頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGE154/NUMPAGES155密碼與信息安全實(shí)驗(yàn)指導(dǎo)書皖西學(xué)院2013年7月

前言本課程是信息與計(jì)算科學(xué)專業(yè)的專業(yè)選修課程。計(jì)算機(jī)安全是一個(gè)受到全社會(huì)關(guān)注并亟待解決的大問題。本課程要緊闡述如何愛護(hù)自己的計(jì)算機(jī)以及網(wǎng)絡(luò)系統(tǒng)中的數(shù)據(jù)不被破壞和丟失,如何保證數(shù)據(jù)在傳輸過程中的安全,如何幸免數(shù)據(jù)被篡改以及確保數(shù)據(jù)的真實(shí)性等問題。本課程的要緊任務(wù)是通過各個(gè)教學(xué)環(huán)節(jié),配合實(shí)驗(yàn)手段,使學(xué)生掌握計(jì)算機(jī)系統(tǒng)安全的要緊概念和技術(shù),培養(yǎng)學(xué)生診斷系統(tǒng)錯(cuò)誤、分析系統(tǒng)安全隱患、防備系統(tǒng)遭受攻擊的能力。為從事計(jì)算機(jī)系統(tǒng)治理、科學(xué)研究打下堅(jiān)實(shí)的基礎(chǔ)。使學(xué)生掌握計(jì)算機(jī)系統(tǒng)安全差不多知識,如內(nèi)容涉及信息安全的差不多理論框架,包括網(wǎng)絡(luò)安全框架如安全模型,安全體系結(jié)構(gòu)等;對稱密碼技術(shù)、公開鑰密碼技術(shù)、HASH函數(shù)、MAC函數(shù)等差不多密碼學(xué)理論,同時(shí)也涉及到更高層的基于密碼技術(shù)的安全協(xié)議分析和應(yīng)用,也兼顧網(wǎng)絡(luò)入侵、惡意軟件、防火墻等網(wǎng)絡(luò)安全技術(shù)。本實(shí)驗(yàn)將要緊集中在涉及密碼技術(shù)的實(shí)驗(yàn)內(nèi)容上。信息安全理論和技術(shù)作為一門綜合性科目,要求學(xué)生應(yīng)具備較全面較扎實(shí)的理論基礎(chǔ),課程基礎(chǔ)涉及范圍廣,課程理論相對比較抽象和繁雜,因而同學(xué)們在學(xué)習(xí)中會(huì)有一定難度。為了使理論教學(xué)與實(shí)踐教學(xué)緊密結(jié)合,注重學(xué)生的理解和動(dòng)手能力培養(yǎng),我們安排了信息安全系列實(shí)驗(yàn)內(nèi)容來配合教學(xué)環(huán)節(jié),希望同學(xué)們能認(rèn)真獨(dú)立的完成實(shí)驗(yàn)內(nèi)容,增進(jìn)對課程內(nèi)容的理解,提高自己理論聯(lián)系實(shí)際的能力,提高自己獨(dú)立考慮解決問題的能力。本實(shí)驗(yàn)采納了一些信息安全方面開放源碼的較成熟的軟件包和部分商業(yè)化并可用于教學(xué)目的的軟件產(chǎn)品作為實(shí)驗(yàn)的差不多平臺,這有利于同學(xué)們能夠充分利用因特網(wǎng)進(jìn)行更多的實(shí)驗(yàn)內(nèi)容的收集和進(jìn)一步研究的展開,充分利用網(wǎng)絡(luò)信息安全相關(guān)資源,將更有助于本實(shí)驗(yàn)內(nèi)容的良好完成。 目錄一、信息安全差不多理論簡介 4二、實(shí)驗(yàn)差不多環(huán)境簡介 9三、系列實(shí)驗(yàn) 10實(shí)驗(yàn)一VMWARE虛擬機(jī)和WIN2000安裝 10實(shí)驗(yàn)二Sniffer網(wǎng)絡(luò)偵聽和pcap編程 14實(shí)驗(yàn)三對稱加密算法實(shí)驗(yàn) 20實(shí)驗(yàn)四公鑰算法實(shí)驗(yàn) 24實(shí)驗(yàn)五微軟CA組件安裝和配置 28實(shí)驗(yàn)六EJBCA系統(tǒng)的安裝和配置 30實(shí)驗(yàn)七SureCA系統(tǒng)的安裝和配置 45實(shí)驗(yàn)八安全電子郵件的配置和使用 62實(shí)驗(yàn)九安全WEB訪問的配置和使用 68實(shí)驗(yàn)十OPENSSL軟件包的使用 76實(shí)驗(yàn)十一OpenVPN配置和使用 82

一、信息安全差不多理論簡介對稱密碼技術(shù)對稱密碼加密也稱常規(guī)密碼加密、單鑰密碼加密、秘密密鑰加密,它包括許多數(shù)據(jù)加密方法。對稱密碼系統(tǒng)的差不多模型見下圖:其差不多特征是:數(shù)據(jù)加密和解密使用同一個(gè)密鑰;在算法公開的前提下所有秘密都在密鑰中,因此密鑰本身應(yīng)該通過另外的秘密信道傳遞。對稱密碼系統(tǒng)的安全性依靠于兩個(gè)因素:其一,加密算法強(qiáng)度至少應(yīng)該滿足:當(dāng)敵手已知算法,通過截獲密文不能導(dǎo)出明文或者發(fā)覺密鑰。更高的要求是當(dāng)敵手即使擁有部分密文以及相應(yīng)明文段落也不能導(dǎo)出明文或者發(fā)覺密鑰系統(tǒng)。其二,發(fā)送方和接收方必須以安全的方式傳遞和保存密鑰副本,對稱加密的安全性取決于密鑰的保密性而不是算法的機(jī)密性。公開鑰密碼技術(shù)公鑰密碼也稱為非對稱密碼,公鑰密碼系統(tǒng)的核心是信源端對明文加密和信宿端對密文解密時(shí)分不使用兩個(gè)相互對應(yīng),但計(jì)算上只能單向推導(dǎo)的一對密鑰。依照顧用的需要,將其中一個(gè)稱為公鑰,另一個(gè)稱為私鑰。傳統(tǒng)的對稱密碼系統(tǒng)要緊是建立在位操作基礎(chǔ)之上,而公鑰密碼算法和密鑰生成則是建立在數(shù)學(xué)函數(shù)基礎(chǔ)之上。目前,公鑰密碼理論中大量使用數(shù)論等數(shù)學(xué)理論和方法,對現(xiàn)代密碼學(xué)產(chǎn)生了深遠(yuǎn)的阻礙。公鑰加密方法的安全性要緊基于復(fù)雜數(shù)學(xué)問題的難解性假設(shè),依照所基于的數(shù)學(xué)難題來分類,以下三類系統(tǒng)目前被認(rèn)為是安全和有效的:基于大整數(shù)因子分解的公鑰密碼系統(tǒng)(如RSA)、橢圓曲線離散對數(shù)系統(tǒng)(如ECC),離散對數(shù)系統(tǒng)(如DSA)。在數(shù)據(jù)保密通信中,加密鑰匙是公開的,解密私鑰原則上不傳遞,因此密鑰的分配和治理較對稱密碼系統(tǒng)簡單。公開密鑰加密系統(tǒng)還能夠?qū)iT容易地實(shí)現(xiàn)數(shù)字簽名。因此,公鑰密碼技術(shù)適應(yīng)了電子商務(wù)應(yīng)用需要。HASH函數(shù)HASH函數(shù),又稱雜湊函數(shù),是在信息安全領(lǐng)域有廣泛和重要應(yīng)用的密碼算法,它有一種類似于指紋的應(yīng)用。在網(wǎng)絡(luò)安全協(xié)議中,雜湊函數(shù)用來處理電子簽名,將冗長的簽名文件壓縮為一段獨(dú)特的數(shù)字信息,像指紋鑒不身份一樣保證原來數(shù)字簽名文件的合法性和安全性。SHA-1和MD5是目前最常用的雜湊函數(shù)。通過這些算法的處理,原始信息即使只更動(dòng)一個(gè)字母,對應(yīng)的壓縮信息也會(huì)變?yōu)榻厝徊煌摹爸讣y”,這就保證了通過處理信息的唯一性。為電子商務(wù)等提供了數(shù)字認(rèn)證的可能性。HASH函數(shù),又稱雜湊函數(shù),是在信息安全領(lǐng)域有廣泛和重要應(yīng)用的密碼算法,它有一種類似于指紋的應(yīng)用。在網(wǎng)絡(luò)安全協(xié)議中,雜湊函數(shù)用來處理電子簽名,將冗長的簽名文件壓縮為一段獨(dú)特的數(shù)字信息,像指紋鑒不身份一樣保證原來數(shù)字簽名文件的合法性和安全性。SHA-1和MD5是目前最常用的雜湊函數(shù)。通過這些算法的處理,原始信息即使只更動(dòng)一個(gè)字母,對應(yīng)的壓縮信息也會(huì)變?yōu)榻厝徊煌摹爸讣y”,這就保證了通過處理信息的唯一性。為電子商務(wù)等提供了數(shù)字認(rèn)證的可能性。設(shè)有散列函數(shù)h=H(M),那個(gè)地點(diǎn)M是可變長度消息,h是固定長度的函數(shù)值。散列函數(shù)值行的作用是對消息M產(chǎn)生一個(gè)“摘要”,使得接收方能夠?qū)οⅲ偷耐暾赃M(jìn)行檢驗(yàn)。散列方法本身并不需要保密。MAC函數(shù)MAC函數(shù)也稱密碼校驗(yàn)和,它由如下形式的函數(shù)C產(chǎn)生:MAC=CK(M),其中M是一個(gè)變長消息,K是收發(fā)雙方共享的密鑰,CK(M)是定長的認(rèn)證符。在假定或已知消息正確時(shí),將MAC附于發(fā)送方的消息后;接收方可通過計(jì)算MAC來認(rèn)證該消息。數(shù)字簽名在收發(fā)雙方不能完全信任的情況下,數(shù)字簽名是解決該問題的最好方法。其作用相當(dāng)于手寫簽名。數(shù)字簽名滿足:必須能驗(yàn)證簽名者、簽名日期和時(shí)刻;能認(rèn)證被簽的消息內(nèi)容;應(yīng)能由第三方仲裁,以解決爭議。數(shù)字簽名必須是與消息相關(guān)的二進(jìn)制位串,簽名必須使用發(fā)送方某些獨(dú)有的信息,以防止偽造和否認(rèn),產(chǎn)生數(shù)字簽名比較容易,識不和驗(yàn)證簽名比較容易,偽造數(shù)字簽名在計(jì)算上是不可行的,保存數(shù)字簽名的拷貝是可行的。基于密碼技術(shù)的數(shù)字簽名一般采納具有數(shù)字簽名功能的公開鑰密碼算法,如RSA、DSA等。其差不多原理是使用秘密鑰加密實(shí)現(xiàn)數(shù)字簽名,使用公開鑰解密實(shí)現(xiàn)簽名驗(yàn)證。在實(shí)際應(yīng)用中,數(shù)字簽名包括兩個(gè)步驟:(1)對待簽名信息計(jì)算HASH值(2)對HASH值采納秘密鑰加密得到數(shù)字簽名值;驗(yàn)證過程是首先將數(shù)字簽名值用對應(yīng)的公開鑰解密,并和重新計(jì)算的信息的HASH值進(jìn)行比較,假如相同,證明驗(yàn)證簽名正確,否則認(rèn)為是錯(cuò)誤。數(shù)字證書數(shù)字證書是指利用數(shù)字簽名技術(shù)實(shí)現(xiàn)的經(jīng)由第三方可信的、權(quán)威的機(jī)構(gòu)CA簽發(fā)的,將被認(rèn)證對象(用戶)的身份信息和其公開鑰進(jìn)行有效捆綁而編碼形成的數(shù)字認(rèn)證信息。通過驗(yàn)證者對數(shù)字證書的驗(yàn)證,確保用戶身份和用戶公開鑰的一一對應(yīng)性,從而確認(rèn)用戶對該公開鑰的合法擁有,從而利用該公鑰進(jìn)行安全的信息加密。X509標(biāo)準(zhǔn)是數(shù)字證書的要緊標(biāo)準(zhǔn)之一。在一個(gè)標(biāo)準(zhǔn)的數(shù)字證書中,包含證書版本號、證書序列號、證書簽發(fā)者身份信息、證書擁有者(用戶)身份信息、證書有效期、證書擁有者公鑰信息、某些擴(kuò)展信息、簽名方法以及證書簽發(fā)者用自己的私鑰對以上信息所做的簽名產(chǎn)生的簽名信息。證書的驗(yàn)證要緊包括驗(yàn)證數(shù)字簽名是否正確(確認(rèn)證書是否被修改)、證書有效期是否有效、證書簽發(fā)者是否可信、證書中其他信息是否符合政策、證書是否差不多被注銷等,在證書鏈中,還應(yīng)驗(yàn)證證書鏈中所有的證書是否符合信任鏈關(guān)系等。證書注銷列表(黑名單)數(shù)字證書在有效期內(nèi)因各種緣故(對應(yīng)秘密鑰丟失、身份信息變更等)可能變得不安全,需要申請注銷。證書注銷列表是由可信的、權(quán)威的第三方機(jī)構(gòu)CA審核簽發(fā)的所有在證書有效期內(nèi),然而被注銷的證書的列表。該列表經(jīng)由CA機(jī)構(gòu)簽名保證可信。用戶通過定期下載,在驗(yàn)證證書有效性時(shí)使用。CA中心CA中心(CertificateAuthority)即數(shù)字證書認(rèn)證機(jī)構(gòu),是一個(gè)可信的、權(quán)威的第三方機(jī)構(gòu),其要緊功能確實(shí)是為用戶(包括人和設(shè)備等)簽發(fā)數(shù)字證書,并實(shí)施相應(yīng)的治理。CA的核心功能確實(shí)是發(fā)放和治理數(shù)字證書,具體描述如下:(1)接收驗(yàn)證最終用戶數(shù)字證書的申請。(2)確定是否同意最終用戶數(shù)字證書的申請—證書的審批。(3)向申請者頒發(fā)、拒絕頒發(fā)數(shù)字證書—證書的發(fā)放。(4)接收、處理最終用戶的數(shù)字證書更新請求—證書的更新。(5)接收最終用戶數(shù)字證書的查詢、撤銷。(6)產(chǎn)生和公布證書注銷列表(CRL)。(7)數(shù)字證書的歸檔。(8)密鑰歸檔。(9)歷史數(shù)據(jù)歸檔。CA的數(shù)字簽名保證了證書的合法性和權(quán)威性。主體的公鑰可有兩種產(chǎn)生方式:(1)用戶自己生成密鑰對,然后將公鑰以安全的方式傳給CA,該過程必須保證用戶公鑰的可驗(yàn)證性和完整性。(2)CA替用戶生成密鑰對,然后將其以安全的方式傳送給用戶,該過程必須確保密鑰的機(jī)密性、完整性和可驗(yàn)證性。該方式下由于用戶的私鑰為CA所產(chǎn)生,故對CA的可信性有更高的要求。RA(RegistryAuthority,注冊中心),是數(shù)字證書注冊審批機(jī)構(gòu)。RA系統(tǒng)是CA的證書發(fā)放、治理的延伸。它負(fù)責(zé)證書申請者的信息錄入、審核等工作;同時(shí),對發(fā)放的證書完成相應(yīng)的治理功能。RA系統(tǒng)是整個(gè)CA中心得以正常運(yùn)營不可缺少的一部分。但有的系統(tǒng)中,將RA合并在CA中。一般講來,注冊機(jī)構(gòu)操縱注冊、證書傳遞、其他密鑰和證書生命周期治理過程中主體、最終實(shí)體和PKI間的交換。PKI公鑰基礎(chǔ)設(shè)施(PublicKeyInfrastructure,PKI)是一個(gè)用公開鑰密碼算法原理和技術(shù)實(shí)現(xiàn)并提供安全服務(wù)的具有通用性的安全基礎(chǔ)設(shè)施。PKI是一種遵循標(biāo)準(zhǔn)的利用公鑰加密技術(shù)為電子商務(wù)、電子政務(wù)的開展提供一整套安全的基礎(chǔ)設(shè)施。用戶利用PKI平臺提供的安全服務(wù)進(jìn)行安全通信。PKI這種遵循標(biāo)準(zhǔn)的密鑰治理平臺,能夠?yàn)樗芯W(wǎng)絡(luò)應(yīng)用透明地提供采納加密和數(shù)字簽名等密碼服務(wù)所需要的密碼和證書治理。使用基于公開密鑰技術(shù)平臺的用戶建立安全通信信任機(jī)制的基礎(chǔ)是,網(wǎng)上進(jìn)行的任何需要提供安全服務(wù)的通信差不多上建立在公鑰的基礎(chǔ)之上的,而與公鑰成對的私鑰只掌握在他們與之通信的對方。那個(gè)信任的基礎(chǔ)是通過公鑰證書的使用來實(shí)現(xiàn)的。公鑰證書確實(shí)是用戶的身份與之所持有的公鑰的結(jié)合,在結(jié)合之前,由一個(gè)可信任的權(quán)威機(jī)構(gòu)———認(rèn)證機(jī)構(gòu)(CA)來證有用戶的身份。然后由可信任的CA對該用戶身份及對應(yīng)公鑰相結(jié)合的證書進(jìn)行數(shù)字簽名,用來證明證書的有效性。PKI首先必須具有可信任的認(rèn)證機(jī)構(gòu),在公鑰加密技術(shù)基礎(chǔ)上實(shí)現(xiàn)證書的產(chǎn)生、治理、存檔、發(fā)放以及證書撤銷治理等功能,并包括實(shí)現(xiàn)這些功能的硬件、軟件、人力資源、相關(guān)政策和操作規(guī)范以及為PKI體系中的各成員提供全部的安全服務(wù),例如,身份認(rèn)證、數(shù)據(jù)保密性、完整性以及不可否認(rèn)性服務(wù)等。構(gòu)建實(shí)施一個(gè)PKI系統(tǒng)要緊包括以下內(nèi)容:(1)認(rèn)證機(jī)構(gòu)證書的簽發(fā)機(jī)構(gòu),它是PKI的核心,是PKI應(yīng)用中權(quán)威的、可信任的、公正的第三方機(jī)構(gòu)。(2)證書庫證書的集中存放地,提供公眾查詢。(3)密鑰備份及恢復(fù)系統(tǒng)對用戶的解密密鑰進(jìn)行備份,當(dāng)丟失時(shí)進(jìn)行恢復(fù),而簽名密鑰不能備份和恢復(fù)。(4)證書撤銷處理系統(tǒng)證書由于某種緣故需要作廢,終止使用,將通過證書撤銷列表CRL來實(shí)現(xiàn)。(5)PKI應(yīng)用接口系統(tǒng)綜上所述,PKI是一種新的安全技術(shù),它基于公開密鑰密碼技術(shù),通過數(shù)字證書建立信任關(guān)系。PKI是利用公鑰技術(shù)實(shí)現(xiàn)電子商務(wù)安全的一種體系,是一種基礎(chǔ)設(shè)施,能夠保證網(wǎng)絡(luò)通信、網(wǎng)上交易的安全。

二、實(shí)驗(yàn)差不多環(huán)境簡介差不多的實(shí)驗(yàn)環(huán)境要緊包括以下:虛擬安全環(huán)境的建立為了保持本實(shí)驗(yàn)的獨(dú)立性和安全性,搭建一個(gè)相對獨(dú)立的安全環(huán)境專門有必要。本實(shí)驗(yàn)建議在微機(jī)實(shí)驗(yàn)平臺上首先安裝一個(gè)硬件虛擬軟件環(huán)境,如VMWARE等。在其中再安裝一個(gè)操作系統(tǒng)平臺,如WINDOWS2000SERVER等。在如此一個(gè)虛擬硬件環(huán)境和操作系統(tǒng)平臺上,安裝和配置任何的安全實(shí)驗(yàn)環(huán)境將可不能阻礙主系統(tǒng)平臺的安全性。因此實(shí)驗(yàn)內(nèi)容之一確實(shí)是建立一個(gè)如此的安全環(huán)境。安全實(shí)驗(yàn)環(huán)境內(nèi)容的總體描述本系列實(shí)驗(yàn)的總體目標(biāo)是:通過安裝和配置一系列CA系統(tǒng)(包括微軟公司操作系統(tǒng)中提供的CA模塊、商業(yè)化CA系統(tǒng)以及一些開放源碼的CA系統(tǒng)),理解并掌握CA系統(tǒng)的原理和實(shí)際使用方法;進(jìn)而依照實(shí)際應(yīng)用系統(tǒng)的安全需要,通過數(shù)字證書的使用,搭建一些差不多的PKI安全環(huán)境,從而理解并掌握在實(shí)際應(yīng)用中是如何做到基于密碼技術(shù)來完成安全化改造的,進(jìn)一步掌握PKI技術(shù)的開發(fā),能夠做到對系統(tǒng)進(jìn)行安全需求分析,并做一些較為簡單有效的安全方案,提高實(shí)際動(dòng)手能力。本系列實(shí)驗(yàn)包括的環(huán)境是:搭建微軟操作系統(tǒng)上自帶的一套PKI安全環(huán)境。在WINDOWS平臺上搭建一個(gè)基于JAVA和WEB環(huán)境的大型CA系統(tǒng)平臺。配置一個(gè)在WINDOWS平臺下基于C/S環(huán)境的CA系統(tǒng)環(huán)境。利用各種CA平臺,簽發(fā)各種類型的數(shù)字證書,并在實(shí)際應(yīng)用環(huán)境中進(jìn)行配置(典型和成熟的應(yīng)用包括:安全電子郵件系統(tǒng)、安全WEB訪問等)。在C語言環(huán)境下,利用差不多提供的安全開發(fā)包,進(jìn)行二次開發(fā),構(gòu)造一個(gè)比較實(shí)際的安全應(yīng)用,提高實(shí)際安全分析和動(dòng)手能力。在該系列實(shí)驗(yàn)內(nèi)容里,分三個(gè)層次:(1)了解和掌握CA系統(tǒng)是干什么的,什么緣故要如此,原理是什么(2)CA簽發(fā)的數(shù)字證書是如何被使用的,什么緣故能夠如此使用(3)是否能夠利用一些現(xiàn)成的開發(fā)包去構(gòu)造基于數(shù)字證書的安全應(yīng)用。假如通過實(shí)驗(yàn),達(dá)到了這三個(gè)目的,就確實(shí)是一個(gè)成功的實(shí)驗(yàn)課了。

三、系列實(shí)驗(yàn)實(shí)驗(yàn)一VMWARE虛擬機(jī)和WIN2000安裝1.1實(shí)驗(yàn)?zāi)康耐ㄟ^在主系統(tǒng)平臺上安裝和配置一個(gè)虛擬機(jī)環(huán)境,為下面的實(shí)驗(yàn)打好實(shí)驗(yàn)環(huán)境基礎(chǔ)。1.2實(shí)驗(yàn)內(nèi)容在主系統(tǒng)平臺上安裝和配置VMwareworkstation-4.5.1。在VMWARE中安裝WINDOWS2000SERVER操作系統(tǒng)。1.3實(shí)驗(yàn)指導(dǎo)1.3.1軟件預(yù)備VMware是VMware公司出品的一個(gè)多系統(tǒng)安裝軟件。利用它,你能夠在一臺電腦上將硬盤和內(nèi)存的一部分拿出來虛擬出若干臺機(jī)器,每臺機(jī)器能夠運(yùn)行單獨(dú)的操作系統(tǒng)而互不干擾,這些“新”機(jī)器各自擁有自己獨(dú)立的CMOS、硬盤和操作系統(tǒng),你能夠像使用一般機(jī)器一樣對它們進(jìn)行分區(qū)、格式化、安裝系統(tǒng)和應(yīng)用軟件等操作,還能夠?qū)⑦@幾個(gè)操作系統(tǒng)聯(lián)成一個(gè)網(wǎng)絡(luò)。在虛擬系統(tǒng)崩潰之后可直接刪除不阻礙本機(jī)系統(tǒng),同樣本機(jī)系統(tǒng)崩潰后也不阻礙虛擬系統(tǒng),能夠下次重裝后再加入往常做的虛擬系統(tǒng)。同時(shí)它也是唯一的能在Windows和Linux主機(jī)平臺上運(yùn)行的虛擬計(jì)算機(jī)軟件。VMware虛擬機(jī)軟件不需要重開機(jī),就能在同一臺電腦使用好幾個(gè)OS,不但方便,而且安全,為了更好的運(yùn)行虛擬機(jī),一般對要求宿主計(jì)算機(jī)有比較大的內(nèi)存(大于256M,推舉512M)。Windows2000SERVER操作系統(tǒng)就不用介紹了。在安裝有Vmware的系統(tǒng)上能夠在其基礎(chǔ)上安裝更多新的操作系統(tǒng)。VMWARE虛擬機(jī)安裝在安裝上沒必要作過多的介紹,請大伙兒注意的是VMware只能安裝在WinNT/2000/XP或Linux,以及FreeBSD下。裝好之后,你能夠發(fā)覺你多了兩塊名為VMwareVirtualEthernetAdapter(basichost-onlysupportforVMnet1)和VMwareVirtualEthernetAdapter(NetworkAddressTranslation(NAT)forVMnet8)的虛擬網(wǎng)卡,這也是VMware的特色所在,因?yàn)樵赩Mware下你能夠使用虛擬網(wǎng)卡進(jìn)行聯(lián)網(wǎng)設(shè)置及事實(shí)上驗(yàn)。2.建立一個(gè)虛擬系統(tǒng):WIN2000SERVER在虛擬機(jī)中的安裝雙擊桌面的“VMware”圖標(biāo),即可進(jìn)入VMware的主窗口,點(diǎn)擊右側(cè)的NewVirtualMachine即可新建一個(gè)虛擬系統(tǒng),之后選擇Typical,再選擇一種要安裝的操作系統(tǒng)?,F(xiàn)在選擇你建立的虛擬系統(tǒng),點(diǎn)擊上方工具欄中的POWERON鍵便可開機(jī)了。其他按鈕分不是POWEROFF:關(guān)機(jī)。Suspend:掛起,能夠讓虛擬機(jī)記錄下當(dāng)前虛擬系統(tǒng)的狀態(tài),下次能夠用Resume重新恢復(fù)選擇掛起時(shí)的運(yùn)行狀態(tài),以便接著工作。Reset:重啟,相當(dāng)于物理計(jì)算機(jī)的RESET按鈕。FullScreen:全屏,將虛擬機(jī)全屏顯示。現(xiàn)在一臺和真實(shí)計(jì)算機(jī)一樣的機(jī)器差不多建起來了,點(diǎn)擊虛擬機(jī)的窗口,你的鼠標(biāo)就融入虛擬系統(tǒng)了,你能夠和使用一臺確實(shí)計(jì)算機(jī)一樣使用它了,而且任何設(shè)置都可不能阻礙到你本機(jī)。假如想回到主機(jī)系統(tǒng),則能夠按Ctrl+Alt使鼠標(biāo)回到主機(jī)系統(tǒng)。不要在虛擬機(jī)中使用Ctrl+Alt+Del組合鍵,因?yàn)橹鳈C(jī)系統(tǒng)同樣也會(huì)對那個(gè)組合鍵做出反應(yīng),你應(yīng)當(dāng)使用Ctrl+Alt+Ins來代替。虛擬機(jī)的啟動(dòng)過程和你的PC的啟動(dòng)過程也是沒有什么不同的,一開始是自檢,這時(shí)按F2能夠進(jìn)入BIOS設(shè)置。每一臺虛擬機(jī)都有它自己的BIOS。請到BIOS中去設(shè)置啟動(dòng)順序(那個(gè)地點(diǎn)的BIOS因此是虛擬機(jī)中的BIOS)。之后便可使用光盤來啟動(dòng)安裝(虛擬機(jī)能夠用光盤鏡像如:ISO、vcd文件作為光盤。比如從網(wǎng)上下載的LinuxISO文件,不需刻盤,可直接安裝。軟驅(qū)同理)。你會(huì)發(fā)覺在虛擬機(jī)中的設(shè)備和你實(shí)際的設(shè)備完全不一樣,VMware為了保證系統(tǒng)的兼容性和穩(wěn)定性,把現(xiàn)有的設(shè)備都虛擬成了最標(biāo)準(zhǔn)的、兼容性最好的設(shè)備。由于實(shí)際驅(qū)動(dòng)設(shè)備的程序仍是在本機(jī)系統(tǒng)上運(yùn)行的驅(qū)動(dòng)程序,實(shí)際上的效率并沒有多少降低。因此不要試圖按照自己的機(jī)器配置系統(tǒng)。除此之外,在虛擬機(jī)中不用也不能安裝任何驅(qū)動(dòng)程序。通常在安裝完虛擬機(jī)后,需要安裝Vmwaretools(菜單VM->InstallVMTools),以便更好的支持各種驅(qū)動(dòng),如顯示等。

實(shí)驗(yàn)二Sniffer網(wǎng)絡(luò)偵聽和pcap編程2.1實(shí)驗(yàn)?zāi)康模?)了解和驗(yàn)證網(wǎng)絡(luò)安全威脅最差不多的一種形式:網(wǎng)絡(luò)竊聽。(2)掌握Ethereal等網(wǎng)絡(luò)偵聽工具的用途和用法。2.2實(shí)驗(yàn)內(nèi)容查閱資料,回憶以太網(wǎng)的工作原理。使用Sniffer工具軟件偵聽網(wǎng)絡(luò)傳輸信息,包括通信內(nèi)容及賬戶/口令等敏感信息。用winpcap/libpcap開發(fā)庫進(jìn)行編程開發(fā)(選做)。2.3實(shí)驗(yàn)指導(dǎo)網(wǎng)絡(luò)是以分組交換技術(shù)為基礎(chǔ)的,即數(shù)據(jù)分組(報(bào)文)在網(wǎng)絡(luò)中通過交換/路由設(shè)備的存儲(chǔ)-轉(zhuǎn)發(fā)接力完成遞交,因此分組完全有機(jī)會(huì)被沿途的設(shè)備查看、篡改甚至假冒。局域網(wǎng)特不是以太網(wǎng)是一個(gè)完全不設(shè)防的共享式傳輸系統(tǒng),尤其是在集線器(Hub)時(shí)代竊聽是極其容易的?,F(xiàn)在交換機(jī)(Switch)已成為主流,然而交換機(jī)并沒有從全然上解決竊聽問題。 按照以太網(wǎng)原理,以太網(wǎng)卡能夠收聽到本網(wǎng)段上的所有幀,也包括和本機(jī)無關(guān)的其它機(jī)器之間的通信。一般開機(jī)后網(wǎng)卡正常被設(shè)置為過濾模式,即只過濾接收和本機(jī)有關(guān)的幀。假如把網(wǎng)卡設(shè)置為混雜模式(promiscuous),則能夠接收到所有幀。下圖第一個(gè)能夠看到其它機(jī)器之間的流量,第二個(gè)圖是對一個(gè)NetBIOS分組的格式字段解析。(注:后面使用了不同時(shí)期的版本程序的屏幕截圖,然而和新版的差不多類似)。這種軟件差不多有專門成熟的了,比tcpdump/windump、NetXray、SnifferPro、Ethereal等,統(tǒng)稱為Sniffer軟件。因此,這些工具軟件的起始目的是為了網(wǎng)絡(luò)治理和排錯(cuò),用來演示竊聽只是順便。此類軟件一般都具有協(xié)議解析及流量分析能力,操作界面也都類似。推舉使用Ethereal或SnifferPro。Ethereal功能夠強(qiáng)大,而且是開源的,能夠從Ethereal網(wǎng)站下載,安裝是直接的。2.3.1用Sniffer工具觀看協(xié)議分組觀看ARP、UDP、TCP、DNS、HTTP、FTP、POP3、SMTP等協(xié)議的網(wǎng)絡(luò)分組格式。這些標(biāo)準(zhǔn)格式的協(xié)議分組Sniffer程序都能夠解析。其它程序使用自己的報(bào)文格式,比如QQ報(bào)文等則一般不能被解析。為了觀看特定的分組,開啟Sniffer,制造期望的分組。方法:ping一個(gè)本網(wǎng)段然而未開機(jī)的機(jī)器的IP地址,能夠引發(fā)ARP報(bào)文。ping一個(gè)最近未曾訪問過的網(wǎng)站的域名,可引發(fā)本機(jī)和DNS服務(wù)器之間的交互,能夠觀看到DNS報(bào)文,它是封裝在一個(gè)UDP報(bào)文中的。訪問某個(gè)網(wǎng)頁,能夠制造HTTP流量,順便能夠看到TCP會(huì)話,包括三次握手的過程。也可能會(huì)有DNS報(bào)文。使用Outlook或Foxmail收發(fā)郵件,能夠引發(fā)POP3和SMTP流量,差不多上封裝在TCP協(xié)議中。FTP到某個(gè)站點(diǎn),能夠觀看FTP流量。2.3.2觀看口令推舉三類能夠觀看到口令的情形。郵件口令。使用Outlook或Foxmail收發(fā)郵件,能夠捕獲賬戶口令的明文。因此也能夠看到郵件正文,只是大部分是編碼過的,不能直接看明白。Web郵件口令。專門多人適應(yīng)使用Web界面的郵件。捕獲登錄并查看Web郵件的流量,能夠看到明文口令和郵件正文內(nèi)容。登錄注冊論壇等。登錄學(xué)習(xí)論壇,記錄流量,一般能夠觀看到帳號和口令。示例如下:2.3.3開發(fā) 在Linux下能夠使用libpcap庫編程實(shí)現(xiàn)包捕獲功能。一個(gè)現(xiàn)成可參考的例子確實(shí)是基于libpcap的tcpdump,它是開源的。Windows下一般使用Winpcap,它是libpcap的移植版本,大部分接口函數(shù)相同。Windump基于Winpcap是tcpdump的翻版。Winpcap是開源的,提供開發(fā)包以及示例程序的源文件。 請下載winpcap的開發(fā)包,編譯并運(yùn)行其中的示例程序,然后觀看源程序及相關(guān)文檔,試演并提煉出簡短報(bào)告,內(nèi)容包括:winpcap庫的用法講明。一個(gè)包捕獲程序的差不多框架,要講明所調(diào)用的winpcap關(guān)鍵函數(shù)。選做:發(fā)送分組(幀),實(shí)現(xiàn)假冒和重放。2.3.4要求和建議一次實(shí)驗(yàn):某樓層以太網(wǎng),運(yùn)行Sniffer約半個(gè)小時(shí)(10:302003-2-22),實(shí)測捕得10萬個(gè)包,約100M字節(jié)。經(jīng)搜索“pass”、“psw”等關(guān)鍵字,發(fā)覺有效的帳號/口令出現(xiàn)約有8次。這種威脅不僅發(fā)生在局域網(wǎng)上,顯然也能夠發(fā)生在分組經(jīng)由的沿途交換設(shè)備及其網(wǎng)段上。建議:(1)為了看清關(guān)懷的流量,在逮包期間盡量關(guān)閉其它無關(guān)程序,尤其是P2P下載等程序。(2)某些Windows版本中(如2000服務(wù)器版)自帶的網(wǎng)絡(luò)監(jiān)視器確實(shí)是一個(gè)Sniffer程序,能夠直接使用。(3)tcpdump/windump是命令行界面的Sniffer工具程序,靈活方便,功能強(qiáng)大,建議了解并試用??紤]如何愛護(hù)網(wǎng)絡(luò)傳輸數(shù)據(jù)安全:(A)抵御竊聽;(B)發(fā)覺竊聽;(C)不被察覺地竊聽。2.3.5示例程序udpdump.c一個(gè)基于winpcap-3.1的逮包程序的框架,請參見udpdump.cinWpdPack_3_1.zip,at/。

實(shí)驗(yàn)三對稱加密算法實(shí)驗(yàn)對稱加密算法曾經(jīng)是唯一,后來才有了非對稱算法(公鑰算法)?,F(xiàn)在一般使用公鑰算法做鑒不、認(rèn)證以及協(xié)商會(huì)話密鑰,然后使用對稱算法加密批量數(shù)據(jù)。實(shí)驗(yàn)?zāi)康牧私鈱ΨQ算法的差不多工作流程。掌握對稱算法的使用方法。實(shí)驗(yàn)內(nèi)容認(rèn)識OpenSSL工具包。用簡短的程序代碼演示:分組加密算法(DES、AES)和流密碼算法(RC4)的使用,其中包括分組算法的四種應(yīng)用模式ECB、CBCCFB、OFB。編寫一個(gè)簡單然而安全的文件加密程序。實(shí)驗(yàn)指導(dǎo)分組算法在程序?qū)崿F(xiàn)時(shí)一般首先被抽象為如此一個(gè)差不多函數(shù):F(K,IN,ENC/DEC)=OUT其中IN是固定長度的輸入分組(DES算法是8字節(jié),AES是16字節(jié)),OUT是同樣長度的輸出分組,密鑰K是隨機(jī)比特串(DES是56比特,AES是128比特)。OpenSSL中實(shí)現(xiàn)的對稱算法太多,重點(diǎn)關(guān)注三個(gè):DES、AES、RC4。3.3.1DES算法函數(shù)接口在OpenSSL中,DES算法的差不多函數(shù)確實(shí)是ECB操作模式對應(yīng)的函數(shù)DES_ecb_encrypt()。該函數(shù)把一個(gè)8字節(jié)明文分組input加密成為一個(gè)8字節(jié)密文分組output。參數(shù)中密鑰結(jié)構(gòu)ks是用函數(shù)DES_set_key()預(yù)備好的,而密鑰key是用隨機(jī)數(shù)算法產(chǎn)生的64個(gè)隨機(jī)比特。參數(shù)enc指示是加密依舊解密。該函數(shù)每次只加密一個(gè)分組,因此用來加密專門多數(shù)據(jù)時(shí)并不方便。voidDES_ecb_encrypt(const_DES_cblock*input,DES_cblock*output,DES_key_schedule*ks,intenc);intDES_set_key(const_DES_cblock*key,DES_key_schedule*schedule);DES算法CBC操作模式加解密函數(shù)是DES_ncbc_encrypt()。參數(shù)length指示輸入字節(jié)長度。假如長度不是8字節(jié)的倍數(shù),則會(huì)被用0填充到8字節(jié)倍數(shù)。因此,輸出可能比length長,而且必定是8字節(jié)的倍數(shù)。voidDES_ncbc_encrypt(constunsignedchar*input,unsignedchar*output,longlength,DES_key_schedule*schedule,DES_cblock*ivec,intenc);DES算法CFB操作模式加解密函數(shù)是DES_cfb_encrypt()。參數(shù)length指示輸入字節(jié)長度。參數(shù)numbits則指示了CFB每次循環(huán)加密多少明文比特,也即密文反饋的比特?cái)?shù)目。ivec是初始向量,被看做第0個(gè)密文分組,是不用保密但應(yīng)隨機(jī)取值的8個(gè)字節(jié)。假如在一次會(huì)話中數(shù)次調(diào)用DES_cfb_encrypt(),則應(yīng)該經(jīng)歷ivec。由于CFB模式中每次DES差不多操作只加密numbits比特明文,因此假如numbits太小則效率太低。voidDES_cfb_encrypt(constunsignedchar*in,unsignedchar*out,intnumbits,longlength,DES_key_schedule*schedule,DES_cblock*ivec,intenc); 另有一個(gè)numbit是64比特的版本,既高效又沒有填充的苦惱,推舉使用。num中的返回值指示了ivec中的狀態(tài),是和下次調(diào)用銜接的。voidDES_cfb64_encrypt(constunsignedchar*in,unsignedchar*out,longlength,DES_key_schedule*schedule,DES_cblock*ivec,int*num,intenc); OFB和CFB類似,也有兩個(gè)函數(shù),用法一樣。voidDES_ofb_encrypt(constunsignedchar*in,unsignedchar*out,intnumbits,longlength,DES_key_schedule*schedule,DES_cblock*ivec);voidDES_ofb64_encrypt(constunsignedchar*in,unsignedchar*out,longlength,DES_key_schedule*schedule,DES_cblock*ivec,int*num);3.3.2AES算法函數(shù)接口典型參數(shù)的AES的差不多操作是把128比特明文在128比特密鑰指引下加密成128比特密文。OpenSSL中關(guān)于AES的函數(shù)名和參數(shù)接口和DES的雷同。相關(guān)函數(shù)名如下(參數(shù)略)。intAES_set_encrypt_key();intAES_set_decrypt_key();voidAES_ecb_encrypt();voidAES_cbc_encrypt();voidAES_cfb128_encrypt();voidAES_ofb128_encrypt();3.3.3RC4算法函數(shù)接口 RC4密碼算法是流算法,也叫序列算法。流算法是從密鑰作為種子產(chǎn)生密鑰流,明文比特流和密鑰流異或即加密。RC4算法由于算法簡潔,速度極快,密鑰長度可變,而且也沒有填充的苦惱,因此在專門多場合值得大力推舉。 OpenSSL中RC4算法有兩個(gè)函數(shù):RC4_set_key()設(shè)置密鑰,RC4()加解密。能夠把RC4看作異或,因此加密兩次即解密。voidRC4_set_key(RC4_KEY*key,intlen,constunsignedchar*data);voidRC4(RC4_KEY*key,unsignedlonglen,constunsignedchar*indata,unsignedchar*outdata);3.3.4一個(gè)文件加密例子程序 一個(gè)最簡單的(然而相當(dāng)安全的)文件加密程序例子,參見"rc4.zip"和"myrc4.zip"。3.3.5例子程序(僅作參考)DES示例程序AES示例程序RC4示例程序需要使用OpenSSL庫RC4算法從OpenSSL中分離出來了,不需要OpenSSL庫一個(gè)參考AC2ED的教學(xué)實(shí)現(xiàn),專門慢 3.3.6提示和建議 基于口令的文件加密的安全性依靠于幾個(gè)方面:算法選擇。需要使用通過考驗(yàn)的公開的加密算法,如DES/AES/RC4等;口令的質(zhì)量,以及從口令衍生密鑰的方法。建議使用PKCS#5或者類似的思路從口令產(chǎn)生密鑰。發(fā)覺錯(cuò)誤的密文或口令愛護(hù)。在加密前對明文添加校驗(yàn)愛護(hù),比如添加MD5/SHA1校驗(yàn)值,假如解密后校驗(yàn)不符則能夠斷定密文有篡改或口令不對。 做一個(gè)練習(xí)題。如何評價(jià)市面上有的“高強(qiáng)度文件夾加密”軟件聲稱“上百G的數(shù)據(jù)僅需1秒鐘完成”?請進(jìn)一步查閱網(wǎng)絡(luò)資料完成分析。

實(shí)驗(yàn)四公鑰算法實(shí)驗(yàn)使用公鑰密碼算法能夠克服協(xié)商對稱密鑰的困難,也能夠用來認(rèn)證和簽名。為了幸免公鑰算法的速度缺陷,當(dāng)前普遍使用混合密碼體制,即使用公鑰算法做鑒不和協(xié)商會(huì)話密鑰,使用對稱算法加密批量數(shù)據(jù)。公鑰密碼算法當(dāng)前仍是RSA算法占統(tǒng)治地位。OpenSSL加密函數(shù)庫中提供了對RSA等算法的支持。 4.1實(shí)驗(yàn)?zāi)康?(1)掌握公鑰算法的使用方法 (2)掌握混合密碼體制的工作原理4.2實(shí)驗(yàn)內(nèi)容 (1)使用RSA算法加解密和簽名驗(yàn)證 (2)使用混合密碼體制的文件加密4.3實(shí)驗(yàn)指導(dǎo) 不同于對稱加密算法中加密和解密使用同樣的密鑰,公鑰算法分為加密密鑰K1和解密密鑰K2兩部分,而且從K1專門難計(jì)算推導(dǎo)出K2。如此就能夠保密K2而公布K1,從而大大簡化了密鑰治理。適應(yīng)上K1稱為公鑰,K2稱為私鑰。 加密使用公鑰,解密使用私鑰。 ENC(P,K1)=C DEC(C,K2)=P RSA加密算法的步驟是如此的:找兩個(gè)隨機(jī)大素?cái)?shù)p和q;計(jì)算模n=pq和Euler函數(shù)φ(n)=(p-1)(q-1);選取數(shù)e后用擴(kuò)展Euclid算法求數(shù)d滿足ed≡1modφ(n);保密私鑰K2=(d,n),公布公鑰K1=(e,n);加密明文p時(shí),計(jì)算密文c=p^emodn;解密c時(shí),計(jì)算p=c^dmodn。RSA算法也能夠用來簽名:對消息m,其簽名s=m^dmodn;驗(yàn)證(m,s)即推斷m=?s^emodn。下面介紹OpenSSL中RSA算法的函數(shù)接口。4.3.1RSA密鑰產(chǎn)生RSA密鑰產(chǎn)生函數(shù)RSA_generate_key(),需要指定模長比特?cái)?shù)bits和公鑰指數(shù)e。另外兩個(gè)參數(shù)為NULL即可。RSA* RSA_generate_key(intbits,unsignedlonge,void(*callback)(int,int,void*),void*cb_arg);目前關(guān)于長達(dá)663比特的RSA模數(shù)差不多有成功分解的先例,因此當(dāng)前典型的應(yīng)用場合使用1024比特模長的RSA算法,現(xiàn)在一個(gè)分組是128字節(jié)。假如從文件中讀取密鑰,可使用函數(shù)PEM_read_bio_PrivateKey()/PEM_read_bio_PUBKEY(),其中EVP_PKEY中包含一個(gè)RSA結(jié)構(gòu),能夠引用。EVP_PKEY*PEM_read_bio_PrivateKey(BIO*bp,EVP_PKEY**x,pem_password_cb*cb,void*u);4.3.2RSA加密和解密RSA加密函數(shù)RSA_public_encrypt()使用公鑰部分,解密函數(shù)RSA_private_decrypt()使用私鑰。填充方式常用的有兩種RSA_PKCS1_PADDING和RSA_PKCS1_OAEP_PADDING。出錯(cuò)時(shí)返回-1。輸入必須比RSA鑰模長短至少11個(gè)字節(jié)(在RSA_PKCS1_PADDING時(shí)?)。輸出長度等于RSA鑰的模長。int RSA_public_encrypt(intflen,constunsignedchar*from,unsignedchar*to,RSA*rsa,intpadding);int RSA_private_decrypt(intflen,constunsignedchar*from,unsignedchar*to,RSA*rsa,intpadding);4.3.3RSA簽名和驗(yàn)證 簽名使用私鑰,驗(yàn)證使用公鑰。RSA簽名操作是把被簽署消息的散列值編碼后用私鑰加密,因此函數(shù)中參數(shù)type用來指示散列函數(shù)的類型,一般是NID_md5或NID_sha1。正確情況下返回0。intRSA_sign(inttype,constunsignedchar*m,unsignedintm_length,unsignedchar*sigret,unsignedint*siglen,RSA*rsa);intRSA_verify(inttype,constunsignedchar*m,unsignedintm_length,unsignedchar*sigbuf,unsignedintsiglen,RSA*rsa);4.3.4RSA算法例子程序(供參考)RSA加解密例子RSA簽名和驗(yàn)證 4.3.5設(shè)計(jì):簽名并加密(選做) 在公鑰體制中,每個(gè)人都有一對公鑰私鑰,能夠使用這對密鑰加密愛護(hù)自己的文件。通常使用對稱算法加密文件,而用公鑰算法加密對稱算法的密鑰,此即混合密碼體制。一般使用隨機(jī)數(shù)產(chǎn)生函數(shù)(OpenSSL庫中有)產(chǎn)生隨機(jī)比特用做對稱密鑰Key,選擇使用DES/AES/RC4等算法加密文件正文,而使用RSA算法加密對稱密鑰。公式化表示為: RSA(Key,K1)||RC4(Message,Key) 解密時(shí)先用私鑰解密得到Key,再用Key解密得到Message。 假如想對消息簽名以發(fā)覺變化或防篡改,通常則使用私鑰對原文的散列值進(jìn)行簽名,簽名值和原文一起存放: Message||RSA(Message,K2) 簽名和加密能夠結(jié)合起來,比如先用自己的私鑰簽名,再用對方的公鑰加密,這確實(shí)是PGP加密郵件系統(tǒng)的差不多思路。關(guān)于私鑰的保密問題。私鑰一般使用口令愛護(hù)(參見前一個(gè)實(shí)驗(yàn)),同時(shí)操作系統(tǒng)往往也限制對私鑰密文的訪問。4.3.6要求和建議 依照上面講述的思路,進(jìn)一步細(xì)化方案,并爭取能編程實(shí)現(xiàn)如此一個(gè)功能的程序。 除了OpenSSL之外,還有一些其它的環(huán)境能夠支持對稱及非對稱加密算法,比如Java/JDK中。不熟悉C/C++而擅長Java的能夠考慮使用Java環(huán)境實(shí)現(xiàn)本實(shí)驗(yàn)題目。 關(guān)于隨機(jī)數(shù)產(chǎn)生和散列函數(shù),能夠提早看一下相關(guān)資料。

實(shí)驗(yàn)五微軟CA組件安裝和配置5.1實(shí)驗(yàn)?zāi)康耐ㄟ^安裝和配置虛擬機(jī)的WINDOWS2000SERVER操作系統(tǒng)中集成的CA組件,實(shí)現(xiàn)掃瞄器證書和WEB證書的簽發(fā),進(jìn)一步了解微軟公司的PKI技術(shù)框架,并能夠使用該模塊,在實(shí)際系統(tǒng)中進(jìn)一步應(yīng)用(也能夠在安裝WINDOWS2000SERVER的時(shí)候一并選擇安裝).5.2實(shí)驗(yàn)內(nèi)容1.安裝CA組件。2.配置CA組件。3.申請證書、簽發(fā)證書、下載證書等。5.3實(shí)驗(yàn)指導(dǎo)證書授權(quán)服務(wù)器是Windows2000Server的一個(gè)附件,它放在Windows2000Server的安裝盤上。默認(rèn)安裝WINDOWS操作系統(tǒng)時(shí)是不安裝的(除非特不選擇)。它可讓你為建立和治理X509版本3的數(shù)字證書創(chuàng)建一個(gè)自定制的服務(wù)以作證書之用。你能夠?yàn)镮nternet或者公司的內(nèi)部網(wǎng)創(chuàng)建服務(wù)器證書,從而可讓你的組織完全操縱它自己的證書治理策略。設(shè)置CA:1.單擊“開始”,指向“設(shè)置”,然后單擊“操縱面板”。2.雙擊“添加/刪除程序”。3.單擊“添加/刪除Windows組件”。4.單擊“下一步”。5.單擊“證書服務(wù)”復(fù)選框,將其選中,然后單擊“下一步”。6.單擊相應(yīng)的CA類型。可用選項(xiàng)右側(cè)顯示每個(gè)頒發(fā)機(jī)構(gòu)的講明。7.假如要更改默認(rèn)密碼設(shè)置,請單擊“高級選項(xiàng)”復(fù)選框,將其選中。只有在您明白的確需要這么做時(shí),才選中此復(fù)選框。8.單擊“下一步”。9.假如選中了“高級選項(xiàng)”復(fù)選框,系統(tǒng)將提示您更改“公鑰和私鑰對”選項(xiàng)。假如未選中“高級選項(xiàng)”復(fù)選框,則接著執(zhí)行下一步。10.顯示證書頒發(fā)機(jī)構(gòu)標(biāo)識信息窗口。填入相應(yīng)的站點(diǎn)和組織信息。請注意,CA信息特不重要,因?yàn)橐盟鼇順?biāo)識所創(chuàng)建的CA對象。完成后單擊“下一步”。11.系統(tǒng)會(huì)提示您定義證書數(shù)據(jù)庫的位置、配置信息和“證書吊銷列表”(CRL)。企業(yè)CA始終將其信息(包括CRL)存儲(chǔ)在ActiveDirectory中。Microsoft建議您選中“共享文件夾”復(fù)選框。如此就指定了存儲(chǔ)CA配置信息的文件夾位置。所有CA配置信息都應(yīng)該存儲(chǔ)在一個(gè)文件夾中。12.單擊“下一步”。13.假如IIS處于運(yùn)行狀態(tài),請將其關(guān)閉。單擊“確定”以停止IIS。安裝Web組件之前必須先停止IIS。假如沒有安裝IIS,則接著執(zhí)行下一步。14.安裝次級CA時(shí),您需要:單擊“掃瞄”,找到聯(lián)機(jī)CA,或者,假如您的請求是定向到專用CA或無法從網(wǎng)絡(luò)訪問的CA,則需要單擊“將申請保存到一個(gè)文件”。15.等待安裝完成。16.單擊完成。驗(yàn)證“證書服務(wù)器”安裝:要驗(yàn)證安裝,您能夠使用以下任一方法:(1)在命令提示下鍵入netstart,確認(rèn)“證書”服務(wù)正在運(yùn)行。(2)申請證書,方法是單擊“開始”,指向“運(yùn)行”,鍵入mmc,單擊“確定”,在“操縱臺”菜單上單擊“添加/刪除治理單元”,添加證書治理單元,單擊要治理的我的用戶帳戶,右鍵單擊個(gè)人文件夾,單擊所有任務(wù),然后單擊“申請新證書”?!白C書申請向?qū)А睉?yīng)該啟動(dòng)。(3)關(guān)于獨(dú)立CA,您能夠使用InternetExplorer5連接到“http://服務(wù)器名/CertSrv”(其中服務(wù)器名是服務(wù)器的名稱),以此來申請新證書。具體證書申請方法,請參見關(guān)心內(nèi)容。

實(shí)驗(yàn)六EJBCA系統(tǒng)的安裝和配置6.1實(shí)驗(yàn)?zāi)康耐ㄟ^EJBCA系統(tǒng)的安裝和配置,一方面了解大型軟件的差不多安裝步驟,更重要的是了解和掌握作為一個(gè)典型的大型CA系統(tǒng)軟件,其功能模塊是如何構(gòu)成的,實(shí)現(xiàn)的差不多功能有哪些,掌握其優(yōu)缺點(diǎn),并能依照目前的應(yīng)用環(huán)境,寫出一個(gè)結(jié)構(gòu)性分析報(bào)告,盡量提出進(jìn)一步完善的方面,使之更適合實(shí)際應(yīng)用的需要。6.2實(shí)驗(yàn)內(nèi)容獨(dú)立完成EJBCA系統(tǒng)的各個(gè)模塊的安裝和配置,并能完成多種數(shù)字證書的申請、簽發(fā)、下載、注銷,黑名單的生成、下載等CA差不多功能。實(shí)驗(yàn)所需的具體軟件環(huán)境和所需的軟件包VMWARE虛擬硬件環(huán)境下的WINDOWS2000操作系統(tǒng),作為差不多安裝環(huán)境。EJBCA完全采納Java編寫,能夠在任何采納J2EE服務(wù)器的平臺上運(yùn)行。開發(fā)和測試是在Linux和Windows2000上進(jìn)行的。本文要緊介紹針關(guān)于WindowsXPSP2操作系統(tǒng)平臺的安裝、部署與應(yīng)用。構(gòu)筑系統(tǒng)默認(rèn)的配置平臺,所需軟件除ejbca_3_0_2.zip()外,尚需如下軟件:j2sdk-1_4_1_01-windows-i586.exe(/)JDK是Sun公司開發(fā)的Java虛擬機(jī),及Java開發(fā)工具,j2sdk-1_4_1_01-windows-i586.exe是JDK1.4版本的Windows平臺安裝軟件。JDK目前最新版本為1.5,但ejbca_3_0_2在JDK1.5平臺下,編譯、部署、安裝會(huì)出現(xiàn)諸多異常,建議使用JDK1.4。jboss-3.2.5.zip(/)JBoss是一個(gè)運(yùn)行EJB的J2EE應(yīng)用服務(wù)器。它是開放源代碼的項(xiàng)目,遵循最新的J2EE規(guī)范。從JBoss項(xiàng)目開始至今,它差不多從一個(gè)EJB容器進(jìn)展成為一個(gè)基于的J2EE的一個(gè)web操作系統(tǒng)(operatingsystemforweb),它體現(xiàn)了J2EE規(guī)范中最新的技術(shù),同時(shí)它還在theJavaWorldEditors'Choice2002評選中獲得“最佳Java應(yīng)用服務(wù)器”大獎(jiǎng)?,F(xiàn)在SUN公司差不多把JBOSS作為J2EE1.4的標(biāo)準(zhǔn)實(shí)現(xiàn)服務(wù)器。jce_policy-1_4_2.zip(/)JCE是Java(TM)CryptographyExtension的簡寫。由于進(jìn)口操縱的限制,J2SDK綁定的JCEpolicy文件,僅同意有限的加密強(qiáng)度。因此,運(yùn)行EJBCA需要下載無加密強(qiáng)度限制的加密擴(kuò)展文件。4.apache-ant-1.6.2-bin.zip ApacheAnt是一個(gè)基于Java的生成工具,那個(gè)工具的名稱是anotherneattool(另一個(gè)整潔的工具)的首字母縮寫。Ant與C或C++中的傳統(tǒng)項(xiàng)目經(jīng)常使用make工具類似,它也定義生成文件之間的依靠關(guān)系;然而,與使用特定于平臺的shell命令來實(shí)現(xiàn)生成過程所不同的是,它使用跨平臺的Java類。使用Ant,您能夠編寫單個(gè)生成文件,那個(gè)生成文件在任何Java平臺上都一致地操作,Ant的其他關(guān)鍵優(yōu)勢包括其突出的簡單性和無縫地使用自定義功能來擴(kuò)展它的能力。實(shí)驗(yàn)指導(dǎo)EJBCA軟件是OSI認(rèn)證的開源軟件,它是一個(gè)全功能的CA系統(tǒng)軟件,它基于J2EE技術(shù),并提供了一個(gè)強(qiáng)大的、高性能并基于組件的CA。EJBCA兼具靈活性和平臺獨(dú)立性,能夠獨(dú)立使用,也能和任何J2EE應(yīng)用程序集成。它具有以下特征:LGPL開源許可

建立在J2EE

1.3(EJB2.0)規(guī)范之上

靈活的、基于組件的體系結(jié)構(gòu)

多級CA

多個(gè)CA和多級CA,在一個(gè)EJBCA實(shí)例中建立一個(gè)或者多個(gè)完整的基礎(chǔ)設(shè)施

單獨(dú)運(yùn)行,或者在任何J2EE應(yīng)用中集成它

簡單的安裝和配置

強(qiáng)大的基于Web的治理界面,并采納了高強(qiáng)度的鑒不算法

支持基于命令行的治理,并支持腳本等功能

支持個(gè)人證書申請或者證書的批量生產(chǎn)

服務(wù)器和客戶端證書能夠采納PKCS12,

JKS或者PEM格式導(dǎo)出

支持采納Netscape,

Mozilla,

IE等掃瞄器直接進(jìn)行證書申請

支持采納開放API和工具通過其它應(yīng)用程序申請證書

由RA添加的新用戶能夠通過email進(jìn)行提醒

關(guān)于新用戶驗(yàn)證能夠采納隨機(jī)或者手工的方式生成密碼

支持硬件模塊,來集成硬件簽發(fā)系統(tǒng)(例如智能卡)

支持SCEP

支持用特定用戶權(quán)限和用戶組的方式來進(jìn)行多極化治理

對不同類型和內(nèi)容的證書能夠進(jìn)行證書配置

對不同類型的用戶能夠進(jìn)行實(shí)體配置

遵循X509和PKIX(RFC3280)標(biāo)準(zhǔn)

支持CRL

完全支持OCSP,包括AIA擴(kuò)展

CRL生成和基于URL的CRL分發(fā)點(diǎn)遵循RFC3280,能夠在任何SQL數(shù)據(jù)庫中存儲(chǔ)證書和CRL(通過應(yīng)用服務(wù)器來處理)。

可選的多個(gè)公布器,以用來在LDAP中公布證書和CRL

支持用來為指定用戶和證書來恢復(fù)私鑰的密鑰恢復(fù)模塊

基于組件的體系結(jié)構(gòu),用來公布證書和CRL到不同的目的地

基于組件的體系結(jié)構(gòu),用來在公布證書時(shí)采納多種實(shí)體授權(quán)方法

容易集成到大型應(yīng)用程序中,并為集成到業(yè)務(wù)流程進(jìn)行了優(yōu)化能夠通過訪問/獲得關(guān)于EJBCA的詳細(xì)資料。(i)預(yù)備工作:為治理方便,新建文件夾“EJBCA”(如F:\EJBCA),作為安裝文件的根目錄,以后安裝的所有相關(guān)程序,均在此目錄下;運(yùn)行j2sdk-1_4_1_01-windows-i586.exe,安裝J2SDK;設(shè)置安裝路徑F:\EJBCA\j2sdk1.4;解壓縮jce_policy-1_4_2.zip,得到一個(gè)JCE文件夾,將其中的local_policy.jar和US_export_policy.jar文件復(fù)制到C:\ProgramFiles\Java\j2re1.4.1_01\lib\security路徑及F:\EJBCA\j2sdk1.4\jre\lib\security路徑,覆蓋原先的同名文件即可;解壓縮apache-ant-1.6.2-bin.zip到安裝路徑F:\EJBCA下;解壓縮jboss-3.2.5.zip到安裝路徑F:\EJBCA下;解壓縮ejbca_3_0_2.zip到安裝路徑F:\EJBCA下;新建環(huán)境變量JAVA_HOME、CLASSPATH、ANT_HOME、JBOSS_HOME、EJBCA_HOME,并依照安裝路徑具體設(shè)置;如設(shè)置為:JAVA_HOME=F:\EJBCA\j2sdk1.4 CLASSPATH=F:\EJBCA\j2sdk1.4\jre\lib\security;.;F:\EJBCA\j2sdk1.4\lib;F:\EJBCA\jboss-3.2.5\server\default\lib;ANT_HOME=F:\EJBCA\apache-ant-1.6.2JBOSS_HOME=F:\EJBCA\jboss-3.2.5EJBCA_HOME=F:\EJBCA\ejbca編輯環(huán)境變量Path,在其中加入JDK,ANT,JBOSS的bin路徑,本文設(shè)置后為: Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;F:\EJBCA\j2sdk1.4\bin;F:\EJBCA\jboss-3.2.5\bin;F:\EJBCA\apache-ant-1.6.2\bin;F:\EJBCA\openldap;F:\EJBCA\mysql\bin;(ii)antbuild.xml過程點(diǎn)擊‘開始’菜單,運(yùn)行cmd,打開操縱臺窗口,切換到ejbca的安裝目錄,運(yùn)行ant命令。ant會(huì)依照ejbca目錄下的build.xml文件,創(chuàng)建、編譯、打包、復(fù)制相關(guān)文件,并最后提示BUILDSUCCESSFUL。(iii)antdeploy過程運(yùn)行ant順利通過后,鍵入antdeploy命令。最終提示你:BUILDSUCCESSFUL。這時(shí)你的JBOSS_HOME\server\default\deploy下面發(fā)覺多了ejbca-ca.ear文件件,ejbca-ca.ear是上一步命令運(yùn)行中ca.ear:時(shí)生成的,那個(gè)文件里包含了ant時(shí)打的所有的包啟動(dòng)JBOSS你會(huì)發(fā)覺有ejbca-ca.ear部署成功的信息,在啟動(dòng)JBOSS的過程中,JBOSS會(huì)對ejbca-ca.ear作一些處理。(iV)install過程在安裝之前必須啟動(dòng)JBOSS服務(wù)器,并確保貯備工作中的第三點(diǎn)JCE文件配置無誤;否則,intall命令會(huì)給出相應(yīng)的提示,并停止安裝工作。在命令行下鍵入run命令。通過一系列的配置加載,最終命令行提示,表明JBOSS服務(wù)啟動(dòng)結(jié)束。這時(shí)在掃瞄器地址欄中鍵入http://localhost:8080或http://(本機(jī)IP或域名):8080,會(huì)有如下提示:在命令提示符下,接著鍵入install命令:(粗體為系統(tǒng)提示)WelcometoEJBCAInstallationThisscriptactsasawizardhelpingyouwiththeinstallationofyourCertificateAuthority.Beforetheinstallationwillbeginmakesureofthefollowingpreparationshavebeendone:1.TheEJBCAapplicationisdeployedtotheapplicationserver.('antdeploy')2.Yourunthisinstallationwithaccesstoadministrativeprivileges.Istheserequirementsmeet(Yes/No):程序提示必須通過antdeploy將EJBCA部署到應(yīng)該服務(wù)器,同時(shí)具有administrative權(quán)限,鍵入Yes將接著下一步的安裝配置。ThisinstallationwillcreateafirstadministrativeCA.ThisCAwillbeusedtocreatethefirstsuperadministratorandfortheSSLservercertificateofadministrativewebserver.WhentheadministrativewebserverhavebeensetupyoucancreateotherCAsandadministrators.PleaseentertheshortnamefortheCA.Thisisonlyusedforadministrativepurposes,avoidspacesoroddcharacters(Ex'AdminCA1'):DragDragonCA①EntertheDistinguishedNameoftheCA.ThisisusedintheCAcertificatetodistinguishtheCA.(Ex'CN=AdminCA1,O=PrimeKeySolutionsAB,C=SE'):CN=DragDragonCA,O=QLSC,C=CN②EnterthekeysizeinbitsoftheCA,onlydigits.(Ex'2048'):2048③EnterthevalidityindaysfortheCA,onlydigits(Ex'3650'):3650④EnterthepolicyidoftheCA.PolicyiddeterminewhichPKIpolicytheCAuses.標(biāo)有數(shù)字的下劃線部分,是要設(shè)置的地點(diǎn)。其中①處為設(shè)置創(chuàng)建的CA的治理名稱,僅為治理之用。②處為填寫所創(chuàng)建CA的唯一甄不名(DistinguishedName),此名稱將會(huì)出現(xiàn)在CA根證書及其所簽發(fā)的所有證書中。①處的名稱與②處的CN名稱不必相同,因?yàn)榍罢邽橹卫砻Q,而后者才是CA機(jī)構(gòu)的對外公布名稱。接下來將輸入CA的密鑰長度合CA的有效期。Typeyourpolicyidoruse'2.0'foranypolicyor'NO'fornopolicyatall.(Ex'2.0'):2.0⑤Nowforsomeinformationrequiredtosetuptheadministrationwebinterface.在⑤處,提示輸入CA系統(tǒng)的配置ID,依照提示輸入2.0即可,接著安裝過程為EJBCA的administrativewebGUI連接創(chuàng)建一個(gè)SSL服務(wù)器端證書,以備治理員通過SSL協(xié)議連接治理服務(wù)器驗(yàn)證之用。PleaseenterthecomputernameofCAserver.(Ex'caserver.primekey.se'):56⑥EntertheDistinguishedNameoftheSSLservercertificateusedbythead

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論