freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

房產(chǎn)證信息數(shù)字簽名的實(shí)現(xiàn)—免費(fèi)計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文(已改無(wú)錯(cuò)字)

2023-01-11 10:12:24 本頁(yè)面
  

【正文】 m SSLeay */ ifdef LITTLE_ENDIAN define blk0(i) (blockl[i] = (rol(blockl[i],24)amp。0xFF00FF00) \ |(rol(blockl[i],8)amp。0x00FF00FF)) else define blk0(i) blockl[i] endif define blk(i) (blockl[iamp。15] = rol(blockl[(i+13)amp。15]^blockl[(i+8)amp。15] \ ^blockl[(i+2)amp。15]^blockl[iamp。15],1)) /* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */ define R0(v,w,x,y,z,i) z+=((wamp。(x^y))^y)+blk0(i)+0x5A827999+rol(v,5)。w=rol(w,30)。/*對(duì)常用公式進(jìn)行宏定`` 義 ,以精簡(jiǎn)程序 */ define R1(v,w,x,y,z,i) z+=((wamp。(x^y))^y)+blk(i)+0x5A827999+rol(v,5)。w=rol(w,30)。 define R2(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0x6ED9EBA1+rol(v,5)。w=rol(w,30)。 define R3(v,w,x,y,z,i) z+=(((w|x)amp。y)|(wamp。x))+blk(i)+0x8F1BBCDC+rol(v,5)。w=rol(w,30)。 define R4(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0xCA62C1D6+rol(v,5)。w=rol(w,30)。 在對(duì)文件進(jìn)行安全哈希后得到了一個(gè)消息摘要文件,對(duì)文件的簽名除 了需要消息摘要文件以外還需要用戶持有的私鑰文件,有了這兩個(gè)必須的,就可以對(duì)原文件進(jìn)行簽名運(yùn)算了,在生成簽名的時(shí)候我們將會(huì)用到生成簽名算法 。 生成簽名算法的具體實(shí)現(xiàn)代碼如下 : void GensigDlg::OnGensig() { // TODO: Add your control notification handler code here if(()){ MessageBox(請(qǐng)導(dǎo)入私鑰 ,NULL,MB_ICONERROR|MB_OK)。 return。 } if(()){ MessageBox(請(qǐng)選擇要簽名的文件 ,NULL,MB_ICONERROR|MB_OK)。 return。 } //sha// int i。 SHA1_CTX context。 unsigned char digest[20], buffer[16384]。 FILE* file。 if(!(file=fopen(LPCTSTR(m_strF),rb))){ MessageBox(無(wú)法打開文件 !)。 return。 } SHA1Init(amp。context)。 while (!feof(file)) { // note: what if ferror(file) i = fread(buffer, 1, 16384, file)。 SHA1Update(amp。context, buffer, i)。 } SHA1Final(digest, amp。context)。 fclose(file)。 //// (0)。 for(int j=0。j5。j++){ memcpy(amp。[j],amp。digest[j*4],4)。 } =5。 `` CRsa enc。 ((dig,n,pk))。 (m_strS)。 UpdateData(FALSE)。 } 簽名驗(yàn)證模塊 此模塊主要是用于鑒別用戶的數(shù)字證書的真?zhèn)涡缘?。在這個(gè)模塊用戶只需要把自己的私鑰文件和前一個(gè)模塊地到的簽名文件與用戶填寫的房產(chǎn)證 公文 文件共同導(dǎo)入這個(gè)模塊通過(guò)計(jì)算機(jī)的運(yùn)算對(duì)比就可以得出真假的鑒別結(jié)果。在此過(guò)程中必須要保證用戶的私有信息要完全準(zhǔn)確無(wú)誤,還需要這個(gè)用戶有自己的私鑰文件和相應(yīng)的數(shù)字簽名文件,在這三個(gè)條件都能滿足驗(yàn)證系統(tǒng)的要求的情況下得出的真?zhèn)舞b別結(jié)論可信度是值得肯定的,具體實(shí)現(xiàn)如圖 8 所示 。 圖 8 簽名與驗(yàn)證模塊圖 在對(duì)證書文件進(jìn)行簽名以后,如果用戶需要知道自己的證 書是不是真的,他就需要通過(guò)管理中心來(lái)對(duì)自己的證書進(jìn)行鑒別和驗(yàn)證 。 驗(yàn)證簽名過(guò)程的實(shí)行通過(guò)以下一段 VC++代碼來(lái)實(shí)現(xiàn)其驗(yàn)證功能 void CersigDlg::OnCers() { // TODO: Add your control notification handler code here if(()){ MessageBox(請(qǐng)導(dǎo)入公鑰 ,NULL,MB_ICONERROR|MB_OK)。 return。 } if(()){ MessageBox(請(qǐng)選擇簽名文件 ,NULL,MB_ICONERROR|MB_OK)。 return。 } if(()){ `` MessageBox(請(qǐng)導(dǎo)入簽名 ,NULL,MB_ICONERROR|MB_OK)。 return。 } //sha// int i。 SHA1_CTX context。 unsigned char digest[20], buffer[16384]。 FILE* file。 if(!(file=fopen(LPCTSTR(m_strF),rb))){ MessageBox(無(wú)法打開文件 !)。 return。 } SHA1Init(amp。context)。 while (!feof(file)) { // note: what if ferror(file) i = fread(buffer, 1, 16384, file)。 SHA1Update(amp。context, buffer, i)。 } SHA1Final(digest, amp。context)。 fclose(file)。 //// (0)。 for(int j=0。j5。j++){ memcpy(amp。[j],amp。digest[j*4],4)。 } =5。 CRsa cer。 if(((sig,n,uk))==0){ MessageBox(簽名合法 ,NULL,MB_ICONINFORMATION|MB_OK)。 }else MessageBox(簽名不合法 ,NULL,MB_ICONERROR|MB_OK)。 } 4 系統(tǒng)實(shí)現(xiàn) 密鑰生成模塊產(chǎn)生密鑰的過(guò)程 密鑰生成子系統(tǒng), 是一個(gè) 通過(guò) RSA 加密算法生 來(lái) 成 密鑰的模塊,本模塊可以產(chǎn)生一個(gè)公鑰和一個(gè)對(duì)應(yīng)的私鑰,生成的公鑰由房產(chǎn)證書的持有人保存。公鑰則對(duì)外公布或者由 房屋管理中心統(tǒng)一保管,方便以后用戶對(duì)證件真?zhèn)蔚蔫b別 。密鑰生成 實(shí)現(xiàn)流程 如 圖 9 密 鑰 生 成模 塊用 戶 公 鑰用 戶 私 鑰公 布房 產(chǎn) 證 持 有 者 `` 圖 9 密鑰的生成過(guò)程 對(duì)房產(chǎn) 證件進(jìn)行數(shù)字簽名的流程 ( 1) 由密鑰模塊得到公鑰和私鑰 圖 10 RSA公鑰和私鑰生成過(guò)程 ( 2)用私鑰對(duì)房產(chǎn)證信息進(jìn)行簽名 圖 11 房產(chǎn)證信息簽名過(guò)程 ( 3)對(duì)已有的簽名進(jìn)行驗(yàn)證 圖 12 房產(chǎn)證信息簽名驗(yàn)證過(guò)程 ( 1)房產(chǎn)證的持有人相管理中心提供持有人的個(gè)人信息,通過(guò) 證書公文 處理系統(tǒng)生成一個(gè)與之對(duì)應(yīng)的房產(chǎn)證書數(shù)字 公文 文件。 ( 2 )對(duì)生成后的數(shù)字 公文 文件我們通過(guò)哈希安全算法對(duì)數(shù)字文件進(jìn)行消息摘要處理 。得到這 個(gè)數(shù)字 公文文件 的消息摘要文件 ( 3)對(duì)剛剛經(jīng)過(guò)哈希后的數(shù)字摘要文 件用簽名模塊中的簽名選項(xiàng)來(lái)實(shí)現(xiàn)對(duì)數(shù)字摘要的加密,在這個(gè)過(guò)程中需要用到密鑰生成模塊中產(chǎn)生的用戶私鑰,因?yàn)樵赻` 簽名中是用的證書持有人的私鑰來(lái)對(duì)摘要進(jìn)行加密的,所以能夠確保簽名的可信度和唯一性。 2. 驗(yàn)證的過(guò)程 ( 1)由證書擁有者提供他的個(gè)人信息,通過(guò)數(shù)字證書處理模塊對(duì)其證件進(jìn)行數(shù)字化處理。得到一個(gè)數(shù)字化后的房產(chǎn)證文件 ( 2)用安全哈希算法對(duì)用戶得到的數(shù)字化房產(chǎn)證文件進(jìn)行處理,得到一個(gè)消息摘要文件 DS ( 3)將驗(yàn)證人的證書用管理中心保管的公鑰進(jìn)行解密運(yùn)算,運(yùn)算以后會(huì)得到一個(gè)消息摘要。 ( 4)將前后兩次得到的消息摘要 通過(guò)簽名驗(yàn)證模塊中的比較運(yùn)算來(lái)判斷兩次的消息摘要是否一致,如果結(jié)果一致這說(shuō)明提供驗(yàn)證的證書是真的,如果結(jié)果不一致這這個(gè)證書是偽造的 。 系統(tǒng)測(cè)試 如圖 13所示 ,在房產(chǎn)公文信息處理子系統(tǒng)中,房產(chǎn) 擁有者可以將自己的信息輸入此系統(tǒng)中,通過(guò)系統(tǒng)的處理,生成一個(gè)包含用戶 信息的數(shù)字房產(chǎn)證文件,為了能更好的對(duì)用戶財(cái)產(chǎn)的保護(hù),在設(shè)計(jì)本 子系統(tǒng)時(shí)加入了一個(gè)用戶私秘密信息提問, 因?yàn)槊總€(gè)人設(shè)置的問題不一樣,答案也不一樣,這就能在初始化證件的時(shí)候都能很好的防止別人偽造自己的證件,因?yàn)閯e人有可能知道自己的很多相關(guān)情況,但是在 私密問題上別人設(shè)置很少能設(shè)置得和自己一樣,并且在問題一樣的情況下各自說(shuō)出來(lái)的答案也未必一樣,因此這樣就使得本防偽的可用性更強(qiáng)了。安全性也更高了 。 圖 13 房產(chǎn)信息處理 界面 在 測(cè)試密鑰生成子系統(tǒng)時(shí) , 我們 通過(guò)使用 RSA 加密算法,可以 得到 兩個(gè)不同的密鑰,一個(gè)由用戶自己保管,稱 作 用戶的安全簽名私鑰,而例外一個(gè)公鑰則由管理中心統(tǒng)一管理,當(dāng)用戶需要鑒別其 所持 證件的真?zhèn)涡缘臅r(shí)候,公鑰就可以用來(lái)對(duì)帶有用戶數(shù)字簽名的文件進(jìn)行 鑒別。密鑰產(chǎn)生 具體實(shí)現(xiàn)過(guò)程則如圖 14 所示 `` 圖 14 密鑰生成界面 在簽名子系統(tǒng)中 用戶如果需要對(duì)自己的數(shù)字證書進(jìn)行數(shù)字簽名來(lái)達(dá)到對(duì)自己數(shù)字證書的防偽效果那么用戶必須擁有自己的簽名私鑰,其簽名私鑰則有上一個(gè)子模塊產(chǎn)生得到。用戶通過(guò)自己的私鑰就可以對(duì)經(jīng)過(guò)處理后的房產(chǎn)證數(shù)字文件進(jìn)行數(shù)字簽名,簽名后的簽名文件用戶可以通過(guò)簽名生成子模塊運(yùn)算后得到。具體的操作方法可以參考圖 15 圖 15 簽名生成 界面 簽名驗(yàn)證子系統(tǒng)的主要作用就是當(dāng)用戶需要對(duì)手里面的證書的真?zhèn)芜M(jìn)行鑒別的時(shí)候,用戶可以提交自己的簽名文件和數(shù)字證書的原文件給房產(chǎn)管理中心,由于房屋管理中心統(tǒng)一管理做房產(chǎn)證防偽系統(tǒng)的公鑰 ,所以管理中心可以用公鑰來(lái)解 密 用戶的簽名文件,并且簽名鑒別系統(tǒng)還可以對(duì)原來(lái)的數(shù)字證書文件進(jìn)行處理,在用戶簽名被解迷后得到的消息摘要和經(jīng)過(guò)哈希安全算法運(yùn)算后得到 的消息摘要一致的情況下就可以判定帶有用戶簽名的數(shù)字房產(chǎn)證書是不是屬于其鑒別人自己的,具體的實(shí)現(xiàn)過(guò)程見圖 16 `` 圖 16 簽名驗(yàn)證界面 結(jié) 論 通過(guò)本次仿真房產(chǎn)證信息數(shù)字簽名系統(tǒng)的設(shè)計(jì),使自己對(duì)非對(duì)稱加密安全算法,數(shù)字簽名,和證件的防偽有了新的認(rèn)識(shí)。通過(guò)將現(xiàn)代的信息安全技術(shù)與傳統(tǒng)的證件防偽相結(jié)合起來(lái)給人們的日常生活帶來(lái)巨大的好處和方便。在傳統(tǒng)的防 偽方法已經(jīng)不能對(duì)現(xiàn)有的證件防偽進(jìn)行更有力的保護(hù)的時(shí)候,新的數(shù)字技術(shù)給面臨挑戰(zhàn)的傳統(tǒng)防偽帶來(lái)了新的發(fā)展方向。相信在以后的應(yīng)用中新的信息安全技術(shù)會(huì)越來(lái)越多的和以前那些老的技術(shù)相結(jié)合。給傳統(tǒng)的技術(shù)新的希望。在本次設(shè)計(jì)系統(tǒng)的過(guò)程中自己的 VC++編程技術(shù)得到了進(jìn)一部的提升。并且對(duì)信息安全中的加密解密和數(shù)字簽名的概念和實(shí)現(xiàn)方法與 原理都有了一個(gè)新的認(rèn)識(shí),在這個(gè)系統(tǒng)的設(shè)計(jì)過(guò)程中學(xué)到了不少東西。 參考文獻(xiàn) [1] 張煥國(guó) ,劉玉珍 . 密碼學(xué)引論 [M]. 武漢 :武漢大學(xué)出版社 , 2020。 [2] 楊義先等 .信息安全新技 術(shù) [M].北京 :北京郵電大學(xué)出版社 , 。 [3] Oded Goldreich.密碼學(xué)基礎(chǔ) [M].北京 :電子工業(yè)出版社 , 。 [4] 章照止 .現(xiàn)代密碼學(xué)基礎(chǔ) [M].北京:清華大學(xué)出版社, 1998。 [5] David J. Kruglinski. Visual C++技術(shù)內(nèi)幕 [M].北京:清華大學(xué)出版社, 1999。 [6] 張先紅 . 數(shù)字簽名原理及技術(shù) [M] .北京 :機(jī)械工業(yè)出版社 , 2020。 [7] Atreya ,賀軍 .數(shù)字簽名 [M]. 北京 :清華大學(xué)出版社 , 。 [8] 馮登國(guó) . 密碼工程實(shí)踐指南 [M]. 北京 :清華大學(xué)出版社 , 。 [9] 胡峪 ,劉靜 .VC++高級(jí)編程技巧與示例 [M]. 西安 :西安電子科技大學(xué)出版社 , 2020。 [10]辛長(zhǎng)安 ,梅林 . VC++編程技術(shù)與難點(diǎn)剖析 [M].北京 :清華大 學(xué)出版社 , 。 `` 致 謝 本文是在萬(wàn)武南
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1