導航:首頁 > 源碼編譯 > 業界不安全加密演算法

業界不安全加密演算法

發布時間:2022-11-15 22:44:31

1. 現在計算機有關的加密技術有哪些哪些安全性不太高,已經或者逐漸被淘汰謝謝

加密演算法分為分組和流式加密。從密鑰方式分為對稱和非對成加密。RSA、ECC為非對稱密鑰。
分組的如des,3des等目前安全性不好,基本淘汰,由AES、IDEA等取代。
流式加密如RC4/5/6,RSA、ECC等RC4運算效率高,對差分分析等免疫RSA速度太慢,目前加密密鑰2048位才能安全;ECC運算效率高,比較簡潔。有可能替代RSA.
還有MD5、SHA等摘要演算法,MD5已經不安全,基本淘汰,MD5以前的更不用說。

2. 目前常用的加密解密演算法有哪些

加密演算法

加密技術是對信息進行編碼和解碼的技術,編碼是把原來可讀信息(又稱明文)譯成代碼形式(又稱密文),其逆過程就是解碼(解密)。加密技術的要點是加密演算法,加密演算法可以分為對稱加密、不對稱加密和不可逆加密三類演算法。

對稱加密演算法 對稱加密演算法是應用較早的加密演算法,技術成熟。在對稱加密演算法中,數據發信方將明文(原始數據)和加密密鑰一起經過特殊加密演算法處理後,使其變成復雜的加密密文發送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的密鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。在對稱加密演算法中,使用的密鑰只有一個,發收信雙方都使用這個密鑰對數據進行加密和解密,這就要求解密方事先必須知道加密密鑰。對稱加密演算法的特點是演算法公開、計算量小、加密速度快、加密效率高。不足之處是,交易雙方都使用同樣鑰匙,安全性得不到保證。此外,每對用戶每次使用對稱加密演算法時,都需要使用其他人不知道的惟一鑰匙,這會使得發收信雙方所擁有的鑰匙數量成幾何級數增長,密鑰管理成為用戶的負擔。對稱加密演算法在分布式網路系統上使用較為困難,主要是因為密鑰管理困難,使用成本較高。在計算機專網系統中廣泛使用的對稱加密演算法有DES和IDEA等。美國國家標准局倡導的AES即將作為新標准取代DES。

不對稱加密演算法不對稱加密演算法使用兩把完全不同但又是完全匹配的一對鑰匙—公鑰和私鑰。在使用不對稱加密演算法加密文件時,只有使用匹配的一對公鑰和私鑰,才能完成對明文的加密和解密過程。加密明文時採用公鑰加密,解密密文時使用私鑰才能完成,而且發信方(加密者)知道收信方的公鑰,只有收信方(解密者)才是唯一知道自己私鑰的人。不對稱加密演算法的基本原理是,如果發信方想發送只有收信方才能解讀的加密信息,發信方必須首先知道收信方的公鑰,然後利用收信方的公鑰來加密原文;收信方收到加密密文後,使用自己的私鑰才能解密密文。顯然,採用不對稱加密演算法,收發信雙方在通信之前,收信方必須將自己早已隨機生成的公鑰送給發信方,而自己保留私鑰。由於不對稱演算法擁有兩個密鑰,因而特別適用於分布式系統中的數據加密。廣泛應用的不對稱加密演算法有RSA演算法和美國國家標准局提出的DSA。以不對稱加密演算法為基礎的加密技術應用非常廣泛。

不可逆加密演算法 不可逆加密演算法的特徵是加密過程中不需要使用密鑰,輸入明文後由系統直接經過加密演算法處理成密文,這種加密後的數據是無法被解密的,只有重新輸入明文,並再次經過同樣不可逆的加密演算法處理,得到相同的加密密文並被系統重新識別後,才能真正解密。顯然,在這類加密過程中,加密是自己,解密還得是自己,而所謂解密,實際上就是重新加一次密,所應用的「密碼」也就是輸入的明文。不可逆加密演算法不存在密鑰保管和分發問題,非常適合在分布式網路系統上使用,但因加密計算復雜,工作量相當繁重,通常只在數據量有限的情形下使用,如廣泛應用在計算機系統中的口令加密,利用的就是不可逆加密演算法。近年來,隨著計算機系統性能的不斷提高,不可逆加密的應用領域正在逐漸增大。在計算機網路中應用較多不可逆加密演算法的有RSA公司發明的MD5演算法和由美國國家標准局建議的不可逆加密標准SHS(Secure Hash Standard:安全雜亂信息標准)等。

加密技術

加密演算法是加密技術的基礎,任何一種成熟的加密技術都是建立多種加密演算法組合,或者加密演算法和其他應用軟體有機結合的基礎之上的。下面我們介紹幾種在計算機網路應用領域廣泛應用的加密技術。

非否認(Non-repudiation)技術 該技術的核心是不對稱加密演算法的公鑰技術,通過產生一個與用戶認證數據有關的數字簽名來完成。當用戶執行某一交易時,這種簽名能夠保證用戶今後無法否認該交易發生的事實。由於非否認技術的操作過程簡單,而且直接包含在用戶的某類正常的電子交易中,因而成為當前用戶進行電子商務、取得商務信任的重要保證。

PGP(Pretty Good Privacy)技術 PGP技術是一個基於不對稱加密演算法RSA公鑰體系的郵件加密技術,也是一種操作簡單、使用方便、普及程度較高的加密軟體。PGP技術不但可以對電子郵件加密,防止非授權者閱讀信件;還能對電子郵件附加數字簽名,使收信人能明確了解發信人的真實身份;也可以在不需要通過任何保密渠道傳遞密鑰的情況下,使人們安全地進行保密通信。PGP技術創造性地把RSA不對稱加密演算法的方便性和傳統加密體系結合起來,在數字簽名和密鑰認證管理機制方面採用了無縫結合的巧妙設計,使其幾乎成為最為流行的公鑰加密軟體包。

數字簽名(Digital Signature)技術 數字簽名技術是不對稱加密演算法的典型應用。數字簽名的應用過程是,數據源發送方使用自己的私鑰對數據校驗和或其他與數據內容有關的變數進行加密處理,完成對數據的合法「簽名」,數據接收方則利用對方的公鑰來解讀收到的「數字簽名」,並將解讀結果用於對數據完整性的檢驗,以確認簽名的合法性。數字簽名技術是在網路系統虛擬環境中確認身份的重要技術,完全可以代替現實過程中的「親筆簽字」,在技術和法律上有保證。在公鑰與私鑰管理方面,數字簽名應用與加密郵件PGP技術正好相反。在數字簽名應用中,發送者的公鑰可以很方便地得到,但他的私鑰則需要嚴格保密。

PKI(Public Key Infrastructure)技術 PKI技術是一種以不對稱加密技術為核心、可以為網路提供安全服務的公鑰基礎設施。PKI技術最初主要應用在Internet環境中,為復雜的互聯網系統提供統一的身份認證、數據加密和完整性保障機制。由於PKI技術在網路安全領域所表現出的巨大優勢,因而受到銀行、證券、政府等核心應用系統的青睞。PKI技術既是信息安全技術的核心,也是電子商務的關鍵和基礎技術。由於通過網路進行的電子商務、電子政務等活動缺少物理接觸,因而使得利用電子方式驗證信任關系變得至關重要,PKI技術恰好能夠有效解決電子商務應用中的機密性、真實性、完整性、不可否認性和存取控制等安全問題。一個實用的PKI體系還必須充分考慮互操作性和可擴展性。PKI體系所包含的認證中心(CA)、注冊中心(RA)、策略管理、密鑰與證書管理、密鑰備份與恢復、撤銷系統等功能模塊應該有機地結合在一起。

加密的未來趨勢

盡管雙鑰密碼體制比單鑰密碼體制更為可靠,但由於計算過於復雜,雙鑰密碼體制在進行大信息量通信時,加密速率僅為單鑰體制的1/100,甚至是 1/1000。正是由於不同體制的加密演算法各有所長,所以在今後相當長的一段時期內,各類加密體制將會共同發展。而在由IBM等公司於1996年聯合推出的用於電子商務的協議標准SET(Secure Electronic Transaction)中和1992年由多國聯合開發的PGP技術中,均採用了包含單鑰密碼、雙鑰密碼、單向雜湊演算法和隨機數生成演算法在內的混合密碼系統的動向來看,這似乎從一個側面展示了今後密碼技術應用的未來。

在單鑰密碼領域,一次一密被認為是最為可靠的機制,但是由於流密碼體制中的密鑰流生成器在演算法上未能突破有限循環,故一直未被廣泛應用。如果找到一個在演算法上接近無限循環的密鑰流生成器,該體制將會有一個質的飛躍。近年來,混沌學理論的研究給在這一方向產生突破帶來了曙光。此外,充滿生氣的量子密碼被認為是一個潛在的發展方向,因為它是基於光學和量子力學理論的。該理論對於在光纖通信中加強信息安全、對付擁有量子計算能力的破譯無疑是一種理想的解決方法。

由於電子商務等民用系統的應用需求,認證加密演算法也將有較大發展。此外,在傳統密碼體制中,還將會產生類似於IDEA這樣的新成員,新成員的一個主要特徵就是在演算法上有創新和突破,而不僅僅是對傳統演算法進行修正或改進。密碼學是一個正在不斷發展的年輕學科,任何未被認識的加/解密機制都有可能在其中佔有一席之地。

目前,對信息系統或電子郵件的安全問題,還沒有一個非常有效的解決方案,其主要原因是由於互聯網固有的異構性,沒有一個單一的信任機構可以滿足互聯網全程異構性的所有需要,也沒有一個單一的協議能夠適用於互聯網全程異構性的所有情況。解決的辦法只有依靠軟體代理了,即採用軟體代理來自動管理用戶所持有的證書(即用戶所屬的信任結構)以及用戶所有的行為。每當用戶要發送一則消息或一封電子郵件時,代理就會自動與對方的代理協商,找出一個共同信任的機構或一個通用協議來進行通信。在互聯網環境中,下一代的安全信息系統會自動為用戶發送加密郵件,同樣當用戶要向某人發送電子郵件時,用戶的本地代理首先將與對方的代理交互,協商一個適合雙方的認證機構。當然,電子郵件也需要不同的技術支持,因為電子郵件不是端到端的通信,而是通過多個中間機構把電子郵件分程傳遞到各自的通信機器上,最後到達目的地。

3. 非對稱加密演算法有哪些

RSA:RSA 是一種目前應用非常廣泛、歷史也比較悠久的非對稱秘鑰加密技術,在1977年被麻省理工學院的羅納德·李維斯特(Ron Rivest)、阿迪·薩莫爾(Adi Shamir)和倫納德·阿德曼(Leonard Adleman)三位科學家提出,由於難於破解,RSA 是目前應用最廣泛的數字加密和簽名技術,比如國內的支付寶就是通過RSA演算法來進行簽名驗證。它的安全程度取決於秘鑰的長度,目前主流可選秘鑰長度為 1024位、2048位、4096位等,理論上秘鑰越長越難於破解,按照維基網路上的說法,小於等於256位的秘鑰,在一台個人電腦上花幾個小時就能被破解,512位的秘鑰和768位的秘鑰也分別在1999年和2009年被成功破解,雖然目前還沒有公開資料證實有人能夠成功破解1024位的秘鑰,但顯然距離這個節點也並不遙遠,所以目前業界推薦使用 2048 位或以上的秘鑰,不過目前看 2048 位的秘鑰已經足夠安全了,支付寶的官方文檔上推薦也是2048位,當然更長的秘鑰更安全,但也意味著會產生更大的性能開銷。

DSA:既 Digital Signature Algorithm,數字簽名演算法,他是由美國國家標准與技術研究所(NIST)與1991年提出。和 RSA 不同的是 DSA 僅能用於數字簽名,不能進行數據加密解密,其安全性和RSA相當,但其性能要比RSA快。

ECDSA:Elliptic Curve Digital Signature Algorithm,橢圓曲線簽名演算法,是ECC(Elliptic curve cryptography,橢圓曲線密碼學)和 DSA 的結合,橢圓曲線在密碼學中的使用是在1985年由Neal Koblitz和Victor Miller分別獨立提出的,相比於RSA演算法,ECC 可以使用更小的秘鑰,更高的效率,提供更高的安全保障,據稱256位的ECC秘鑰的安全性等同於3072位的RSA秘鑰,和普通DSA相比,ECDSA在計算秘鑰的過程中,部分因子使用了橢圓曲線演算法。

4. 非對稱加密演算法 (RSA、DSA、ECC、DH)

非對稱加密需要兩個密鑰:公鑰(publickey) 和私鑰 (privatekey)。公鑰和私鑰是一對,如果用公鑰對數據加密,那麼只能用對應的私鑰解密。如果用私鑰對數據加密,只能用對應的公鑰進行解密。因為加密和解密用的是不同的密鑰,所以稱為非對稱加密。

非對稱加密演算法的保密性好,它消除了最終用戶交換密鑰的需要。但是加解密速度要遠遠慢於對稱加密,在某些極端情況下,甚至能比對稱加密慢上1000倍。

演算法強度復雜、安全性依賴於演算法與密鑰但是由於其演算法復雜,而使得加密解密速度沒有對稱加密解密的速度快。對稱密碼體制中只有一種密鑰,並且是非公開的,如果要解密就得讓對方知道密鑰。所以保證其安全性就是保證密鑰的安全,而非對稱密鑰體制有兩種密鑰,其中一個是公開的,這樣就可以不需要像對稱密碼那樣傳輸對方的密鑰了。這樣安全性就大了很多。

RSA、Elgamal、背包演算法、Rabin、D-H、ECC (橢圓曲線加密演算法)。使用最廣泛的是 RSA 演算法,Elgamal 是另一種常用的非對稱加密演算法。

收信者是唯一能夠解開加密信息的人,因此收信者手裡的必須是私鑰。發信者手裡的是公鑰,其它人知道公鑰沒有關系,因為其它人發來的信息對收信者沒有意義。

客戶端需要將認證標識傳送給伺服器,此認證標識 (可能是一個隨機數) 其它客戶端可以知道,因此需要用私鑰加密,客戶端保存的是私鑰。伺服器端保存的是公鑰,其它伺服器知道公鑰沒有關系,因為客戶端不需要登錄其它伺服器。

數字簽名是為了表明信息沒有受到偽造,確實是信息擁有者發出來的,附在信息原文的後面。就像手寫的簽名一樣,具有不可抵賴性和簡潔性。

簡潔性:對信息原文做哈希運算,得到消息摘要,信息越短加密的耗時越少。

不可抵賴性:信息擁有者要保證簽名的唯一性,必須是唯一能夠加密消息摘要的人,因此必須用私鑰加密 (就像字跡他人無法學會一樣),得到簽名。如果用公鑰,那每個人都可以偽造簽名了。

問題起源:對1和3,發信者怎麼知道從網上獲取的公鑰就是真的?沒有遭受中間人攻擊?

這樣就需要第三方機構來保證公鑰的合法性,這個第三方機構就是 CA (Certificate Authority),證書中心。

CA 用自己的私鑰對信息原文所有者發布的公鑰和相關信息進行加密,得出的內容就是數字證書。

信息原文的所有者以後發布信息時,除了帶上自己的簽名,還帶上數字證書,就可以保證信息不被篡改了。信息的接收者先用 CA給的公鑰解出信息所有者的公鑰,這樣可以保證信息所有者的公鑰是真正的公鑰,然後就能通過該公鑰證明數字簽名是否真實了。

RSA 是目前最有影響力的公鑰加密演算法,該演算法基於一個十分簡單的數論事實:將兩個大素數相乘十分容易,但想要對其乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰,即公鑰,而兩個大素數組合成私鑰。公鑰是可發布的供任何人使用,私鑰則為自己所有,供解密之用。

A 要把信息發給 B 為例,確定角色:A 為加密者,B 為解密者。首先由 B 隨機確定一個 KEY,稱之為私鑰,將這個 KEY 始終保存在機器 B 中而不發出來;然後,由這個 KEY 計算出另一個 KEY,稱之為公鑰。這個公鑰的特性是幾乎不可能通過它自身計算出生成它的私鑰。接下來通過網路把這個公鑰傳給 A,A 收到公鑰後,利用公鑰對信息加密,並把密文通過網路發送到 B,最後 B 利用已知的私鑰,就能對密文進行解碼了。以上就是 RSA 演算法的工作流程。

由於進行的都是大數計算,使得 RSA 最快的情況也比 DES 慢上好幾倍,無論是軟體還是硬體實現。速度一直是 RSA 的缺陷。一般來說只用於少量數據加密。RSA 的速度是對應同樣安全級別的對稱密碼演算法的1/1000左右。

比起 DES 和其它對稱演算法來說,RSA 要慢得多。實際上一般使用一種對稱演算法來加密信息,然後用 RSA 來加密比較短的公鑰,然後將用 RSA 加密的公鑰和用對稱演算法加密的消息發送給接收方。

這樣一來對隨機數的要求就更高了,尤其對產生對稱密碼的要求非常高,否則的話可以越過 RSA 來直接攻擊對稱密碼。

和其它加密過程一樣,對 RSA 來說分配公鑰的過程是非常重要的。分配公鑰的過程必須能夠抵擋中間人攻擊。假設 A 交給 B 一個公鑰,並使 B 相信這是A 的公鑰,並且 C 可以截下 A 和 B 之間的信息傳遞,那麼 C 可以將自己的公鑰傳給 B,B 以為這是 A 的公鑰。C 可以將所有 B 傳遞給 A 的消息截下來,將這個消息用自己的密鑰解密,讀這個消息,然後將這個消息再用 A 的公鑰加密後傳給 A。理論上 A 和 B 都不會發現 C 在偷聽它們的消息,今天人們一般用數字認證來防止這樣的攻擊。

(1) 針對 RSA 最流行的攻擊一般是基於大數因數分解。1999年,RSA-155 (512 bits) 被成功分解,花了五個月時間(約8000 MIPS 年)和224 CPU hours 在一台有3.2G 中央內存的 Cray C916計算機上完成。

RSA-158 表示如下:

2009年12月12日,編號為 RSA-768 (768 bits, 232 digits) 數也被成功分解。這一事件威脅了現通行的1024-bit 密鑰的安全性,普遍認為用戶應盡快升級到2048-bit 或以上。

RSA-768表示如下:

(2) 秀爾演算法
量子計算里的秀爾演算法能使窮舉的效率大大的提高。由於 RSA 演算法是基於大數分解 (無法抵抗窮舉攻擊),因此在未來量子計算能對 RSA 演算法構成較大的威脅。一個擁有 N 量子位的量子計算機,每次可進行2^N 次運算,理論上講,密鑰為1024位長的 RSA 演算法,用一台512量子比特位的量子計算機在1秒內即可破解。

DSA (Digital Signature Algorithm) 是 Schnorr 和 ElGamal 簽名演算法的變種,被美國 NIST 作為 DSS (DigitalSignature Standard)。 DSA 是基於整數有限域離散對數難題的。

簡單的說,這是一種更高級的驗證方式,用作數字簽名。不單單只有公鑰、私鑰,還有數字簽名。私鑰加密生成數字簽名,公鑰驗證數據及簽名,如果數據和簽名不匹配則認為驗證失敗。數字簽名的作用就是校驗數據在傳輸過程中不被修改,數字簽名,是單向加密的升級。

橢圓加密演算法(ECC)是一種公鑰加密演算法,最初由 Koblitz 和 Miller 兩人於1985年提出,其數學基礎是利用橢圓曲線上的有理點構成 Abel 加法群上橢圓離散對數的計算困難性。公鑰密碼體制根據其所依據的難題一般分為三類:大整數分解問題類、離散對數問題類、橢圓曲線類。有時也把橢圓曲線類歸為離散對數類。

ECC 的主要優勢是在某些情況下它比其他的方法使用更小的密鑰 (比如 RSA),提供相當的或更高等級的安全。ECC 的另一個優勢是可以定義群之間的雙線性映射,基於 Weil 對或是 Tate 對;雙線性映射已經在密碼學中發現了大量的應用,例如基於身份的加密。不過一個缺點是加密和解密操作的實現比其他機制花費的時間長。

ECC 被廣泛認為是在給定密鑰長度的情況下,最強大的非對稱演算法,因此在對帶寬要求十分緊的連接中會十分有用。

比特幣錢包公鑰的生成使用了橢圓曲線演算法,通過橢圓曲線乘法可以從私鑰計算得到公鑰, 這是不可逆轉的過程。

https://github.com/esxgx/easy-ecc

Java 中 Chipher、Signature、KeyPairGenerator、KeyAgreement、SecretKey 均不支持 ECC 演算法。

https://www.jianshu.com/p/58c1750c6f22

DH,全稱為"Diffie-Hellman",它是一種確保共享 KEY 安全穿越不安全網路的方法,也就是常說的密鑰一致協議。由公開密鑰密碼體制的奠基人 Diffie 和 Hellman 所提出的一種思想。簡單的說就是允許兩名用戶在公開媒體上交換信息以生成"一致"的、可以共享的密鑰。也就是由甲方產出一對密鑰 (公鑰、私鑰),乙方依照甲方公鑰產生乙方密鑰對 (公鑰、私鑰)。

以此為基線,作為數據傳輸保密基礎,同時雙方使用同一種對稱加密演算法構建本地密鑰 (SecretKey) 對數據加密。這樣,在互通了本地密鑰 (SecretKey) 演算法後,甲乙雙方公開自己的公鑰,使用對方的公鑰和剛才產生的私鑰加密數據,同時可以使用對方的公鑰和自己的私鑰對數據解密。不單單是甲乙雙方兩方,可以擴展為多方共享數據通訊,這樣就完成了網路交互數據的安全通訊。

具體例子可以移步到這篇文章: 非對稱密碼之DH密鑰交換演算法

參考:
https://blog.csdn.net/u014294681/article/details/86705999

https://www.cnblogs.com/wangzxblog/p/13667634.html

https://www.cnblogs.com/taoxw/p/15837729.html

https://www.cnblogs.com/fangfan/p/4086662.html

https://www.cnblogs.com/utank/p/7877761.html

https://blog.csdn.net/m0_59133441/article/details/122686815

https://www.cnblogs.com/muliu/p/10875633.html

https://www.cnblogs.com/wf-zhang/p/14923279.html

https://www.jianshu.com/p/7a927db713e4

https://blog.csdn.net/ljx1400052550/article/details/79587133

https://blog.csdn.net/yuanjian0814/article/details/109815473

5. aes加密安全嗎

AES演算法作為DES演算法和MD5演算法的替代產品,10輪循環到目前為止還沒有被破解。一般多數人的意見是:它是目前可獲得的最安全的加密演算法。AES與目前使用廣泛的加密演算法─DES演算法的差別在於,如果一秒可以解DES,則仍需要花費1490000億年才可破解AES,由此可知AES的安全性。AES 已被列為比任何現今其它對稱加密演算法更安全的一種演算法。

6. 對稱加密演算法的缺點有哪些

1、對稱加密演算法
優點
加解密的高速度和使用長密鑰時的難破解性。
缺點
對稱加密演算法的安全性取決於加密密鑰的保存情況,但要求企業中每一個持有密鑰的人都保守秘密是不可能的,他們通常會有意無意的把密鑰泄漏出去。如果一個用戶使用的密鑰被入侵者所獲得,入侵者便可以讀取該用戶密鑰加密的所有文檔,如果整個企業共用一個加密密鑰,那整個企業文檔的保密性便無從談起。
2、非對稱加密演算法
優點
非對稱密鑰體制有兩種密鑰,其中一個是公開的,這樣就可以不需要像對稱密碼那樣傳輸對方的密鑰了。這樣安全性就大了很多。
缺點
演算法強度復雜、安全性依賴於演算法與密鑰但是由於其演算法復雜,而使得加密解密速度沒有對稱加密解密的速度快。
3、傳統密碼體制
優點
由於DES加密速度快,適合加密較長的報文。
缺點
通用密鑰密碼體制的加密密鑰和解密密鑰是通用的,即發送方和接收方使用同樣密鑰的密碼體制。
4、公鑰密碼體制
優點
RSA演算法的加密密鑰和加密演算法分開,使得密鑰分配更為方便。
RSA演算法解決了大量網路用戶密鑰管理的難題。

缺點
RSA的密鑰很長,加密速度慢。

7. 常見的加密演算法、原理、優缺點、用途

在安全領域,利用密鑰加密演算法來對通信的過程進行加密是一種常見的安全手段。利用該手段能夠保障數據安全通信的三個目標:

而常見的密鑰加密演算法類型大體可以分為三類:對稱加密、非對稱加密、單向加密。下面我們來了解下相關的演算法原理及其常見的演算法。

在加密傳輸中最初是採用對稱密鑰方式,也就是加密和解密都用相同的密鑰。

1.對稱加密演算法採用單密鑰加密,在通信過程中,數據發送方將原始數據分割成固定大小的塊,經過密鑰和加密演算法逐個加密後,發送給接收方

2.接收方收到加密後的報文後,結合解密演算法使用相同密鑰解密組合後得出原始數據。

圖示:

非對稱加密演算法採用公鑰和私鑰兩種不同的密碼來進行加解密。公鑰和私鑰是成對存在,公鑰是從私鑰中提取產生公開給所有人的,如果使用公鑰對數據進行加密,那麼只有對應的私鑰(不能公開)才能解密,反之亦然。N 個用戶通信,需要2N個密鑰。

非對稱密鑰加密適合對密鑰或身份信息等敏感信息加密,從而在安全性上滿足用戶的需求。

1.甲使用乙的公鑰並結合相應的非對稱演算法將明文加密後發送給乙,並將密文發送給乙。
2.乙收到密文後,結合自己的私鑰和非對稱演算法解密得到明文,得到最初的明文。

圖示:

單向加密演算法只能用於對數據的加密,無法被解密,其特點為定長輸出、雪崩效應(少量消息位的變化會引起信息摘要的許多位變化)。

單向加密演算法常用於提取數據指紋,驗證數據的完整性、數字摘要、數字簽名等等。

1.發送者將明文通過單向加密演算法加密生成定長的密文串,然後傳遞給接收方。

2.接收方將用於比對驗證的明文使用相同的單向加密演算法進行加密,得出加密後的密文串。

3.將之與發送者發送過來的密文串進行對比,若發送前和發送後的密文串相一致,則說明傳輸過程中數據沒有損壞;若不一致,說明傳輸過程中數據丟失了。

圖示:

MD5、sha1、sha224等等

密鑰交換IKE(Internet Key Exchange)通常是指雙方通過交換密鑰來實現數據加密和解密

常見的密鑰交換方式有下面兩種:

將公鑰加密後通過網路傳輸到對方進行解密,這種方式缺點在於具有很大的可能性被攔截破解,因此不常用

DH演算法是一種密鑰交換演算法,其既不用於加密,也不產生數字簽名。

DH演算法通過雙方共有的參數、私有參數和演算法信息來進行加密,然後雙方將計算後的結果進行交換,交換完成後再和屬於自己私有的參數進行特殊演算法,經過雙方計算後的結果是相同的,此結果即為密鑰。

如:

安全性

在整個過程中,第三方人員只能獲取p、g兩個值,AB雙方交換的是計算後的結果,因此這種方式是很安全的。

答案:使用公鑰證書

公鑰基礎設施是一個包括硬體、軟體、人員、策略和規程的集合

用於實現基於公鑰密碼機制的密鑰和證書的生成、管理、存儲、分發和撤銷的功能

簽證機構CA、注冊機構RA、證書吊銷列表CRL和證書存取庫CB。

公鑰證書是以數字簽名的方式聲明,它將公鑰的值綁定到持有對應私鑰的個人、設備或服務身份。公鑰證書的生成遵循X.509協議的規定,其內容包括:證書名稱、證書版本、序列號、演算法標識、頒發者、有效期、有效起始日期、有效終止日期、公鑰 、證書簽名等等的內容。

1.客戶A准備好要傳送的數字信息(明文)。(准備明文)

2.客戶A對數字信息進行哈希(hash)運算,得到一個信息摘要。(准備摘要)

3.客戶A用CA的私鑰(SK)對信息摘要進行加密得到客戶A的數字簽名,並將其附在數字信息上。(用私鑰對數字信息進行數字簽名)

4.客戶A隨機產生一個加密密鑰(DES密鑰),並用此密鑰對要發送的信息進行加密,形成密文。 (生成密文)

5.客戶A用雙方共有的公鑰(PK)對剛才隨機產生的加密密鑰進行加密,將加密後的DES密鑰連同密文一起傳送給乙。(非對稱加密,用公鑰對DES密鑰進行加密)

6.銀行B收到客戶A傳送過來的密文和加過密的DES密鑰,先用自己的私鑰(SK)對加密的DES密鑰進行解密,得到DES密鑰。(用私鑰對DES密鑰解密)

7.銀行B然後用DES密鑰對收到的密文進行解密,得到明文的數字信息,然後將DES密鑰拋棄(即DES密鑰作廢)。(解密文)

8.銀行B用雙方共有的公鑰(PK)對客戶A的數字簽名進行解密,得到信息摘要。銀行B用相同的hash演算法對收到的明文再進行一次hash運算,得到一個新的信息摘要。(用公鑰解密數字簽名)

9.銀行B將收到的信息摘要和新產生的信息摘要進行比較,如果一致,說明收到的信息沒有被修改過。(對比信息摘要和信息)

答案是沒法保證CA的公鑰沒有被篡改。通常操作系統和瀏覽器會預制一些CA證書在本地。所以發送方應該去那些通過認證的CA處申請數字證書。這樣是有保障的。

但是如果系統中被插入了惡意的CA證書,依然可以通過假冒的數字證書發送假冒的發送方公鑰來驗證假冒的正文信息。所以安全的前提是系統中不能被人插入非法的CA證書。

END

8. 加密是什麼意思

加密,是以某種特殊的演算法改變原有的信息數據,使得未授權的用戶即使獲得了已加密的信息,但因不知解密的方法,仍然無法了解信息的內容。 在航空學中,指利用航空攝影像片上已知的少數控制點,通過對像片測量和計算的方法在像對或整條航攝帶上增加控制點的作業。

加密之所以安全,絕非因不知道加密解密演算法方法,而是加密的密鑰是絕對的隱藏,現在流行的RSA和AES加密演算法都是完全公開的,一方取得已加密的數據,就算知道加密演算法也好,若沒有加密的密鑰,也不能打開被加密保護的信息。單單隱蔽加密演算法以保護信息,在學界和業界已有相當討論,一般認為是不夠安全的。公開的加密演算法是給黑客和加密家長年累月攻擊測試,對比隱蔽的加密演算法要安全得多。
在密碼學中,加密是將明文信息隱匿起來,使之在缺少特殊信息時不可讀。雖然加密作為通信保密的手段已經存在了幾個世紀,但是,只有那些對安全要求特別高的組織和個人才會使用它。在20世紀70年代中期,強加密(Strong Encryption) 的使用開始從政府保密機構延伸至公共領域, 並且目 前已經成為保護許多廣泛使用系統的方法,比如網際網路電子商務、手機網路和銀行自動取款機等。
加密可以用於保證安全性, 但是其它一些技術在保障通信安全方面仍然是必須的,尤其是關於數據完整性和信息驗證;例如,信息驗證碼(MAC)或者數字簽名。另一方面的考慮是為了應付流量分析。
加密或軟體編碼隱匿(Code Obfuscation)同時也在軟體版權保護中用於對付反向工程,未授權的程序分析,破解和軟體盜版及數位內容的數位版權管理 (DRM)等。
盡管加密或為了安全目的對信息解碼這個概念十分簡單,但在這里仍需對其進行解釋。數據加密的基本過程包括對稱為明文的原來可讀信息進行翻譯,譯成稱為密文或密碼的代碼形式。該過程的逆過程為解密,即將該編碼信息轉化為其原來的形式的過程。

9. 不安全的加密演算法不包括什麼

DES(Data Encryption Standard):數據加密標准,速度較快,適用於加密大量數據的場合。

3DES(Triple DES):是基於DES,對一塊數據用三個不同的密鑰進行三次加密,強度更高。

AES(Advanced Encryption Standard):高級加密標准,是下一代的加密演算法標准,速度快,安全級別高;

演算法原理
AES 演算法基於排列和置換運算。排列是對數據重新進行安排,置換是將一個數據單元替換為另一個。AES 使用幾種不同的方法來執行排列和置換運算。

10. 幾種常見加密演算法解析及使用

幾種對稱性加密演算法:AES,DES,3DES
DES是一種分組數據加密技術(先將數據分成固定長度的小數據塊,之後進行加密),速度較快,適用於大量數據加密,而3DES是一種基於DES的加密演算法,使用3個不同密匙對同一個分組數據塊進行3次加密,如此以使得密文強度更高。
相較於DES和3DES演算法而言,AES演算法有著更高的速度和資源使用效率,安全級別也較之更高了,被稱為下一代加密標准。
幾種非對稱性加密演算法:RSA,DSA,ECC
RSA和DSA的安全性及其它各方面性能都差不多,而ECC較之則有著很多的性能優越,包括處理速度,帶寬要求,存儲空間等等。
幾種線性散列演算法(簽名演算法):MD5,SHA1,HMAC
這幾種演算法只生成一串不可逆的密文,經常用其效驗數據傳輸過程中是否經過修改,因為相同的生成演算法對於同一明文只會生成唯一的密文,若相同演算法生成的密文不同,則證明傳輸數據進行過了修改。通常在數據傳說過程前,使用MD5和SHA1演算法均需要發送和接收數據雙方在數據傳送之前就知道密匙生成演算法,而HMAC與之不同的是需要生成一個密匙,發送方用此密匙對數據進行摘要處理(生成密文),接收方再利用此密匙對接收到的數據進行摘要處理,再判斷生成的密文是否相同。
對於各種加密演算法的選用:
由於對稱加密演算法的密鑰管理是一個復雜的過程,密鑰的管理直接決定著他的安全性,因此當數據量很小時,我們可以考慮採用非對稱加密演算法。
在實際的操作過程中,我們通常採用的方式是:採用非對稱加密演算法管理對稱演算法的密鑰,然後用對稱加密演算法加密數據,這樣我們就集成了兩類加密演算法的優點,既實現了加密速度快的優點,又實現了安全方便管理密鑰的優點。
如果在選定了加密演算法後,那採用多少位的密鑰呢?一般來說,密鑰越長,運行的速度就越慢,應該根據的我們實際需要的安全級別來選擇,一般來說,RSA建議採用1024位的數字,ECC建議採用160位,AES採用128為即可。

閱讀全文

與業界不安全加密演算法相關的資料

熱點內容
安卓手機怎麼把圖標全部下移 瀏覽:183
飢荒被伺服器踢出怎麼進 瀏覽:170
c編譯器哪款好 瀏覽:731
快手寶哥發明什麼app 瀏覽:822
張艷玲編譯 瀏覽:66
android展開收起動畫 瀏覽:237
linuxxz文件 瀏覽:160
在游戲中心裏面怎麼玩到解壓神器 瀏覽:484
電腦發到手機裡面照片怎麼解壓 瀏覽:73
虛擬pdf列印機64位 瀏覽:413
支付寶AES加密和解密 瀏覽:379
編譯實驗原理下載 瀏覽:131
加密防偽溯源系統私人定做 瀏覽:222
掃碼給電動車充電的app叫什麼 瀏覽:760
關閉命令提醒 瀏覽:356
雲賬本app伺服器 瀏覽:499
python輸入數字循環 瀏覽:370
未成年人用什麼app 瀏覽:517
程序員出差多久回家 瀏覽:433
安卓如何更改文件名字 瀏覽:1002