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

正文內(nèi)容

房產(chǎn)證信息數(shù)字簽名的實(shí)現(xiàn)—免費(fèi)計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文-在線瀏覽

2025-02-01 10:12本頁面
  

【正文】 執(zhí)行下面的循環(huán) TEMP = S5(A) + ft(B,C,D) + E + Wt + Kt。 D = C。 B = A。 (5). 令 H0 = H0 + A, H1 = H1 + B, H2 = H2 + C, H3 = H3 + D, H4 = H4 + E. 在處理完所有的 Mn, 后,消息摘要是一個(gè) 160位的字符串,以下面的順序標(biāo)`` 識 H0 H1 H2 H3 H4. RSA 算法原理 RSA加密算法 1978年 Ron Rivest, AdiShamir 和 Leonard Adleman提出的,它是第 一個(gè)既能用于數(shù)據(jù)加密也能用于數(shù)字簽名的算法。算法的名字以發(fā)明者的名字命名。公鑰和私鑰都是兩個(gè)大素?cái)?shù)( 大于 100 個(gè)十進(jìn)制位)的函數(shù)。 RSA 算法的實(shí)現(xiàn)分為:生成密鑰,加密,解密 )。 (2) 隨機(jī)生成大素?cái)?shù) p,直到 gcd (e,p1)=1。 (4) 計(jì)算 n=pq , ?(n)=(p1)(q1)。 (6) 計(jì)算 d mod (p1), d mod (q1)。 (8) 將 n,e 放入 RSA 公鑰;將 n,e,d mod (p1),d mod (q1) q1 mod p 放入 RSA 私鑰。然后計(jì)算 m,使得 n=1+(2^b)m。 ( 2) 設(shè) j=0且 modmZ a P? ( 3) 如果 z=1 或 z=p1,那麼 p 通過測試,可能使素?cái)?shù) ( 4) 如果 j0 且 z=1, 那麼 p不是素?cái)?shù) ( 5) 設(shè) j=j+1。如果 z=p1,那麼 p 通過測試,可能為素?cái)?shù)。數(shù) a 被當(dāng)成證據(jù)的概率為 75%。實(shí)際上,對大多數(shù)`` 隨機(jī)數(shù),幾乎 %肯定 a 是證據(jù)。如果 T 8 那么測試失誤的機(jī)率就會小于 510? ,這對于一般的應(yīng)用是足夠了。 加密規(guī)則為: ( ) m odbkE x X n?, x?Zn 解密規(guī)則為 ( ) m odkD X Y n?? ,y?Zn, Zn為整數(shù)集合 ,x 為密文。 RSA數(shù)字簽名算法的實(shí)現(xiàn)具體過程 RSA 數(shù)字簽名算法,包括簽名算法和驗(yàn)證簽名算法。簽名的過程 中需用戶的私鑰,驗(yàn)證過程需管理機(jī)構(gòu) 的公鑰。 1 簽名算法 簽名算法包括二步:消息摘要計(jì)算, RSA 加密。 房產(chǎn)證數(shù)字文件在簽名前首先通過 SHA1 計(jì) 算,生成 128 位的消息摘要 digest。加密算法中使用的加密塊為二進(jìn)制類型 。驗(yàn)證簽名的過程輸入原房產(chǎn)的數(shù)字文件,房管中心的簽名公鑰,證書持有者的簽名;輸出為驗(yàn)證的結(jié)果,即可判斷否是正確的簽名。用 RSA 解密算法,采用簽名者的公鑰對這個(gè)加密的字符串進(jìn)行解密。在解密過程中,若出現(xiàn)得到的加密塊的類型不是 01,則解密失敗。 (2)消息摘要計(jì)算和比較 `` 驗(yàn)證者對消息使用 SHA1 算法重新計(jì)算,得到驗(yàn)證者自己的消息摘要。 RSA 的數(shù)字認(rèn)證的實(shí)現(xiàn)流程 其詳細(xì)過程如下: ( 1) 證書持有人 A將 公文 數(shù)字證書 原文信息 用安全哈希算法 SHA1進(jìn)行哈希運(yùn)算,得一哈希值即數(shù)字摘要 D’ ; (如圖 1 所示) ( 2) 證書持有人 A用自己的私鑰 ASK ,采用非對稱 RSA 算法,對數(shù)字摘要MD進(jìn)行加密,即 得數(shù)字簽名 DS; (如圖 1 所示) ( 3) 鑒別中心 B 接受到數(shù)字 簽名 DS后 的文件 ,首先 用接證書管理中心的鑒別公鑰 APK 進(jìn)行解密 ,取出 得到消息摘要 D’ ; (如圖 2所示) ( 4) 將原文信息同樣的安全哈希算法進(jìn)行哈希,得到一個(gè)消息摘要 D” ;(如圖 3 所示) ( 5)將兩個(gè) 消息 摘要 D’ 和 D” 進(jìn)行比較,驗(yàn)證原文是否被修改。 這樣就做到了敏感信息在數(shù)字簽名的傳輸中不被篡改, 說明這個(gè)簽名的證書確實(shí)是證書持有人的 ,起了在 對證件防偽系統(tǒng)中對 持有證書人真實(shí) 身 份的鑒別 。()ASKEDH a s hS H A 1D ’ 圖 1 RSA私鑰加密 :哈希和簽名 APKD S ( ( ) )AAP K S KD E MD ’E 圖 2 RSA公鑰解密 MH a s hS H A 1D ” 圖 3 哈希過程 `` 3 房產(chǎn)證 公文數(shù)字簽名 系統(tǒng)總體設(shè)計(jì) 房產(chǎn)證 公文數(shù)字簽名 系統(tǒng)總共分為兩大功能模塊:房產(chǎn)證 公文 處理模塊和信息安全處理模塊,而信息安全處理模塊主要由密鑰管理模塊,數(shù)字簽名生成模塊和簽名驗(yàn)證模塊構(gòu)成,(如圖 4所示) 房 產(chǎn) 證 處理 模 塊信 息 安 全 處 理 模 塊R S A 密 鑰 管 理 模 塊數(shù) 字 簽 名生 成 模 塊簽 名 驗(yàn)證 模 塊 圖 4 系統(tǒng)功能圖 下面分別介紹各個(gè)模塊的功能 房產(chǎn)證 公文 處理模塊 在不同的房產(chǎn)證中相應(yīng)的 證件的輸入信息不相同, 公文處理模塊 采用證件輸入界面,將信息存儲為一種統(tǒng)一的數(shù)據(jù)格式 公文文件 就可以進(jìn)行相同的安全處理,在驗(yàn)證時(shí)在將統(tǒng)一格式的數(shù)據(jù) 公文 進(jìn)行信息還原就可以實(shí)現(xiàn)。 圖 5 房產(chǎn)證 信息 輸入界面 在 公文處理 模塊中,監(jiān)管中心需要把用戶房屋產(chǎn)權(quán) 者 的相關(guān)內(nèi)容輸入這個(gè)數(shù)字文件中; 例如 : 證書持有人 姓名; 張 XXX 房屋產(chǎn)證 編號; 0000354 房屋的類型; 商品房 房屋使用年限; 50 年 房屋所在地址; XXX 路 XX街 XXXX 號 開發(fā)商名稱; XXX 房地產(chǎn)開發(fā)公司 `` 物管單位; XXX 物業(yè)管理公司 戶主聯(lián)系電話 02883961853 私密問題; XXXXXX 問題答案; XXXXXXX 當(dāng) 用戶把這些都輸入到相應(yīng)的對話框中通過保存按鈕 就可以把這個(gè)證件保存在一個(gè)相應(yīng)的文件中。 為了真正能對戶主的利益安全考慮,在本設(shè)計(jì)中還加入了一個(gè)戶主的秘密問題,以及秘密問題的答案這兩項(xiàng)。他如果在秘密問題這個(gè)選項(xiàng)提問和原來的不一樣或者回答的 答案不一樣在經(jīng)過相同的方法處理后就和戶主本身持都的房產(chǎn)證 公文文件 有很大的差別,由此斷定這個(gè)數(shù)字證書是假冒的。 CFileDialog save_uk_dlg(FALSE,uk,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,Public fcz files (*.txt)|*.txt)。 CFile fuk(file_path,CFile::modeCreate|CFile::modeWrite)。39。 ((LPCTSTR)m_name,())。 ((LPCTSTR)m_num,())。 ((LPCTSTR)m_addr,())。 ((LPCTSTR)m_type,())。 ((LPCTSTR)m_year,())。 `` ((LPCTSTR)m_phone,())。 ((LPCTSTR)m_phone,())。 ((LPCTSTR)m_phone,())。 ()。 } 信息安全處理模塊 RSA 密鑰管理模塊 在這個(gè)密鑰生成模塊中,該模塊通過 程序中的相關(guān)加密算法來 隨機(jī)生成發(fā)放給用戶的私鑰和房產(chǎn)管理中心留存和私鑰成對的 公 鑰 文件 ,管理中心可以通過這個(gè)模塊的生成密鑰按鈕,讓計(jì)算機(jī)自動生存公鑰和私鑰,生成相應(yīng)的密鑰以后 公鑰由管理中心統(tǒng)一管理,私鑰文件會發(fā)放給相應(yīng)的戶主。 圖 6 密鑰管理模塊圖 RSA 密碼系統(tǒng)的安全性依賴于大數(shù)分解的難度,一般建議用戶選擇的素?cái)?shù) p和 q 至少為 100 位,則 n=pq 是至少為 200 位的十進(jìn)制數(shù)。 密鑰生成,加密和解密涉及到一些大數(shù)的基本運(yùn)算。 模冪算法是加密解密的核心算法。大數(shù)數(shù)據(jù)的加,減,乘,除,模,模冪等由 CBigInt 這個(gè)類來完成,其定義如下: `` 1. CBigInt 類的定義 class CBigInt { public: //大數(shù)在 0x100000000 進(jìn)制下的長度 unsigned m_nLength。 CBigInt()。 /***************************************************************** 基本操作與運(yùn)算 Mov,賦值運(yùn)算,可賦值為大數(shù)或普通整數(shù),可重載為運(yùn)算符 “=” Cmp,比較運(yùn)算,可重載為運(yùn)算符 “==” 、 “!=” 、 “=” 、 “=” 等 Add,加,求大數(shù)與大數(shù)或大數(shù)與普通整數(shù)的和,可重載為運(yùn)算符 “+” Sub,減,求大數(shù)與大數(shù)或大數(shù)與普通整數(shù)的差,可重載為運(yùn)算符 “ ” Mul,乘,求大數(shù)與大數(shù)或大數(shù)與普通整數(shù)的積,可重載為運(yùn)算符 “*” Div,除,求大數(shù)與大數(shù)或大數(shù)與普通整數(shù)的商,可重載為運(yùn)算符 “/” Mod,模,求大數(shù)與大數(shù)或大數(shù)與普通整數(shù) 的模,可重載為運(yùn)算符 “%” *****************************************************************/ void Mov(unsigned __int64 A)。 A)。 A)。 A)。 A)。 A)。 A)。 CBigInt Sub(unsigned long A)。 CBigInt Div(unsigned long A)。 int Cmp(CBigIntamp。 /***************************************************************** 輸入輸出 Get,從字符串按 10 進(jìn)制或 16 進(jìn)制格式輸入到大數(shù) Put,將大數(shù)按 10 進(jìn)制或 16 進(jìn)制格式輸出到字符串 *****************************************************************/ void Get(CStringamp。 void Put(CStringamp。 int Rab()。 A)。 A, CBigIntamp。 //反復(fù)平方算法進(jìn)行冪模運(yùn)算 void GetPrime(int bits)。 A)。 `` 2. RSA 相關(guān) 算法實(shí)現(xiàn) RSA 算法實(shí)現(xiàn)比較重要的是素性檢測,大隨機(jī)數(shù)的產(chǎn)生,求逆運(yùn)算等,分別由下面幾個(gè)函數(shù)來完成 ,下面給出 拉賓米勒算法 。 for(i=0。i++){if(Mod(PrimeTable[i])==0)return 0。 (*this)。 for(i=0。i++) { pass=0。 (K)。1)==0) { for(j=0。j++) { [j]=[j]1。1)[j]=[j]|0x80000000。 ((S,*this))。break。amp。 if(pass==0)return 0。 } 簽名生成模塊 在 簽名產(chǎn)生 模塊中,戶主通過管理中心發(fā)放給他的私鑰,以及他剛剛通過數(shù)字證書生成模塊得到的房產(chǎn)證文件,然后將這兩個(gè)文件分別導(dǎo) 入 模塊中,通過生成簽名按鈕及可以得到生成后的數(shù)字簽名。密 鑰生成過程時(shí)間主要是生成隨機(jī)素?cái)?shù)的時(shí)間及計(jì)算公鑰和私鑰的模乘法的時(shí)間。在常見的生成數(shù)字摘要的方法有 MD5 和 SHA1,在本設(shè)計(jì)中對文件的消息摘要我們是通過 SHA1安全哈希算法來實(shí)現(xiàn)的。 unsigned long count[2]。 } SHA1_CTX。/*傳輸函數(shù),用于數(shù)據(jù)的轉(zhuǎn)換和傳、送 */ void SHA1Init(SHA1_CTX* context)。 /* 中間轉(zhuǎn)換函數(shù) */ void SHA1Final(unsigned char digest[20], SHA1_CTX* context)。0xFF00FF00) \ |(rol(blockl[i],8)amp。15] = rol(blockl[(i+13)amp。15] \ ^blockl[(i+2)amp。15],1)) /* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */ define R0(v,w,x,y,z,i) z+=((wamp。w=rol(w,30)。(x^y))^y)+blk(i)+0x5A827999+rol(v,5)。 define R2(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0x6ED9EBA1+rol(v,5)。 define R3(v,w,x,y,z,i) z+=(((w|x)amp。x))+blk(i)+0x8F1BBCDC+rol(v,5)。 define R4(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0xCA62C1D6+rol(v,5)。 在對文件進(jìn)行安全哈希
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1