Ⅰ 密鑰演算法
您的查詢字詞都已標明如下:公鑰加密 (點擊查詢詞,可以跳到它在文中首次出現的位置)
(網路和網頁http://www.gnupg.org/(en)/howtos/ch/GPGMiniHowto-1.html的作者無關,不對其內容負責。網路快照謹為網路故障時之索引,不代表被搜索網站的即時頁面。)
--------------------------------------------------------------------------------
下頁 上頁 目錄
--------------------------------------------------------------------------------
1. 概念
1.1 公鑰加密
加密的傳統方法只用一把密鑰加密。發出訊息者用這把鑰匙對訊息加密。接收訊息者需要有完全相同的鑰匙才能將加密了的訊息解密。這把鑰匙必須以一種其他人沒有機會得到它的方式給予接收訊息者。如果其他人得到了這把鑰匙,這種加密方式就沒用了。
使用一種稱為"公開鑰匙"的方法可以解決這個問題。公開鑰匙的概念涉及兩把鑰匙。一把鑰匙稱為"公開鑰匙"(公鑰),可以以所有方式傳遞,任何人都可以得到。另一把鑰匙稱為"隱密鑰匙"(密鑰)。這把鑰匙是秘密的,不能傳遞出去。只有它的擁有者才能接觸和使用它。如果正確實施了這種方法,從公鑰不能得出密鑰。發出訊息者以接收訊息者的公鑰將訊息加密,接收者則以自己的密鑰解密。
這個概念的關鍵之處在於密鑰必須保持秘密,不能隨便給出或讓任何除了密鑰擁有者之外的人得到。請千萬不要將你的密鑰通過Internet寄出!另外,通過telnet使用GnuPG是非常不明智的(基於使用telnet的高風險,你可以考慮絕不使用telnet)。
1.2 數字簽名
為證明一則訊息確實是宣稱發出訊息的人所發,發明了數字簽名的概念。正如其名稱顯示,發出訊息者數字化地在訊息上簽名。別人可以通過這個簽名檢驗這個訊息的真實性。使用這種方法,可以減少中"特洛伊木馬計"的風險(即一則訊息宣稱是對某個問題的補丁,實際卻包含病毒或亂動你計算機上的數據),同時信息或數據可以被確認是來自正當合法的來源,而被認為屬實。
一個數字簽名是通過密鑰和訊息本身而得來。訊息可以通過發出訊息者的公鑰來驗證。這樣,不僅可以驗證訊息是正確的發出訊息者所發,而且內容也得到驗證。這樣,得到訊息者可以確認:訊息來自該發出訊息者,而且在傳遞過程中其內容沒有改變。
1.3 信任網
公開鑰匙演算法的一個弱點在於如何傳播公開鑰匙。有可能有用戶傳遞一把有虛假身份的公開鑰匙。如果別人不知就裡,用這把公鑰加密訊息,持有該虛假鑰匙的侵入者就可以解密而讀到訊息。如果侵入者再將解密的訊息以真正的公開鑰匙加密,然後傳送出去,這種進攻無法被發現。
對此問題,PGP的解決方法(因此也自動是GnuPG的解決方法)是對公開鑰匙簽名。每把公開鑰匙都有一個相應的用戶身份。一個人的公開鑰匙可以由別人來簽名。這些簽名承認這把鑰匙確實屬於它所宣稱的用戶。至於有多信任這些簽名,完全取決於GnuPG用戶。當你信任給這把鑰匙簽名的人時,你認為這把鑰匙是可信的,並確信這把鑰匙確實屬於擁有相應用戶身份的人。只有當你信任簽名者的公開鑰匙時,你才能信任這個簽名。要想絕對確信一把鑰匙是正確和真實的,你就得在給予絕對信任之前,通過可靠渠道比較鑰匙的"指紋"。
1.4 安全邊界
如果你有數據想要保密,你所需做的遠不止選擇加密演算法這一件事。你應該統籌考慮你的系統安全。一般我們認為PGP是安全的。在作者寫本文時,尚未聽說任何PGP被破譯的事例。但這並不表示所有用PGP加密的訊息都是安全的(舉例說,如果NSA--美國國家安全局破解了PGP,它絕不會通知我。別的為真正邪惡目的破譯密碼的人也不會)。反過來說,即使PGP是完全"無法破譯"的,也可以用別的方法來損害安全。今年二月初,發現了一種"特洛伊木馬",它尋找硬碟上的密鑰,然後將其FTP出去。如果密碼選得不好,這些被盜的密鑰可以被輕易破解。
另一種可能的技術(雖然更難做到)是使用一種"特洛伊木馬"程序,它可以傳出用戶所敲的鍵。也可以(但非常困難)傳出屏幕顯示的內容。使用這些技術,就根本不需要破譯加密的訊息了。針對以上這些危險,需要制定一個好的,深思熟慮的安全計劃並付諸實施。
提到上述這些,目的並非想讓人們懷疑一切,而是想指出需要採取很多措施才能達到更安全。最重要的是意識到加密只是安全的一個步驟,而不是全部的解決方案。正如在一九九九年三月Melissa病毒事件中所顯示,許多公司並未准備好應付這類特洛伊木馬式病毒。
Ⅱ 加密演算法和密鑰的作用
一、加密演算法:將原有的明文信息轉化為看似無規律的密文。收信方需要對應的解密密鑰,採用對應的解密方法將密文還原為明文(能看懂有意義的信息)。
二、密鑰分為加密密鑰和解密密鑰,對於「對稱加密演算法」,這兩者是一樣的;而「非對稱加密演算法」的密鑰分為「公開密鑰」和「私有密鑰」,用公開密鑰加密,則需要私有密鑰解密;反之用私有密鑰加密,則需要公開密鑰解密,是可以互換的。
三、現代的計算機加密演算法比較復雜,要弄懂是需要離散數學、高等代數等知識,不可能在這里講明白。
四、以「凱撒移位密碼」這種最古來的簡單密碼來講解什麼是加密演算法和密鑰:
4.1)「凱撒密碼」在《愷撒傳》中有記載,凱撒密碼是將每一個字母用字母表中的該字母後的第三個字母代替。盡管歷史記載的凱撒密碼只用了3個位置的移位,但顯然從1到25個位置的移位我們都可以使用, 因此,為了使密碼有更高的安全性,單字母替換密碼就出現了。
若用每個字母的後11位替換當前字母,可以認為密鑰=11。
如此得到的密碼表為:
明碼表 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z(即26個字母表)
密碼表 L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
加密的方法很簡單,就是講明碼字母換成對應的密碼表字母。
如:明文 I LOVE YOU
密文 T WZGP JZF
在當時,這樣簡單的密碼就足夠起到保密作用;但到近代都已經很容易被破解了,更不用說現代有計算機秒破了!
4.2)其他加密演算法
有興趣可以了解更復雜的加密演算法:如近代的「維吉尼亞演算法」,還屬於字母位移加密,好懂!而現代計算機文件深度加密常用的「AES加密演算法」,原理很復雜,需要高等數學等知識才能讀懂。
Ⅲ 密鑰是什麼,什麼是加密演算法
1密鑰是一種參數,它是在明文轉換為密文或將密文轉換為明文的演算法中輸入的參數。密鑰分為對稱密鑰與非對稱密鑰.
2數據加密的基本過程就是對原來為明文的文件或數據按某種演算法進行處理,使其成為不可讀的一段代碼,通常稱為「密文」,使其只能在輸入相應的密鑰之後才能顯示出本來內容,通過這樣的途徑來達到保護數據不被非法人竊取、閱讀的目的。 該過程的逆過程為解密,即將該編碼信息轉化為其原來數據的過程。
每次發數據給對方的時候都會用自己的私鑰加密,私鑰和公鑰是對應匹配的,公鑰是公開大家知道的,私鑰是自己的,相當於我們的簽名別人盜版不了。對方收到數據之後用公鑰解密就能得到數據。再用公鑰和私鑰設計具體的辦法就能處理好讓別人不能窺探數據 。
Ⅳ 常用的加密演算法有哪些
對稱加密演算法(秘密鑰匙加密)和非對稱加密演算法(公開密鑰加密)。
對稱加密演算法用來對敏感數據等信息進行加密,常用的演算法包括:
DES(Data Encryption Standard):數據加密標准,速度較快,適用於加密大量數據的場合。
3DES(Triple DES):是基於DES,對一塊數據用三個不同的密鑰進行三次加密,強度更高。
AES(Advanced Encryption Standard):高級加密標准,是下一代的加密演算法標准,速度快,安全級別高;
AES
常見的非對稱加密演算法如下:
RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰演算法,需要加密的文件塊的長度也是可變的;
DSA(Digital Signature Algorithm):數字簽名演算法,是一種標準的 DSS(數字簽名標准);
ECC(Elliptic Curves Cryptography):橢圓曲線密碼編碼學。
Ⅳ 無線路由器加密演算法tkip和aes有什麼區別
1,TKIP:
Temporal
Key
Integrity
Protocol(暫時密鑰集成協議)負責處理無線安全問題的加密部分,TKIP是包裹在已有WEP密碼外圍的一層「外殼」,
這種加密方式在盡可能使用WEP演算法的同時消除了已知的WEP缺點。
2,TKIP另一個重要特性就是變化每個數據包所使用的密鑰,這就是它名稱中「動態」的出處。密鑰通過將多種因素混合在一起生成,包括基本密鑰(即TKIP中所謂的成對瞬時密鑰)、發射站的MAC地址以及數據包的序列號。
3,AES:Advanced
Encryption
Standard(高級加密標准),是美國國家標准與技術研究所用於加密電子數據的規范,該演算法匯聚了設計簡單、密鑰安裝快、需要的內存空間少、在所有的平台上運行良好、支持並行處理並且可以抵抗所有已知攻擊等優點。
4,AES
是一個迭代的、對稱密鑰分組的密碼,它可以使用128、192
和
256
位密鑰,並且用
128
位(16位元組)分組加密和解密數據。與公共密鑰密碼使用密鑰對不同,對稱密鑰密碼使用相同的密鑰加密和解密數據。
5,AES提供了比
TKIP更加高級的加密技術,
現在無線路由器都提供了這2種演算法,不過比較傾向於AES。
6,TKIP安全性不如AES,而且在使用TKIP演算法時路由器的吞吐量會下降3成至5成,大大地影響了路由器的性能。
Ⅵ 著名的可逆的加密演算法有哪些
1,DES(Data Encryption Standard):對稱演算法,數據加密標准,速度較快,適用於加密大量數據的場合。
2,3DES(Triple DES):是基於DES的對稱演算法,對一塊數據用三個不同的密鑰進行三次加密,強度更高。
3,RC2和RC4:對稱演算法,用變長密鑰對大量數據進行加密,比 DES 快。
4,IDEA(International Data Encryption Algorithm)國際數據加密演算法,使用 128 位密鑰提供非常強的安全性。
5,RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰演算法,需要加密的文件塊的長度也是可變的,非對稱演算法。
(6)密鑰動態變化的加密演算法擴展閱讀:
據記載,公元前400年,古希臘人發明了置換密碼。1881年世界上的第一個電話保密專利出現。在第二次世界大戰期間,德國軍方啟用「恩尼格瑪」密碼機,密碼學在戰爭中起著非常重要的作用。
隨著信息化和數字化社會的發展,人們對信息安全和保密的重要性認識不斷提高,於是在1997年,美國國家標准局公布實施了「美國數據加密標准(DES)」,民間力量開始全面介入密碼學的研究和應用中,採用的加密演算法有DES、RSA、SHA等。隨著對加密強度需求的不斷提高,近期又出現了AES、ECC等。
使用密碼學可以達到以下目的:
保密性:防止用戶的標識或數據被讀取。
數據完整性:防止數據被更改。
身份驗證:確保數據發自特定的一方。
參考資料來源:網路-加密演算法
Ⅶ 密鑰和加密演算法是個什麼關系
密鑰是一種參數(它是在明文轉換為密文或將密文轉換為明文的演算法中輸入的數據),加密演算法是明文轉換成密文的變換函數,同樣的密鑰可以用不同的加密演算法,得到的密文就不一樣了。
舉一個示例,例如凱撒密碼,該字母向後旋轉n位,該n是密鑰, 向後移動的方法稱為演算法。 盡管使用相同的演算法,但是對明文用不同的密鑰加密的結果不一樣。
例如,Run使用Key = 1(密鑰)的凱撒密碼,即Svo,而Key = 2(密鑰)的加密,則成為Twp,因此密鑰和演算法存在很大差異。
現在大多數公鑰密碼系統都使用RSA演算法,但是每個人的密鑰的密文不同。 通常,該演算法是公共的,密鑰不是公共的。 加密演算法恰好包含兩個輸入參數,一個是明文,另一個是密鑰。
(7)密鑰動態變化的加密演算法擴展閱讀:
1、密鑰演算法
使用極其復雜的加密演算法,即使解密者可以加密他選擇的任意數量的明文,也無法找出破譯密文的方法。 秘密密鑰的一個弱點是解密密鑰必須與加密密碼相同,這引發了如何安全分配密鑰的問題。
2、公鑰演算法
滿足三個條件:第一個條件是指在對密文應用解密演算法後可以獲得明文。 第二個條件是指不可能從密文中得出解密演算法。 第三個條件是指即使任何明文形式的選擇都無法解密密碼,解密程序也可以加密。 如果滿足上述條件,則可以公開加密演算法。
Ⅷ 無線路由器加密演算法是什麼意思
1,TKIP: Temporal Key Integrity Protocol(暫時密鑰集成協議)負責處理無線安全問題的加密部分,TKIP是包裹在已有WEP密碼外圍的一層「外殼」, 這種加密方式在盡可能使用WEP演算法的同時消除了已知的WEP缺點。
2,TKIP另一個重要特性就是變化每個數據包所使用的密鑰,這就是它名稱中「動態」的出處。密鑰通過將多種因素混合在一起生成,包括基本密鑰(即TKIP中所謂的成對瞬時密鑰)、發射站的MAC地址以及數據包的序列號。
3,AES:Advanced Encryption Standard(高級加密標准),是美國國家標准與技術研究所用於加密電子數據的規范,該演算法匯聚了設計簡單、密鑰安裝快、需要的內存空間少、在所有的平台上運行良好、支持並行處理並且可以抵抗所有已知攻擊等優點。
4,AES 是一個迭代的、對稱密鑰分組的密碼,它可以使用128、192 和 256 位密鑰,並且用 128 位(16位元組)分組加密和解密數據。與公共密鑰密碼使用密鑰對不同,對稱密鑰密碼使用相同的密鑰加密和解密數據。
5,AES提供了比 TKIP更加高級的加密技術, 現在無線路由器都提供了這2種演算法,不過比較傾向於AES。
6,TKIP安全性不如AES,而且在使用TKIP演算法時路由器的吞吐量會下降3成至5成,大大地影響了路由器的性能。
Ⅸ 數據加密技術及其相關演算法
數據加密技術 所謂數據加密(Data Encryption)技術是指將一個信息(或稱明文,plain text)經過加密鑰匙(Encryption key)及加密函數轉換,變成無意義的密文(cipher text),而接收方則將此密文經過解密函數、解密鑰匙(Decryption key)還原成明文。加密技術是網路安全技術的基石。
數據加密技術要求只有在指定的用戶或網路下,才能解除密碼而獲得原來的數據,這就需要給數據發送方和接受方以一些特殊的信息用於加解密,這就是所謂的密鑰。其密鑰的值是從大量的隨機數中選取的。按加密演算法分為專用密鑰和公開密鑰兩種。
專用密鑰,又稱為對稱密鑰或單密鑰,加密和解密時使用同一個密鑰,即同一個演算法。如DES和MIT的Kerberos演算法。單密鑰是最簡單方式,通信雙方必須交換彼此密鑰,當需給對方發信息時,用自己的加密密鑰進行加密,而在接收方收到數據後,用對方所給的密鑰進行解密。當一個文本要加密傳送時,該文本用密鑰加密構成密文,密文在信道上傳送,收到密文後用同一個密鑰將密文解出來,形成普通文體供閱讀。在對稱密鑰中,密鑰的管理極為重要,一旦密鑰丟失,密文將無密可保。這種方式在與多方通信時因為需要保存很多密鑰而變得很復雜,而且密鑰本身的安全就是一個問題。
對稱密鑰是最古老的,一般說「密電碼」採用的就是對稱密鑰。由於對稱密鑰運算量小、速度快、安全強度高,因而目前仍廣泛被採用。
DES是一種數據分組的加密演算法,它將數據分成長度為64位的數據塊,其中8位用作奇偶校驗,剩餘的56位作為密碼的長度。第一步將原文進行置換,得到64位的雜亂無章的數據組;第二步將其分成均等兩段;第三步用加密函數進行變換,並在給定的密鑰參數條件下,進行多次迭代而得到加密密文。
公開密鑰,又稱非對稱密鑰,加密和解密時使用不同的密鑰,即不同的演算法,雖然兩者之間存在一定的關系,但不可能輕易地從一個推導出另一個。有一把公用的加密密鑰,有多把解密密鑰,如RSA演算法。
非對稱密鑰由於兩個密鑰(加密密鑰和解密密鑰)各不相同,因而可以將一個密鑰公開,而將另一個密鑰保密,同樣可以起到加密的作用。
在這種編碼過程中,一個密碼用來加密消息,而另一個密碼用來解密消息。在兩個密鑰中有一種關系,通常是數學關系。公鑰和私鑰都是一組十分長的、數字上相關的素數(是另一個大數字的因數)。有一個密鑰不足以翻譯出消息,因為用一個密鑰加密的消息只能用另一個密鑰才能解密。每個用戶可以得到唯一的一對密鑰,一個是公開的,另一個是保密的。公共密鑰保存在公共區域,可在用戶中傳遞,甚至可印在報紙上面。而私鑰必須存放在安全保密的地方。任何人都可以有你的公鑰,但是只有你一個人能有你的私鑰。它的工作過程是:「你要我聽你的嗎?除非你用我的公鑰加密該消息,我就可以聽你的,因為我知道沒有別人在偷聽。只有我的私鑰(其他人沒有)才能解密該消息,所以我知道沒有人能讀到這個消息。我不必擔心大家都有我的公鑰,因為它不能用來解密該消息。」
公開密鑰的加密機制雖提供了良好的保密性,但難以鑒別發送者,即任何得到公開密鑰的人都可以生成和發送報文。數字簽名機制提供了一種鑒別方法,以解決偽造、抵賴、冒充和篡改等問題。
數字簽名一般採用非對稱加密技術(如RSA),通過對整個明文進行某種變換,得到一個值,作為核實簽名。接收者使用發送者的公開密鑰對簽名進行解密運算,如其結果為明文,則簽名有效,證明對方的身份是真實的。當然,簽名也可以採用多種方式,例如,將簽名附在明文之後。數字簽名普遍用於銀行、電子貿易等。
數字簽名不同於手寫簽字:數字簽名隨文本的變化而變化,手寫簽字反映某個人個性特徵,是不變的;數字簽名與文本信息是不可分割的,而手寫簽字是附加在文本之後的,與文本信息是分離的。
值得注意的是,能否切實有效地發揮加密機制的作用,關鍵的問題在於密鑰的管理,包括密鑰的生存、分發、安裝、保管、使用以及作廢全過程。