濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > 密碼知識(shí)教程一

密碼知識(shí)教程一

熱門標(biāo)簽:隨州銷售外呼系統(tǒng)平臺(tái) 交行外呼系統(tǒng)有哪些 激戰(zhàn)黃昏地圖標(biāo)注說明 寧夏保險(xiǎn)智能外呼系統(tǒng)哪家好 不同的地圖標(biāo)注 溫嶺代理外呼系統(tǒng) 怎么更改地圖標(biāo)注電話 防城港市ai電銷機(jī)器人 臨滄移動(dòng)外呼系統(tǒng)哪家有
   談起密碼算法,有的人會(huì)覺得陌生,但一提起PGP,大多數(shù)網(wǎng)上朋友都很熟悉,它是一個(gè)工具軟件,向認(rèn)證中心注冊后就可以用它對(duì)文件進(jìn)行加解密或數(shù)字簽名,PGP所采用的是RSA算法,以后我們會(huì)對(duì)它展開討論。密碼算法的目的是為了保護(hù)信息的保密性、完整性和安全性,簡單地說就是信息的防偽造與防竊取,這一點(diǎn)在網(wǎng)上付費(fèi)系統(tǒng)中特別有意義。密碼學(xué)的鼻祖可以說是信息論的創(chuàng)始人香農(nóng),他提出了一些概念和基本理論,論證了只有一種密碼算法是理論上不可解的,那就是 One Time Padding,這種算法要求采用一個(gè)隨機(jī)的二進(jìn)制序列作為密鑰,與待加密的二進(jìn)制序列按位異或,其中密鑰的長度不小于待加密的二進(jìn)制序列的長度,而且一個(gè)密鑰只能使用一次。其它算法都是理論上可解的。如DES算法,其密鑰實(shí)際長度是56比特,作2^56次窮舉,就肯定能找到加密使用的密鑰。所以采用的密碼算法做到事實(shí)上不可解就可以了,當(dāng)一個(gè)密碼算法已知的破解算法的時(shí)間復(fù)雜度是指數(shù)級(jí)時(shí),稱該算法為事實(shí)上不可解的。順便說一下,據(jù)報(bào)道國外有人只用七個(gè)半小時(shí)成功破解了DES算法。密碼學(xué)在不斷發(fā)展變化之中,因?yàn)槿祟惖挠?jì)算能力也像摩爾定律提到的一樣飛速發(fā)展。作為第一部分,首先談一下密碼算法的概念。 
   密碼算法可以看作是一個(gè)復(fù)雜的函數(shù)變換,C = F M, Key ),C代表密文,即加密后得到的字符序列,M代表明文即待加密的字符序列,Key表示密鑰,是秘密選定的一個(gè)字符序列。密碼學(xué)的一個(gè)原則是“一切秘密寓于密鑰之中”,算法可以公開。當(dāng)加密完成后,可以將密文通過不安全渠道送給收信人,只有擁有解密密鑰的收信人可以對(duì)密文進(jìn)行解密即反變換得到明文,密鑰的傳遞必須通過安全渠道。目前流行的密碼算法主要有DESRSA,IDEA,DSA等,還有新近的Liu氏算法,是由華人劉尊全發(fā)明的。密碼算法可分為傳統(tǒng)密碼算法和現(xiàn)代密碼算法,傳統(tǒng)密碼算法的特點(diǎn)是加密和解密必須是同一密鑰,如DES和IDEA等;現(xiàn)代密碼算法將加密密鑰與解密密鑰區(qū)分開來,且由加密密鑰事實(shí)上求不出解密密鑰。這樣一個(gè)實(shí)體只需公開其加密密鑰(稱公鑰,解密密鑰稱私鑰)即可,實(shí)體之間就可以進(jìn)行秘密通信,而不象傳統(tǒng)密碼算法似的在通信之前先得秘密傳遞密鑰,其中妙處一想便知。因此傳統(tǒng)密碼算法又稱對(duì)稱密碼算法(Symmetric Cryptographic Algorithms ),現(xiàn)代密碼算法稱非對(duì)稱密碼算法或公鑰密碼算法( Public-Key Cryptographic Algorithms ),是由Diffie 和Hellman首先在1976年的美國國家計(jì)算機(jī)會(huì)議上提出這一概念的。按照加密時(shí)對(duì)明文的處理方式,密碼算法又可分為分組密碼算法和序列密碼算法。分組密碼算法是把密文分成等長的組分別加密,序列密碼算法是一個(gè)比特一個(gè)比特地處理,用已知的密鑰隨機(jī)序列與明文按位異或。當(dāng)然當(dāng)分組長度為1時(shí),二者混為一談。這些算法以后我們都會(huì)具體討論。 
   RSA算法 
   1978年就出現(xiàn)了這種算法,它是第一個(gè)既能用于數(shù)據(jù)加密也能用于數(shù)字簽名的算法。它易于理解和操作,也很流行。算法的名字以發(fā)明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。但RSA的安全性一直未能得到理論上的證明。 
   RSA的安全性依賴于大數(shù)分解。公鑰和私鑰都是兩個(gè)大素?cái)?shù)( 大于 100個(gè)十進(jìn)制位)的函數(shù)。據(jù)猜測,從一個(gè)密鑰和密文推斷出明文的難度等同于分解兩個(gè)大素?cái)?shù)的積。 
   密鑰對(duì)的產(chǎn)生。選擇兩個(gè)大素?cái)?shù),p 和q 。計(jì)算: 
   n = p * q 
   然后隨機(jī)選擇加密密鑰e,要求 e 和 ( p - 1 ) * ( q - 1 ) 互質(zhì)。最后,利用Euclid 算法計(jì)算解密密鑰d, 滿足 
   e * d = 1 ( mod ( p - 1 ) * ( q - 1 ) ) 
   其中n和d也要互質(zhì)。數(shù)e和n是公鑰,d是私鑰。兩個(gè)素?cái)?shù)p和q不再需要,應(yīng)該丟棄,不要讓任何人知道。 
   加密信息 m(二進(jìn)制表示)時(shí),首先把m分成等長數(shù)據(jù)塊 m1 ,m2,..., mi ,塊長s,其中 2^s = n, s 盡可能的大。對(duì)應(yīng)的密文是: 
   ci = mi^e ( mod n ) ( a ) 
   解密時(shí)作如下計(jì)算: 
   mi = ci^d ( mod n ) ( b ) 
   RSA 可用于數(shù)字簽名,方案是用 ( a ) 式簽名, ( b )式驗(yàn)證。具體操作時(shí)考慮到安全性和 m信息量較大等因素,一般是先作 HASH 運(yùn)算。 
   RSA 的安全性。 
   RSA的安全性依賴于大數(shù)分解,但是否等同于大數(shù)分解一直未能得到理論上的證明,因?yàn)闆]有證明破解 RSA就一定需要作大數(shù)分解。假設(shè)存在一種無須分解大數(shù)的算法,那它肯定可以修改成為大數(shù)分解算法。目前, RSA的一些變種算法已被證明等價(jià)于大數(shù)分解。不管怎樣,分解n是最顯然的攻擊方法?,F(xiàn)在,人們已能分解140多個(gè)十進(jìn)制位的大素?cái)?shù)。因此,模數(shù)n必須選大一些,因具體適用情況而定。 
   RSA的速度。 
   由于進(jìn)行的都是大數(shù)計(jì)算,使得RSA最快的情況也比DES慢上100倍,無論是軟件還是硬件實(shí)現(xiàn)。速度一直是RSA的缺陷。一般來說只用于少量數(shù)據(jù)加密。

標(biāo)簽:河源 無錫 哈密 沈陽 青海 紅河 阜陽 忻州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《密碼知識(shí)教程一》,本文關(guān)鍵詞  密碼,知識(shí),教程,一,密碼,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《密碼知識(shí)教程一》相關(guān)的同類信息!
  • 本頁收集關(guān)于密碼知識(shí)教程一的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    三门峡市| 普陀区| 安丘市| 乌鲁木齐市| 修武县| 泾川县| 金平| 临沭县| 响水县| 神木县| 嫩江县| 正宁县| 高唐县| 琼中| 平潭县| 个旧市| 岳池县| 兰溪市| 新野县| 昭平县| 柏乡县| 虞城县| 荆州市| 星子县| 普陀区| 旌德县| 云霄县| 辽阳市| 永安市| 石狮市| 南汇区| 台湾省| 惠东县| 霞浦县| 安康市| 清丰县| 西充县| 平泉县| 长汀县| 郯城县| 寿宁县|