版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)設(shè)計(jì)題目:基于set協(xié)議電子商務(wù)支付系統(tǒng) 的設(shè)計(jì)與實(shí)現(xiàn)一ca中心開發(fā)摘要為解決電子商務(wù)的安全問題,目前國際上通過引入安全電子交 易協(xié)議(set)的數(shù)字證書和證書管理機(jī)構(gòu)機(jī)制,建立身份認(rèn)證(ca) 體系,實(shí)現(xiàn)用戸身份的有效認(rèn)證。set協(xié)議,是未來解決電子商務(wù)安 全交易的發(fā)展方向。本文論述了 ca系統(tǒng)開發(fā)的背景和現(xiàn)狀。介紹了系統(tǒng)的需求分析 和ca各個(gè)功能模塊的設(shè)計(jì),數(shù)據(jù)庫的設(shè)計(jì),.net的開發(fā)實(shí)踐,介紹 了系統(tǒng)的測試和部署。設(shè)計(jì)和實(shí)現(xiàn)過程中主要涉及的問題包括完成了對ca系統(tǒng)的需求 分析;完成了數(shù)字證書的生成等操作的實(shí)現(xiàn);完成系統(tǒng)整體結(jié)構(gòu)的 設(shè)計(jì);和實(shí)現(xiàn)對系統(tǒng)的審核和管理功能。關(guān)鍵詞 密碼學(xué)算法
2、;ssl;ca;證書:x. 509abstractto address security issues of electronic commerce, current international agreements through the introduction of secure electronic transaction (set) in digital certificates and certificate authority system, the establishment of identity authentication (ca) system, to achieve
3、the effective user authentication. set protocol is to resolve the future direction of development of e-commerce secure transactions.this article discusses the background of ca systems development and current status. introduced ca system requirements analysis and design of each functional module, dat
4、abase design. net development practice, introduced the system of testing and deployment.design and implementation of the major issues involved in the process included the completion of the ca system needs analysis; completed a digital certificate generation, and implementation of operations; to comp
5、lete the design of the overall structure of the system; and implementation of the system audit and management functions. key words: cryptography; ssl; ca; certificate: x.5091. 緒論11.1開發(fā)背景及意義112解決的主要問題11. 3本文的主要工作214本文的組織結(jié)構(gòu)22. 相關(guān)技術(shù)簡介22. 1安全電子交易協(xié)議(set) 22. 2 x509數(shù)字證書22. 3 asp. net 技術(shù)43. 系統(tǒng)的分析與設(shè)計(jì)53. 1系統(tǒng)
6、概述632系統(tǒng)目標(biāo)和解決問題63. 3系統(tǒng)功能的分析與設(shè)計(jì)734系統(tǒng)數(shù)據(jù)庫分析與設(shè)計(jì)84. 系統(tǒng)的實(shí)現(xiàn)與測試114. 1系統(tǒng)功能的實(shí)現(xiàn)114.1.1用戶驗(yàn)證登錄114.1.2用戶證書申請114.13證書吊銷更新134.14證書下載查詢 134.1.5用戶證書驗(yàn)證154. 2系統(tǒng)功能的測試154. 2. 1系統(tǒng)功能的測試結(jié)果154. 2. 2測試中遇到的問題及解決辦法185 總結(jié)18參考文獻(xiàn):19致謝191.緒論1.1開發(fā)背景及意義隨著internet的發(fā)展,電子商務(wù)已經(jīng)逐漸成為人們進(jìn)行商務(wù)活動的新模 式。越來越多的人通過internet進(jìn)行商務(wù)活動。電了商務(wù)的發(fā)展前景十分誘人, 而其安全問題也
7、變得越來越突出,如何建立一個(gè)安全、便捷的電子商務(wù)應(yīng)用環(huán) 境,有效地識別交易雙方身份,對信息提供足夠的保護(hù),已經(jīng)成為商家和用戶 都十分關(guān)心的話題。目前國際上通過引入安全電子交易協(xié)議(set)的數(shù)字證書 和證書管理機(jī)構(gòu)機(jī)制,建立身份認(rèn)證(ca)體系,實(shí)現(xiàn)用戶身份的自效認(rèn)證。 set協(xié)議,是未來解決電子商務(wù)安全交易的發(fā)展方向。ca系統(tǒng)是通過為用戶提供證書來確認(rèn)用戶身份,保證在大型開放式網(wǎng)絡(luò)環(huán) 境下網(wǎng)絡(luò)和信息安全而被廣泛采用的有效體系。它是在公開密鑰基礎(chǔ)設(shè)施(pki) 技術(shù)研究和發(fā)展的基礎(chǔ)上建立起來的。它應(yīng)用各種加密技術(shù),使人們通過網(wǎng)絡(luò) 傳遞的信息成為安全、可靠、和可以信任的。證書是pki技術(shù)的核心,
8、證書必須真止代表客戶,它所代表的客戶的信息 必須真實(shí)準(zhǔn)確。同時(shí),證書的管理關(guān)系到證書的可靠性,證書的發(fā)布方式影響 到證書能否方便使用。為此,pki體系規(guī)范了認(rèn)證中心(ca)和注冊中心(ra)0 通過它們來進(jìn)行證書中請人的信息確認(rèn),生成證書,發(fā)放證書,管理證書。國內(nèi)外己經(jīng)建設(shè)了很多ca系統(tǒng),它們都是以國際標(biāo)準(zhǔn)為基礎(chǔ),采用各種網(wǎng) 絡(luò)技術(shù)實(shí)現(xiàn)的,在實(shí)際的應(yīng)用中發(fā)揮了重要作用,比較有名的如安全電子交 易系統(tǒng)(set) o我過近兒年也出現(xiàn)了多家ca中心,如中國電信ca認(rèn)證中心(ctca) 和中國國家郵政認(rèn)證中心(cpca) 0通過ca系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn),可以進(jìn)一步促進(jìn)密碼學(xué)的學(xué)習(xí),更好地掌握軟 件工程的開
9、發(fā)方法。1.2解決的主要問題為了保障電子商務(wù)中信息的安全如用戶購物的安全,防止用戶賬號等私人 資料在傳輸中的安全,我們采用set協(xié)議來保證用戶和商家交易過程中信息的 安全可靠,防止信息的泄露和偽造。這個(gè)過程中對信息安全起到關(guān)鍵作用的是 ca的介入。木文解決的問題就是如何去設(shè)計(jì)和實(shí)現(xiàn)ca系統(tǒng),涉及到的主要問 題有:證書的中請,證書的生成,證書的更新,證書的吊銷,證書下載查詢。13本文的主要工作本文描述了 ca系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn),對需求進(jìn)行分析并給出流程圖。本系 統(tǒng)用c#語言來完成ca系統(tǒng)的功能,并且用asp.net技術(shù)完成b/s體系結(jié)構(gòu) 的開發(fā),對程序進(jìn)行測試和發(fā)行安裝版本的制作。14本文的組織結(jié)
10、構(gòu)本文先介紹ca系統(tǒng)的開發(fā)背景以及x509數(shù)字證書、asp. net相關(guān)技術(shù)。 本文核心在于需求分析和設(shè)計(jì)實(shí)現(xiàn)部分,介紹了整個(gè)系統(tǒng)設(shè)計(jì)開發(fā)的過程。最 后部分為測試結(jié)果分析、相關(guān)問題闡述和個(gè)人。2. 相關(guān)技術(shù)簡介2.1安全電子交易協(xié)議(set)set協(xié)議主要是為了解決用戶、商家和銀行之間通過信用卡支付的交易而 設(shè)計(jì)的,要保證支付信息的機(jī)密、支付過程的完整、商戶及持卡人的合法身份, 以及可操作性。set的核心技術(shù)主要有公開密鑰加密、數(shù)字簽名、電子信封、 電了安全證書等。set能在電了交易環(huán)節(jié)上提供更大的信任度、更完整的交易 信息、更高的安全性和更少受欺詐的可能性。set協(xié)議支持b2c (busin
11、ess to consumer)類型的電了商務(wù)模式,交易分三個(gè)階段進(jìn)行筆第一階段,在購買請求階段,用戶與商家確定所用支付方式的細(xì)節(jié);第二階段,在支付的認(rèn)定階段,商家會與銀行核實(shí),隨著交易的進(jìn)展,他 們將得到付款;第三階段,在受款階段,商家 向銀行出示所有交易的細(xì)節(jié),然 后銀行以適當(dāng)方式轉(zhuǎn)移貨款。如果不是使用借記卡,而直接支付現(xiàn)金,商家在 第二階段完成以后的任何時(shí)間即可以供貨支付。第三階段將緊接著第二階段進(jìn)行。用戶只和第一階段交易有關(guān),銀行與第二、三階段有關(guān),而商家與三個(gè)階段都要發(fā)生關(guān)系。每個(gè)階段都涉及到rsa對 數(shù)據(jù)加密,以及rsa數(shù)字簽名。使用set協(xié)議,在一次交易中,要完成多次加密與解密操
12、作,故要求商家 的服務(wù)器有很高的處理能。2. 2 x509 數(shù)數(shù)字證書就是互聯(lián)網(wǎng)通訊屮標(biāo)志通訊各方身份信息的一系列數(shù)據(jù),提供了 一種在internet.h驗(yàn)證您身份的方式,其作用類似于司機(jī)的駕駛執(zhí)照或日常生 活中的身份證。它是由一個(gè)由權(quán)威機(jī)構(gòu)ca機(jī)構(gòu),又稱為證書授權(quán)(certificate authority)中心發(fā)行的,人們可以在網(wǎng)上用它來識別對方的身 份。數(shù)字證書是一個(gè)經(jīng)證書授權(quán)中心數(shù)字簽名的包含公開密鑰擁有者信息以及 公開密鑰的文件。最簡單的證書包含一個(gè)公開密鑰、名稱以及證書授權(quán)中心的 數(shù)字簽名。一般情況下證書屮述包括密鑰的有效時(shí)間,發(fā)證機(jī)關(guān)(證書授權(quán)屮 心)的名稱,該證書的序列號等信息
13、,證書的格式遵循itut x. 509國際標(biāo)準(zhǔn)。一、一個(gè)標(biāo)準(zhǔn)的x. 509數(shù)字證書包含以下一些內(nèi)容:證書的版本信息;證書的序列號,每個(gè)證書都有一個(gè)唯一的證書序列號;證書所使用的簽名算法;證書的發(fā)行機(jī)構(gòu)名稱,命名規(guī)則一般采用x. 500格式;證書的有效期,現(xiàn)在通用的證書一般采用utc時(shí)間格式,它的計(jì)時(shí)范 1950-2049;證書所有人的名稱,命名規(guī)則一般采用x. 500格式;證書所有人的公開密鑰;證書發(fā)行者對證書的簽名。二、數(shù)字證書的功能基于internet網(wǎng)的電了商務(wù)系統(tǒng)技術(shù)使在網(wǎng)上購物的顧客能夠極其方便 輕松地獲得商家和企業(yè)的信息,但同時(shí)也增加了對某些敏感或有價(jià)值的數(shù)據(jù)被 濫用的風(fēng)險(xiǎn)。買方和
14、賣方都必須對于在因特網(wǎng)上進(jìn)行的一切金融交易運(yùn)作都是 真實(shí)可靠的,并且要使顧客、商家和企業(yè)等交易各方都具有絕對的信心,因而 因特網(wǎng)(internet)電了商務(wù)系統(tǒng)必須保證具有十分可靠的安全保密技術(shù),也 就是說,必須保證網(wǎng)絡(luò)安全的四大要素,即信息傳輸?shù)谋C苄浴?shù)據(jù)交換的完 整性、發(fā)送信息的不可否認(rèn)性、交易者身份的確定性。三、數(shù)字證書原理數(shù)字證書采用公鑰體制,即利用一對互相匹配的密鑰進(jìn)行加密、解密。每 個(gè)用戶自己設(shè)定一把特定的僅為本人所知的私有密鑰(私鑰),用它進(jìn)行解密和 簽名;同時(shí)設(shè)定一把公共密鑰(公鑰)并由木人公開,為一組用戶所共享,用 于加密和驗(yàn)證簽名。當(dāng)發(fā)送一份保密文件時(shí),發(fā)送方使用接收方的
15、公鑰對數(shù)據(jù) 加密,而接收方則使用口己的私鑰解密,這樣信息就可以安全無謀地到達(dá)口的 地了。通過數(shù)字的手段保證加 密過程是一個(gè)不可逆過程,即只有用私有密鑰才 能解密。在公開密鑰密碼體制中,常用的一種是rsa體制。其數(shù)學(xué)原理是將一 個(gè)大數(shù)分解成兩個(gè)質(zhì)數(shù)的乘積,加密和解密用的是兩個(gè)不同的密鑰。即使已知 明文、密文和加密密鑰(公開密鑰),想耍推導(dǎo)出解密密鑰(私密密鑰),在計(jì) 算上是不可能的。按現(xiàn)在的計(jì)算機(jī)技術(shù)水平,要破解目前采用的1024位rsa密 鑰,需要上千年的計(jì)算時(shí)間。公開密鑰技術(shù)解決了密鑰發(fā)布的管理問題,商戶 可以公開其公開密鑰,而保留其私有密鑰。購物者可以用人人皆知的公開密鑰 對發(fā)送的信息進(jìn)行
16、加密,安全地傳送給商戶,然后由商戶用自己的私有密鑰 進(jìn) 行解密。用戶也可以采用自己的私鑰對信息加以處理,由于密鑰僅為本人所有,這 樣就產(chǎn)生了別人無法生成的文件,也就形成了數(shù)字簽名。采用數(shù)字簽名,能夠 確認(rèn)以下兩點(diǎn):(1)保證信息是由簽名者自己簽名發(fā)送的,簽名者不能否認(rèn)或 難以否認(rèn);(2)保證信息門簽發(fā)后到收到為止未曾作過任何修改,簽發(fā)的文件 是真實(shí)文件。數(shù)字簽名具體做法是:(1)將報(bào)文按雙方約定的iiasii算法計(jì)算得到一個(gè)固 定位數(shù)的報(bào)文摘耍。在數(shù)學(xué)上保證:只要改動報(bào)文小任何一位,重新計(jì)算出的報(bào) 文摘耍值就會與原先的值不相符。這樣就保證了報(bào)文的不可更改性。(2)將該 報(bào)文摘耍值用發(fā)送者的私人
17、密鑰加密,然后連同原報(bào)文一起發(fā)送給接收者,而 產(chǎn)生的報(bào)文即稱數(shù)字簽名。(3)接收方收到數(shù)字簽名后,用同樣的iiasii算法對 報(bào)文計(jì)算摘耍值,然后與用發(fā)送者的公開密鑰進(jìn)行解密解開的報(bào)文摘耍值相比 較。如相等則說明報(bào)文確實(shí)來門所稱的發(fā)送者。四、證書與證書授權(quán)中心ca機(jī)構(gòu),又稱為證書授證(certificate authority)中心,作為電了商務(wù) 交易中受信任的第三方,承擔(dān)公鑰體系小公鑰的合法性檢驗(yàn)的責(zé)任。ca中心為 每個(gè)使用公開密鑰的用戶發(fā)放一個(gè)數(shù)字證書,數(shù)字證書的作用是證明證書中列 出的用戶合法擁有證書屮列出的公開密鑰。ca機(jī)構(gòu)的數(shù)字簽名使得攻擊者不能 偽造和篡改證書。它負(fù)責(zé)產(chǎn)生、分配并管
18、理所有參與網(wǎng)上交易的個(gè)體所需的數(shù) 字證書,因此是安全電子交易的核心環(huán)節(jié)。五、數(shù)字證書的應(yīng)用數(shù)字證書可以應(yīng)用于互聯(lián)網(wǎng)上的電子商務(wù)活動和電子政務(wù)活動,其應(yīng)用范 圍涉及需耍身份認(rèn)證及數(shù)據(jù)安全的各個(gè)行業(yè),包括傳統(tǒng)的商業(yè)、制造業(yè)、流通 業(yè)的網(wǎng)上交易,以及公共事業(yè)、金融服務(wù)業(yè)、工商稅務(wù)、海關(guān)、政府行政辦公、 教育科研單位、保險(xiǎn)、醫(yī)療等網(wǎng)上作業(yè)系統(tǒng)。2. 3 asp. net 技術(shù)asp. net是建立在公共語言運(yùn)行庫上的編程框架,可用于在服務(wù)器上生成 功能強(qiáng)大的web應(yīng)用程序。與以前的web開發(fā)模型相比,asp.net提供了數(shù) 個(gè)重耍的優(yōu)點(diǎn):一、增強(qiáng)的性能。asp. net是在服務(wù)器上運(yùn)行的編譯好的公共語
19、言運(yùn)行庫 代碼。與被解釋的前輩不同,asp. net可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化 和盒外緩存服務(wù)。這相當(dāng)于在編寫代碼行z而便顯著提高了性能。二、世界級的工具支持。asp. net framework補(bǔ)充了 visual studio集成 開發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。wysiwyg編輯、拖放服務(wù)器控件和門動部 署只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種。三、威力和靈活性。由于asp. net基于公共語言運(yùn)行庫,因此web應(yīng)用 程序開發(fā)人員可以利用整個(gè)平臺的威力和靈活性。.net framework類庫、消息 處理和數(shù)據(jù)訪問解決方案都可從web無縫訪問。asp. net也與語言無關(guān),所以
20、 可以選擇最適合應(yīng)用程序的語言,或跨多種語言分割應(yīng)用程序。另外,公共語 言運(yùn)行庫的交互性保證在遷移到asp. net時(shí)保留基于com的開發(fā)中的現(xiàn)有投 資。四、簡易性。asp. net使執(zhí)行常見任務(wù)變得容易,從簡單的窗體提交和客 戶端身份驗(yàn)證到部署和站點(diǎn)配置。例如,asp. net頁框架使您可以生成將應(yīng)用 程序邏輯與表示代碼清楚分開的用戶界面,和在類似visual basic的簡單窗 體處理模型屮處理事件。另外,公共語言運(yùn)行庫利用托管代碼服務(wù)(如自動引 用計(jì)數(shù)和垃圾回收)簡化了開發(fā)。五、可管理性。asp. net采用基于文本的分層配置系統(tǒng),簡化了將設(shè)置應(yīng) 用于服務(wù)器環(huán)境和web應(yīng)用程序。由于配置
21、信息是以純文木形式存儲的,因此 可以在沒有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)也 擴(kuò)展到了 asp. net framework應(yīng)用程序的部署。只需將必耍的文件復(fù)制到服務(wù) 器,即可將asp. net framework應(yīng)用程序部署到服務(wù)器。不需要重新啟動服務(wù) 器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)。六、可縮放性和可用性。asp. net在設(shè)計(jì)時(shí)考慮了可縮放性,增加了專門 用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進(jìn)程受到asp. net 運(yùn)行庫的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(泄漏、死鎖)時(shí),可就地 創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請求。七、自定
22、義性和擴(kuò)展性。asp. net隨附了一個(gè)設(shè)計(jì)周到的結(jié)構(gòu),它使開發(fā) 人員可以在適當(dāng)?shù)募墑e“插入”代碼。實(shí)際上,可以用門己編寫的門定義組件 擴(kuò)展或替換asp. net運(yùn)行庫的任何子組件。實(shí)現(xiàn)tl定義身份驗(yàn)證或狀態(tài)服務(wù)一 直沒有變得更容易。八、安全性。借助內(nèi)置的windows身份驗(yàn)證和基于每個(gè)應(yīng)用程序的配置, 可以保證應(yīng)用程序是安全的。3. 系統(tǒng)的設(shè)計(jì)3.1系統(tǒng)概述ca系統(tǒng)為用戶提供數(shù)字證書,供用戶在網(wǎng)上進(jìn)行身份確認(rèn)和信息加密,本 系統(tǒng)分為認(rèn)證中心(ca)和注冊機(jī)構(gòu)(ra)兩部分兩部分進(jìn)行工作。認(rèn)證中心(ca)部分的主要任務(wù)(木系統(tǒng)出于方便,ra審核成功后s1ca 自動生成證書):(1) 接收驗(yàn)證最
23、終用戶數(shù)字證書的屮請。(2) 確定是否接受最終用戶數(shù)字證書的申請-證書的審批。(3) 向屮請者頒發(fā)、拒絕頒發(fā)數(shù)字證書-證書的發(fā)放。(4) 接收、處理最終用戶的數(shù)字證書更新請求-證書的更新。(5) 接收最終用戶數(shù)字證書的杳詢、撤銷。(6) 產(chǎn)生和發(fā)布證書廢止列表(crl)o(7) 數(shù)字證書的歸檔。(8) 密鑰歸檔。(9) 歷史數(shù)據(jù)歸檔。注冊機(jī)構(gòu)(ra)主要任務(wù):(1) 受理用戶相關(guān)屮請(證書的生成、吊銷、更新屮請)。(2) 證書和crl信息的發(fā)布。(3) 證書的杳詢和驗(yàn)證。(4) 日志記錄。(5) 刪除證書。用戶直接通過網(wǎng)上注冊機(jī)構(gòu),注冊用戶,申請證書等相關(guān)業(yè)務(wù)。32系統(tǒng)目標(biāo)和解決問題本系統(tǒng)的口
24、標(biāo)在于利用windows server 2003上的頒發(fā)機(jī)構(gòu),生成有效的 符合國家標(biāo)準(zhǔn)的證書,整個(gè)網(wǎng)站用c#實(shí)現(xiàn),提供在線證書的卜載查詢、吊銷更 新和驗(yàn)證。主要實(shí)現(xiàn)的功能有如下:(1) 能夠受理用戶的網(wǎng)上和現(xiàn)場屮請,完成信息的錄入。(2) 能夠生成和管理密鑰。(3) 能夠生成和管理x. 509v3證書。(5) 能夠發(fā)布證書和crlo(6) 能夠方便地在線杳詢卜載驗(yàn)證證書。(5)能夠吊銷更新證書。(7) 完善的系統(tǒng)管理功能。主耍解決問題(1) 模塊的劃分和接口設(shè)計(jì)(2) 數(shù)據(jù)庫設(shè)計(jì)。(3) ldap目錄服務(wù)的建立。3. 3系統(tǒng)功能的分析與設(shè)計(jì)水系統(tǒng)包括用戶登陸模塊、數(shù)字證書管理了模塊和驗(yàn)證數(shù)字證
25、書了模塊, 其中數(shù)字證書管理子模塊又包括數(shù)字證書申請、數(shù)字證書下載查詢、數(shù)字證書 更新吊銷等模塊。圖1系統(tǒng)框架圖fig.l system frame-chart用戶登陸管理:為了讓網(wǎng)站更加安全可靠,申請證書的必須是已知道的用圖2用戶權(quán)限管理流程圖fig.2 user permissions management flow chart用戶申請證書:用戶可以通過網(wǎng)絡(luò)填寫自己的個(gè)人信息,申請證書。用戶 屮請證書的工作流程可以為:圖3用戶申請證書流程圖fig. 3 the user appl ication certificate flow chart用戶吊銷證書:當(dāng)證書的密鑰泄露的時(shí)候,用戶可以申請
26、吊銷原來的證書, 從新申請,用戶吊銷證書的工作流程:圖4用戶吊銷證書流程圖fig .4 the user shai i revoke the certificate flow chart用戶更新證書:用戶可以為快到期限的證書續(xù)期,或者更改證書的內(nèi)容, 此時(shí)必須提交更新申請,申請的工作流程跟吊銷證書工作流程大致相同。用戶下載查詢:此功能需要需要登陸,管理員可以查詢?nèi)坑脩糇C書,各 個(gè)用戶只能查詢自己的證書。下載證書,每個(gè)id號只能下載自己所屬的證書。 根證書不用登陸可以下載。驗(yàn)證用戶證書:只需要提交證書就可以驗(yàn)證了,不需要登陸。另外可以為 其他網(wǎng)站提供驗(yàn)證接口。34系統(tǒng)數(shù)據(jù)庫分析與設(shè)計(jì)后臺數(shù)據(jù)庫
27、中分別為證書數(shù)據(jù)庫hca. mdf和用戶管理數(shù)據(jù)庫csk. mdf(,0o 主要介紹證書數(shù)據(jù)庫i1ca. mdf o證書數(shù)據(jù)庫hca. mdf*用戶自份u巴用戶管理數(shù)據(jù)庫csk. mdf圖5數(shù)據(jù)庫關(guān)聯(lián)圖fig 5 database connection diagram證書數(shù)據(jù)庫表:儲存為用戶頒發(fā)的有效證書相關(guān)信息,為杳詢提供方便。表1證書庫表tabe i 1 certificate tables列名類型說明certificateiduniqueidentifier證書lidsubjcctvarchar(8000)證書主體scrialnumbcrvarchar (100)序列號requestid
28、int申請?zhí)朾inaryccrtificatcvarchar(8000)證書二進(jìn)制代碼startdatcdatetime開始h期stopdatedatetime結(jié)束h期privatckcyvarchar(8000)私鑰publickcyvarchar (8000)公鑰s i gnaturea 1 gor i thinvarchar (8000)算法thumbprintvarchar (8000)指紋versionsnchar (20)版本issuernamenchar (20)頒布機(jī)構(gòu)名稱cor_timcdatetime記錄時(shí)間證書申請表:用戶提交證書申請,ra審核后ca根據(jù)申請的信息和用戶的
29、 個(gè)人資料為用戶頒發(fā)證書。表2證書申請表table.2 certificate application form列名類型說明noint排序requestidint屮請?zhí)杛caliduniqucidcntificr個(gè)人信息uidccrtificatcnamcvarchar (100)證書名字providornamevarchar (100)csptypcofccrtificatcvarchar (100)類型requeststatusvarchar (100)申請狀態(tài)usageint密鑰用法(交換,簽名)oldvarchar (50)過期狀態(tài)rcqucs記錄時(shí)間證書吊銷請求表:用戶吊銷證書請求,
30、ra審核后ca根據(jù)其信息為指定用 戶吊銷證書。證書吊銷庫表:過期或者吊銷的證書將存入吊銷庫中歸類,以便查詢。證書更新請求表:用戶為了續(xù)期或者更改證書內(nèi)容必須通過證書更新申請, ra審核后,ca為其更新證書。證書吊銷后更新證書數(shù)據(jù)庫表和證書吊銷庫表,用儲存過程實(shí)現(xiàn):declare revokeiduniqueidentifierdeclare ©subject nchar(100)declare binaryccrtificatc varchar(8000)dec 1 are startdate datetimedeclare stopdate datetimedecl are rev
31、okereason intdecltire privatekey varchar (8000)declare publickcy varchar(8000)dec 1 are signaturealgori thm varchar (8000)declare thumbprint varchar(8000)declare ©versions nchar(100)declare ©issuername nchar(100)declare requestid intselect revokeid=revokeid, (requestid=requestid , subject=
32、subject,binarycertificate=binarycertificate,startdate=startdate,stopdate=stopdate,revokereason=revokereason,privatekey=privatekey,publickey二publickey, signaturealgori thm=sigrmturealgori thm,thumbprint二thumbprint, versions=versions, issucrname=issuernamcfrom cer_revokerq whereserialnumberia1numberin
33、sert revokecertificate(revokeid, requestid, serialnumber, subject, binarycertificate, startdate,stopdate,revokereason,privatekey,publickey, signalurcalgorithm,thumbprint, versions, issucrname) values (©revokeid, ©requestd, serialnumber, ©subject,binarycertificate,startdate,stopdate, t
34、revokereason, privatekey, publickey,signaturealgori thm,©thumbprint,versions,tssuername )if 鮑 errorsbegindelete from certificatestore where serialnumber=seria 1 numberreturn (1)endelsebeginreturn (0)end4. 系統(tǒng)的實(shí)現(xiàn)與測試4.1系統(tǒng)功能的實(shí)現(xiàn)4.1.1用戶驗(yàn)證登錄利用visual studio 2005下的用戶登陸驗(yàn)證等控件可以完成。用login控件作為 登錄窗口,loginview
35、和loginstatus聯(lián)合實(shí)現(xiàn)注銷和登錄行為以及顯示登錄狀態(tài), passwordrecovery為找回密碼,changepassword為修改密碼。利用角色分離管理 用戶。代碼如下:辻(page. user. is inrole ("administrator") %><li><a href=,<%=page. resolveurl (/admin)>>管理</a></li>如果是administrator就顯示“管理”導(dǎo)航條。管理員登錄前后如下es主頁服務(wù)葡助主頁幫助管理圖6管理員登錄前圖fig 6 ad
36、ministrator login before figure圖7管理員登錄后圖fig 7 administrator login information.fuilhcrmorc4.1.2用戶證書申請動態(tài)鏈接庫certcl i. dl 1中的類ccertrequestclass中的方法可以提交一 個(gè)數(shù)字證書的申請請求,當(dāng)用戶要申請數(shù)字證書時(shí),輸入申請請求,然后由 submit方法向證書管理器提交,等待證書管理器的批準(zhǔn)。如下所示:#define cr_in_base64header 0#define cr_in_base64 0x1#define cr_in_pkcs10 0x100#defin
37、e cr_in_keygen 0x200string strdn;string stroid;string strpkcsio;strdn = cn二wwh;strdn = strdn+,ou二dn;strdn = strdn+,z, 0=your0rg,z;strdn = strdn+", l二yourcity"strdn = strdn+,s二qz;strdn = strdn+,ocn;cenrollclass enroll=ncw cenrollclass ();strpkcs10=cnroll. crcatcpkcsio (strdn, . 3. 6. 1. 4.
38、1. 311. 2. 1. 21); cccrtrcqucstclass strrcq=ncw cccrtrcqucstclasso;int ndisp=strreq. submit(cr in_pkcs1o| cr in base64, strpkcsio, “, set sed ;屮請請求提交后,產(chǎn)生一個(gè)請求號保存在數(shù)字證書管理器中,待批準(zhǔn)后可 以通過在數(shù)字證書管理器中查詢請求號來獲取數(shù)字證書。生成證書:certadminlib. cccrtadminclass admin = newcertadminlib. cccrtadminclass();admin rcsubmitrcqucst
39、(setset,rcqucstid);輸出證書:public static bool exportccrtification(int rcqucstid)certclientlib. iccrtrcqucst2 ccrtrcqucst = new certclientlib. cccrtrcqucstclass();xenrolllib. icenroll4 ccrtenroll = newxenrolllib. cenroll2class0;int disposition; string cert;string sccrt;del dir (rcqucstld. tostringo + pf
40、x);disposition 二 ccrtrcqucst getissucdccrtificatc("setset, requcstid, “);if (disposition 二二 3)trycert = ccrtrcqucstgetfulircsponscpropcrty(1, 0, 3, 1) as string;scert = ccrtenroll gctccrtfromrcsponsc(cert); ccrtenroll. crcatcfilcpfx("123456,d:inctpubwwwtootsetcauploads + requestid. tostrin
41、go + pfx"); /創(chuàng)建pfx文件(包含密鑰)return true;catchreturn false;elsereturn false;4.1.3證書吊銷更新動態(tài)鏈接庫certadm. dll中的ccertadminclass類中的方法可以實(shí)現(xiàn)數(shù)字證 書的更新和吊銷,如下所示:ccertadminclass admin=new ccertadminclass();admin. revokecertificate(strconfig, certno, 0, datetime. now); 其中strconfig表示證書服務(wù)器路徑,certno表示證書序列號,datetime.
42、 now 表示吊銷或更新吋間。4.1.4證書下載查詢證書下載public void tootcer (string path, string filename)string filepath =httpcontext. current. server. mappath (path+f i 1 ename) ;/路徑 fileinfo fileinfo 二 new fileinfo(filepath); httpcontext current. response. clear(); httpc on text. curre nt. resp on se. cl earc ontent (); h
43、ttpcontext. current. response. clearheaders ();iltt pco ntcxt. curre nt. resp on sc. addllcadcr (,zco ntcnt-dispos ition: achment;filename二 + filename);httpcontext. current. response. addlleader (z/content-length, fileinfo. leng th. tos tring ();htt pco nt ext. curre nt. response. addheader (z/co nt
44、ent- tra nsfer-encod in binary");httpcontcxt currcnt response- contcnttypc =application/octet-streant;iltt pco ntcxt. curre nt. resp on sc. content encod ing 二system. text. encoding. getencodingcgb2312);httpcontext current. response. writefile(fileinfo. fullname);httpcontext. current. response.
45、 flush();httpcontext. current. response. end();在visual studio. net架構(gòu)下存在x509ccrtificatc類則可以對數(shù)字證書進(jìn) 行各種查詢操作,可以獲取數(shù)字證書的主體名稱、公鑰、序列號等等。如下所示: cccrtrcqucstclass strrcq=ncw cccrtrcqucstclasso;ndisp=strreq. retrievepending(reqld, strconfig);if (ndisp=3)cert=strreq. getcertificate(1);x509certificatey cert二x509c
46、ertificate. frombase64string(cert); string subname=mycert. getname();/返回?cái)?shù)字證書的主體名其中reqld表示中請?zhí)枺瑂trconfig表示證書服務(wù)器路徑;通過中請?zhí)柨梢栽?證書存儲庫中查詢?nèi)我獾臄?shù)字證書的詳細(xì)信息。4.1.5用戶證書驗(yàn)證同樣利用動態(tài)鏈接庫動態(tài)鏈接庫certadm. dll中的相關(guān)方法 public static int isvavaliblc(string scrialnumbcr) certadminlib. ccertadminclass admin 二 newcertadminijb. ccertadm
47、inclass (); retum admin. isvalidcertificate (setset, scrialnumbcr);4. 2系統(tǒng)功能的測試系統(tǒng)測試是將已經(jīng)確認(rèn)的軟件、計(jì)算機(jī)硬件、外沒、網(wǎng)絡(luò)等其他元素結(jié)合 在一起,進(jìn)行信息系統(tǒng)的各種組裝測試和確認(rèn)測試,其目的是通過與系統(tǒng)的需 求相比較,發(fā)現(xiàn)所開發(fā)的系統(tǒng)與用戶需求不符或矛盾的地方。系統(tǒng)測試是盡可能徹底的檢查出程序中的錯(cuò)誤,提高軟件系統(tǒng)的可靠性, 其口的是檢驗(yàn)系統(tǒng)的完成情況。這階段又可分為三個(gè)步驟:模塊測試,測試每 個(gè)模塊的程序是否有錯(cuò)誤;組裝測試,測試模塊之間的接口是否正確;確認(rèn)測 試,測試整個(gè)軟件系統(tǒng)是否滿足用戶功能和性能的要求
48、。該階段結(jié)束應(yīng)交付測 試報(bào)告,說明測試數(shù)據(jù)的選擇,測試用例以及測試結(jié)果是否符合預(yù)期結(jié)果。測 試發(fā)現(xiàn)問題之后要經(jīng)過調(diào)試找出錯(cuò)誤原因和位置,然后進(jìn)行改正。4. 2.1系統(tǒng)功能的測試結(jié)果(1) 系統(tǒng)運(yùn)行之后如圖8所示:setcaservices吊創(chuàng)弊新ift字證書證書的用戶町直接登錄 系統(tǒng),在紐辦湮證書仗期更前業(yè) 務(wù)或若申話吊諂證初用戶tuktt字證書 sttiiww?證利的eh色括 個(gè)人證書和機(jī)枸證韋兩大it k».«£i£uffi.下載查詢數(shù)字證書根證節(jié),個(gè)人證書,證書獎,crl下 ft.捋供$和功鏡査誨證書驗(yàn)證用戶數(shù)字證書 益證用p數(shù)字證書有效性,苴捋操
49、 交證祜主頁含低恢岸sftca solution.o all rlghtf r«f«rv«d 2011圖8系統(tǒng)運(yùn)行界面fig 8 system operation interface(2) 普通用戶登錄后進(jìn)入服務(wù)如圖16所示:setcservices個(gè)人費(fèi)料個(gè)人信jswelcome to the client section/ 用p 申 w71e1s申諳曲x吊鈞更吊愴證書更k證節(jié)x下絨查誼敗字證節(jié)下第證書査詢證書x戶敗亨研棉檢證證書圖9普通用戶的界面fig. 9 common user interface(3) 管理員登錄后進(jìn)入管理如圖10所示:administration信且審孩用戶資稅 法直査詢welcome to the administration section$申誡審核申諼單 吊鉗審孩0更新審孩更新單用戶日志網(wǎng)誌日志日期用戶行為訪何頁面2011-5-8aalogging out/setc a/ def a ult .asp x2011-5-6bblogging out/setca/default.aspx2011-5-6adminl
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024門店承包與品牌授權(quán)執(zhí)行合同范本3篇
- 承包光伏工程勞務(wù)合同模板
- 2024薪資保密制度與員工福利待遇及社會保障合同3篇
- 鄭州工業(yè)應(yīng)用技術(shù)學(xué)院《財(cái)務(wù)機(jī)器人設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 吉首大學(xué)張家界學(xué)院《工程招投標(biāo)與合同管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年股權(quán)代持協(xié)議:股東之間關(guān)于代持股權(quán)的約定協(xié)議
- 湛江科技學(xué)院《現(xiàn)代企業(yè)運(yùn)營虛擬仿真綜合實(shí)訓(xùn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 武漢理工大學(xué)《醫(yī)藥銷售管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 益陽師范高等??茖W(xué)?!睹缹W(xué)原理》2023-2024學(xué)年第一學(xué)期期末試卷
- 北京聯(lián)合大學(xué)《數(shù)據(jù)挖掘B》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年中國大數(shù)據(jù)企業(yè)排行榜V9.0(大數(shù)據(jù)產(chǎn)業(yè)白皮書)-中國民營科技促進(jìn)會
- 2025公司簡單勞務(wù)合同書范本
- 東風(fēng)集團(tuán)新能源汽車培訓(xùn)
- 2024-2030年中國廣電技術(shù)行業(yè)現(xiàn)狀分析及未來發(fā)展趨勢預(yù)測報(bào)告
- 廣東省廣州市天河區(qū)2023-2024學(xué)年高一上學(xué)期期末考試數(shù)學(xué)試卷(解析版)
- 鋼構(gòu)樓板合同范例
- 2024-2025學(xué)年人教版(2024)信息技術(shù)四年級上冊 第11課 嘀嘀嗒嗒的秘密 說課稿
- 造影劑過敏的護(hù)理
- 物流管理概論 課件全套 王皓 第1-10章 物流與物流管理的基礎(chǔ)知識 - 物流系統(tǒng)
- 蘇教版六年級上冊分?jǐn)?shù)四則混合運(yùn)算100題帶答案
評論
0/150
提交評論