數據加密模式
A. 數據加密方式有哪些
對稱加密:三重DES、AES、SM4等
非對稱加密:RSA、SM2等
其他的保護數據隱私的方法還有同態加密、差分隱私、安全多方計算等
目前我們公司一直和上海安策信息合作的,安策信息研發了好幾種數據加密工具,包括加密狗、加密機、動態口令、加密工具等網路也有很多相關資料。
B. 網路數據加密主要有哪三種方式
一般的數據加密可以在通信的三個層次來實現:鏈路加密、節點加密和端到端加密。
1.鏈路加密
對於在兩個網路節點間的某一次通信鏈路,鏈路加密能為網上傳輸的數據提供安全保證。對於鏈路加密(又稱在線加密),所有消息在被傳輸之前進行加密,在每一個節點對接收到的消息進行解密,然後先使用下一個鏈路的密鑰對消息進行加密,再進行傳輸。在到達目的地之前,一條消息可能要經過許多通信鏈路的傳輸。
2.節點加密
盡管節點加密能給網路數據提供較高的安全性,但它在操作方式上與鏈路加密是類似的:兩者均在通信鏈路上為傳輸的消息提供安全性;都在中間節點先對消息進行解密,然後進行加密。因為要對所有傳輸的數據進行加密,所以加密過程對用戶是透明的。
3.端到端加密
端到端加密允許數據在從源點到終點的傳輸過程中始終以密文形式存在。採用端到端加密(又稱脫線加密或包加密),消息在被傳輸時到達終點之前不進行解密,因為消息在整個傳輸過程中均受到保護,所以即使有節點被損壞也不會使消息泄露。
C. js中常見的數據加密與解密的方法
加密在我們前端的開發中也是經常遇見的。本文只把我們常用的加密方法進行總結。不去糾結加密的具體實現方式(密碼學,太龐大了)。
常見的加密演算法基本分為這幾類,
RSA加密:RSA加密演算法是一種非對稱加密演算法。在公開密鑰加密和電子商業中RSA被廣泛使用。(這才是正經的加密演算法)
非對稱加密演算法:非對稱加密演算法需要兩個密鑰:公開密鑰(publickey:簡稱公鑰)和私有密鑰(privatekey:簡稱私鑰)。公鑰與私鑰是一對,如果用公鑰對數據進行加密,只有用對應的私鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種演算法叫作非對稱加密演算法。
DES全稱為Data Encryption Standard,即數據加密標准,是一種使用密鑰加密的塊演算法
DES演算法的入口參數有三個:Key、Data、Mode。其中Key為7個位元組共56位,是DES演算法的工作密鑰;Data為8個位元組64位,是要被加密或被解密的數據;Mode為DES的工作方式,有兩種:加密或解密。
AES這個標准用來替代原先的DES
DES/AES我們合並在一起介紹其用法和特點
Base64是一種用64個字元來表示任意二進制數據的方法。base64是一種編碼方式而不是加密演算法。只是看上去像是加密而已(嚇唬人)。
D. 路由器無線加密選擇什麼模式好
無線路由器主要提供了三種無線安全類型:WPA-PSK/WPA2-PSK、WPA/WPA2 以及WEP。不同的安全類型下,安全設置項不同。
1. WPA-PSK/WPA2-PSK
WPA-PSK/WPA2-PSK安全類型其實是WPA/WPA2的一種簡化版本,它是基於共享密鑰的WPA模式,安全性很高,設置也比較簡單,適合普通家庭用戶和小型企業使用。
認證類型: 該項用來選擇系統採用的安全模式,即自動、WPA-PSK、WPA2-PSK。自動:若選擇該項,路由器會根據主機請求自動選擇WPA-PSK或WPA2-PSK安全模式。
加密演算法: 該項用來選擇對無線數據進行加密的安全演算法,選項有自動、TKIP、AES。默認選項為自動,選擇該項後,路由器將根據實際需要自動選擇TKIP或AES加密方式。注意11N模式不支持TKIP演算法。
PSK密碼: 該項是WPA-PSK/WPA2-PSK的初始設置密鑰,設置時,要求為8-63個ASCII字元或8-64個十六進制字元。
組密鑰更新周期:該項設置廣播和組播密鑰的定時更新周期,以秒為單位,最小值為30,若該值為0,則表示不進行更新。
2. WPA/WPA2
WPA/WPA2是一種比WEP強大的加密演算法,選擇這種安全類型,路由器將採用Radius伺服器進行身份認證並得到密鑰的WPA或WPA2安全模式。由於要架設一台專用的認證伺服器,代價比較昂貴且維護也很復雜,所以不推薦普通用戶使用此安全類型。
3. WEP
WEP是Wired Equivalent Privacy的縮寫,它是一種基本的加密方法,其安全性不如另外兩種安全類型高。選擇WEP安全類型,路由器將使用802.11基本的WEP安全模式。這里需要注意的是因為802.11N不支持此加密方式,如果您選擇此加密方式,路由器可能會工作在較低的傳輸速率上。
4.其他說明:三種無線加密方式對無線網路傳輸速率的影響也不盡相同。由於IEEE 802.11n標准不支持以WEP加密或TKIP加密演算法的高吞吐率,所以如果用戶選擇了WEP加密方式或WPA-PSK/WPA2-PSK加密方式的TKIP演算法,無線傳輸速率將會自動限制在11g水平(理論值54Mbps,實際測試成績在20Mbps左右)。也就是說,如果用戶使用的是符合IEEE 802.11n標準的無線產品(理論速率150M或300M),那麼無線加密方式只能選擇WPA-PSK/WPA2-PSK的AES演算法加密,否則無線傳輸速率將會明顯降低。而如果用戶使用的是符合IEEE 802.11g標準的無線產品,那麼三種加密方式都可以很好的兼容,不過仍然不建議大家選擇WEP這種較老且已經被破解的加密方式,最好可以升級一下無線路由。
E. 加密方式有幾種
加密方式的種類:
1、MD5
一種被廣泛使用的密碼散列函數,可以產生出一個128位(16位元組)的散列值(hash value),用於確保信息傳輸完整一致。MD5由美國密碼學家羅納德·李維斯特(Ronald Linn Rivest)設計,於1992年公開,用以取代MD4演算法。這套演算法的程序在 RFC 1321 標准中被加以規范。
2、對稱加密
對稱加密採用單鑰密碼系統的加密方法,同一個密鑰可以同時用作信息的加密和解密,這種加密方法稱為對稱加密,也稱為單密鑰加密。
3、非對稱加密
與對稱加密演算法不同,非對稱加密演算法需要兩個密鑰:公開密鑰(publickey)和私有密鑰(privatekey)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密。
如果用私有密鑰對數據進行加密,那麼只有用對應的公開密鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種演算法叫作非對稱加密演算法。
(5)數據加密模式擴展閱讀
非對稱加密工作過程
1、乙方生成一對密鑰(公鑰和私鑰)並將公鑰向其它方公開。
2、得到該公鑰的甲方使用該密鑰對機密信息進行加密後再發送給乙方。
3、乙方再用自己保存的另一把專用密鑰(私鑰)對加密後的信息進行解密。乙方只能用其專用密鑰(私鑰)解密由對應的公鑰加密後的信息。
在傳輸過程中,即使攻擊者截獲了傳輸的密文,並得到了乙的公鑰,也無法破解密文,因為只有乙的私鑰才能解密密文。
同樣,如果乙要回復加密信息給甲,那麼需要甲先公布甲的公鑰給乙用於加密,甲自己保存甲的私鑰用於解密。
F. 數據加密主要有哪些方式
主要有兩種方式:「對稱式」和「非對稱式」。
對稱式加密就是加密和解密使用同一個密鑰,通常稱之為「Session Key 」這種加密技術目前被廣泛採用,如美國政府所採用的DES加密標准就是一種典型的「對稱式」加密法,它的Session Key長度為56Bits。
非對稱式加密就是加密和解密所使用的不是同一個密鑰,通常有兩個密鑰,稱為「公鑰」和「私鑰」,它們兩個必需配對使用,否則不能打開加密文件。這里的「公鑰」是指可以對外公布的,「私鑰」則不能,只能由持有人一個人知道。它的優越性就在這里,因為對稱式的加密方法如果是在網路上傳輸加密文件就很難把密鑰告訴對方,不管用什麼方法都有可能被別竊聽到。而非對稱式的加密方法有兩個密鑰,且其中的「公鑰」是可以公開的,也就不怕別人知道,收件人解密時只要用自己的私鑰即可以,這樣就很好地避免了密鑰的傳輸安全性問題。
一般的數據加密可以在通信的三個層次來實現:鏈路加密、節點加密和端到端加密。(3)
鏈路加密
對於在兩個網路節點間的某一次通信鏈路,鏈路加密能為網上傳輸的數據提供安全證。對於鏈路加密(又稱在線加密),所有消息在被傳輸之前進行加密,在每一個節點對接收到消息進行解密,然後先使用下一個鏈路的密鑰對消息進行加密,再進行傳輸。在到達目的地之前,一條消息可能要經過許多通信鏈路的傳輸。
由於在每一個中間傳輸節點消息均被解密後重新進行加密,因此,包括路由信息在內的鏈路上的所有數據均以密文形式出現。這樣,鏈路加密就掩蓋了被傳輸消息的源點與終點。由於填充技術的使用以及填充字元在不需要傳輸數據的情況下就可以進行加密,這使得消息的頻率和長度特性得以掩蓋,從而可以防止對通信業務進行分析。
盡管鏈路加密在計算機網路環境中使用得相當普遍,但它並非沒有問題。鏈路加密通常用在點對點的同步或非同步線路上,它要求先對在鏈路兩端的加密設備進行同步,然後使用一種鏈模式對鏈路上傳輸的數據進行加密。這就給網路的性能和可管理性帶來了副作用。
在線路/信號經常不通的海外或衛星網路中,鏈路上的加密設備需要頻繁地進行同步,帶來的後果是數據丟失或重傳。另一方面,即使僅一小部分數據需要進行加密,也會使得所有傳輸數據被加密。
在一個網路節點,鏈路加密僅在通信鏈路上提供安全性,消息以明文形式存在,因此所有節點在物理上必須是安全的,否則就會泄漏明文內容。然而保證每一個節點的安全性需要較高的費用,為每一個節點提供加密硬體設備和一個安全的物理環境所需要的費用由以下幾部分組成:保護節點物理安全的雇員開銷,為確保安全策略和程序的正確執行而進行審計時的費用,以及為防止安全性被破壞時帶來損失而參加保險的費用。
在傳統的加密演算法中,用於解密消息的密鑰與用於加密的密鑰是相同的,該密鑰必須被秘密保存,並按一定規則進行變化。這樣,密鑰分配在鏈路加密系統中就成了一個問題,因為每一個節點必須存儲與其相連接的所有鏈路的加密密鑰,這就需要對密鑰進行物理傳送或者建立專用網路設施。而網路節點地理分布的廣闊性使得這一過程變得復雜,同時增加了密鑰連續分配時的費用。
節點加密
盡管節點加密能給網路數據提供較高的安全性,但它在操作方式上與鏈路加密是類似的:兩者均在通信鏈路上為傳輸的消息提供安全性;都在中間節點先對消息進行解密,然後進行加密。因為要對所有傳輸的數據進行加密,所以加密過程對用戶是透明的。
然而,與鏈路加密不同,節點加密不允許消息在網路節點以明文形式存在,它先把收到的消息進行解密,然後採用另一個不同的密鑰進行加密,這一過程是在節點上的一個安全模塊中進行。
節點加密要求報頭和路由信息以明文形式傳輸,以便中間節點能得到如何處理消息的信息。因此這種方法對於防止攻擊者分析通信業務是脆弱的。
端到端加密
端到端加密允許數據在從源點到終點的傳輸過程中始終以密文形式存在。採用端到端加密,消息在被傳輸時到達終點之前不進行解密,因為消息在整個傳輸過程中均受到保護,所以即使有節點被損壞也不會使消息泄露。
端到端加密系統的價格便宜些,並且與鏈路加密和節點加密相比更可靠,更容易設計、實現和維護。端到端加密還避免了其它加密系統所固有的同步問題,因為每個報文包均是獨立被加密的,所以一個報文包所發生的傳輸錯誤不會影響後續的報文包。此外,從用戶對安全需求的直覺上講,端到端加密更自然些。單個用戶可能會選用這種加密方法,以便不影響網路上的其他用戶,此方法只需要源和目的節點是保密的即可。
端到端加密系統通常不允許對消息的目的地址進行加密,這是因為每一個消息所經過的節點都要用此地址來確定如何傳輸消息。由於這種加密方法不能掩蓋被傳輸消息的源點與終點,因此它對於防止攻擊者分析通信業務是脆弱的。
G. sql數據加密有幾種方法
對sql中的數據進行加密,有5種方法,
1、利用CONVERT改變編碼方式:
利用該函數把文字或數據轉換成VARBINARY。但該方式不具備保護數據的能力,僅避免瀏覽數據的過程中能直接看到敏感數據的作用。
2、利用對稱密鑰:
搭配EncryptByKey進行數據加密。使用DecryptByKey函數進行解密。這種方式比較適合大數據量。因為對稱密鑰的過程耗用資源較少。
3、利用非對稱密鑰:
搭配EncryptByAsymKey進行數據加密。使用DecryptByAsymKey函數進行解密。用於更高安全級別的加解密數據。因為耗用資源叫多。
4、利用憑證的方式:
搭配EncryptByCert進行加密和DecryptByCert函數進行解密。比較類似非對稱密鑰。
5、利用密碼短語方式:
搭配EncryptBypassPhrase進行加密,使用DecryptByPassPhrase函數來解密。可以使用有意義的短語或其他數據行,當成加密、解密的關鍵字,比較適合一般的數據加解密。
(7)數據加密模式擴展閱讀:
sql資料庫的組成:
在正式學習SQL語言之前,首先讓我們對SQL語言有一個基本認識,介紹一下SQL語言的組成:
1、一個SQL資料庫是表(Table)的集合,它由一個或多個SQL模式定義。
2、一個SQL表由行集構成,一行是列的序列(集合),每列與行對應一個數據項。
3、一個表或者是一個基本表或者是一個視圖。基本表是實際存儲在資料庫的表,而視圖是由若干基本表或其他視圖構成的表的定義。
4、一個基本表可以跨一個或多個存儲文件,一個存儲文件也可存放一個或多個基本表。每個存儲文件與外部存儲上一個物理文件對應。
5、用戶可以用SQL語句對視圖和基本表進行查詢等操作。在用戶角度來看,視圖和基本表是一樣的,沒有區別,都是關系(表格)。
6、SQL用戶可以是應用程序,也可以是終端用戶。SQL語句可嵌入在宿主語言的程序中使用,宿主語言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada語言等。
SQL用戶也能作為獨立的用戶介面,供交互環境下的終端用戶使用。
參考資料來源:網路-SQL資料庫
H. 開發中常見的加密方式及應用
開發中常見的加密方式及應用
一、base64
簡述:Base64是網路上最常見的用於傳輸8Bit 位元組碼 的編碼方式之一,Base64就是一種基於64個可列印字元來表示二進制數據的方法。所有的數據都能被編碼為並只用65個字元就能表示的文本文件。( 65字元:A~Z a~z 0~9 + / = )編碼後的數據~=編碼前數據的4/3,會大1/3左右(圖片轉化為base64格式會比原圖大一些)。
應用:Base64編碼是從二進制到字元的過程,可用於在 HTTP 環境下傳遞較長的標識信息。例如,在Java Persistence系統Hibernate中,就採用了Base64來將一個較長的唯一 標識符 (一般為128-bit的UUID)編碼為一個字元串,用作HTTP 表單 和HTTP GET URL中的參數。在其他應用程序中,也常常需要把二進制 數據編碼 為適合放在URL(包括隱藏 表單域 )中的形式。此時,採用Base64編碼具有不可讀性,需要解碼後才能閱讀。
命令行進行Base64編碼和解碼
編碼:base64 123.png -o 123.txt
解碼:base64 123.txt -o test.png -D Base64編碼的原理
原理:
1)將所有字元轉化為ASCII碼;
2)將ASCII碼轉化為8位二進制;
3)將二進制3個歸成一組(不足3個在後邊補0)共24位,再拆分成4組,每組6位;
4)統一在6位二進制前補兩個0湊足8位;
5)將補0後的二進制轉為十進制;
6)從Base64編碼表獲取十進制對應的Base64編碼;
Base64編碼的說明:
a.轉換的時候,將三個byte的數據,先後放入一個24bit的緩沖區中,先來的byte占高位。
b.數據不足3byte的話,於緩沖區中剩下的bit用0補足。然後,每次取出6個bit,按照其值選擇查表選擇對應的字元作為編碼後的輸出。
c.不斷進行,直到全部輸入數據轉換完成。
d.如果最後剩下兩個輸入數據,在編碼結果後加1個「=」;
e.如果最後剩下一個輸入數據,編碼結果後加2個「=」;
f.如果沒有剩下任何數據,就什麼都不要加,這樣才可以保證資料還原的正確性。
二、HASH加密/單向散列函數
簡述:Hash演算法特別的地方在於它是一種單向演算法,用戶可以通過Hash演算法對目標信息生成一段特定長度(32個字元)的唯一的Hash值,卻不能通過這個Hash值重新獲得目標信息。對用相同數據,加密之後的密文相同。 常見的Hash演算法有MD5和SHA。由於加密結果固定,所以基本上原始的哈希加密已經不再安全,於是衍生出了加鹽的方式。加鹽:先對原始數據拼接固定的字元串再進行MD5加密。
特點:
1) 加密 後密文的長度是定長(32個字元的密文)的
2)如果明文不一樣,那麼散列後的結果一定不一樣
3)如果明文一樣,那麼加密後的密文一定一樣(對相同數據加密,加密後的密文一樣)
4)所有的加密演算法是公開的
5)不可以逆推反算(不能根據密文推算出明文),但是可以暴力 破解 ,碰撞監測
原理:MD5消息摘要演算法,屬Hash演算法一類。MD5演算法對輸入任意長度的消息進行運行,產生一個128位的消息摘要。
1)數據填充
對消息進行數據填充,使消息的長度對512取模得448,設消息長度為X,即滿足X mod 512=448。根據此公式得出需要填充的數據長度。
填充方法:在消息後面進行填充,填充第一位為1,其餘為0。
2)添加信息長度
在第一步結果之後再填充上原消息的長度,可用來進行的存儲長度為64位。如果消息長度大於264,則只使用其低64位的值,即(消息長度 對264取模)。
在此步驟進行完畢後,最終消息長度就是512的整數倍。
3)數據處理
准備需要用到的數據:
4個常數:A = 0x67452301, B = 0x0EFCDAB89, C = 0x98BADCFE, D = 0x10325476;
4個函數:F(X,Y,Z)=(X & Y) | ((~X) & Z);G(X,Y,Z)=(X & Z) | (Y & (~Z));H(X,Y,Z)=X ^ Y ^ Z;I(X,Y,Z)=Y ^ (X | (~Z));
把消息分以512位為一分組進行處理,每一個分組進行4輪變換,以上面所說4個常數為起始變數進行計算,重新輸出4個變數,以這4個變數再進行下一分組的運算,如果已經是最後一個分組,則這4個變數為最後的結果,即MD5值。
三、對稱加密
經典演算法:
1)DES數據加密標准
DES演算法的入口參數有三個:Key、Data、Mode。其中Key為8個位元組共64位,是DES演算法的工作密鑰;Data也為8個位元組64位,是要被加密或被解密的數據;Mode為DES的工作方式,有兩種:加密或解密。
DES演算法是這樣工作的:如Mode為加密,則用Key去把數據Data進行加密, 生成Data的密碼形式(64位)作為DES的輸出結果;如Mode為解密,則用Key去把密碼形式的數據Data解密,還原為Data的明碼形式(64位)作為DES的輸出結果。在通信網路的兩端,雙方約定一致的Key,在通信的源點用Key對核心數據進行DES加密,然後以密碼形式在公共通信網(如電話網)中傳輸到通信網路的終點,數據到達目的地後,用同樣的Key對密碼數據進行解密,便再現了明碼形式的核心數據。這樣,便保證了核心數據(如PIN、MAC等)在公共通信網中傳輸的安全性和可靠性。
2)3DES使用3個密鑰,對消息進行(密鑰1·加密)+(密鑰2·解密)+(密鑰3·加密)
3)AES高級加密標准
如圖,加密/解密使用相同的密碼,並且是可逆的
四、非對稱加密
特點:
1)使用公鑰加密,使用私鑰解密
2)公鑰是公開的,私鑰保密
3)加密處理安全,但是性能極差
經典演算法RSA:
1)RSA原理
(1)求N,准備兩個質數p和q,N = p x q
(2)求L,L是p-1和q-1的最小公倍數。L = lcm(p-1,q-1)
(3)求E,E和L的最大公約數為1(E和L互質)
(4)求D,E x D mode L = 1
五、數字簽名
原理以及應用場景:
1)數字簽名的應用場景
需要嚴格驗證發送方身份信息情況
2)數字簽名原理
(1)客戶端處理
對"消息"進行HASH得到"消息摘要"
發送方使用自己的私鑰對"消息摘要"加密(數字簽名)
把數字簽名附著在"報文"的末尾一起發送給接收方
(2)服務端處理
對"消息" HASH得到"報文摘要"
使用公鑰對"數字簽名"解密
對結果進行匹配
六、數字證書
簡單說明:
證書和駕照很相似,裡面記有姓名、組織、地址等個人信息,以及屬於此人的公鑰,並有認證機構施加數字簽名,只要看到公鑰證書,我們就可以知道認證機構認證該公鑰的確屬於此人。
數字證書的內容:
1)公鑰
2)認證機構的數字簽名
證書的生成步驟:
1)生成私鑰openssl genrsa -out private.pem 1024
2)創建證書請求openssl req -new -key private.pem -out rsacert.csr
3)生成證書並簽名,有效期10年openssl x509 -req -days 3650 -in rsacert.csr -signkey private.pem -out rsacert.crt
4)將PEM格式文件轉換成DER格式openssl x509 -outform der -in rsacert.crt -out rsacert.der
5)導出P12文件openssl pkcs12 -export -out p.p12 -inkey private.pem -in rsacert.crt
iOS開發中的注意點:
1)在iOS開發中,不能直接使用PEM格式的證書,因為其內部進行了Base64編碼,應該使用的是DER的證書,是二進制格式的;
2)OpenSSL默認生成的都是PEM格式的證書。
七、https
HTTPS和HTTP的區別:
超文本傳輸協議HTTP協議被用於在Web瀏覽器和網站伺服器之間傳遞信息。HTTP協議以明文方式發送內容,不提供任何方式的數據加密,如果攻擊者截取了Web瀏覽器和網站伺服器之間的傳輸報文,就可以直接讀懂其中的信息,因此HTTP協議不適合傳輸一些敏感信息,比如信用卡號、密碼等。
為了解決HTTP協議的這一缺陷,需要使用另一種協議:安全套接字層超文本傳輸協議HTTPS。為了數據傳輸的安全,HTTPS在HTTP的基礎上加入了SSL協議,SSL依靠證書來驗證伺服器的身份,並為瀏覽器和伺服器之間的通信加密。
HTTPS和HTTP的區別主要為以下四點:
1)https協議需要到ca申請證書,一般免費證書很少,需要交費。
2)http是 超文本傳輸協議 ,信息是明文傳輸,https則是具有 安全性 的 ssl 加密傳輸協議。
3)http和https使用的是完全不同的連接方式,用的埠也不一樣,前者是80,後者是443。
4)http的連接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的 網路協議 ,比http協議安全。
5)SSL:Secure Sockets Layer安全套接字層;用數據加密(Encryption)技術,可確保數據在網路上傳輸過程中不會被截取及竊聽。目前一般通用之規格為40 bit之安全標准,美國則已推出128 bit之更高安全標准,但限制出境。只要3.0版本以上之I.E.或Netscape 瀏覽器 即可支持SSL。目前版本為3.0。SSL協議位於TCP/IP協議與各種應用層協議之間,為數據通訊提供安全支持。SSL協議可分為兩層:SSL記錄協議(SSL Record Protocol):它建立在可靠的傳輸協議(如TCP)之上,為高層協議提供數據封裝、壓縮、加密等基本功能的支持。SSL握手協議(SSL Handshake Protocol):它建立在SSL記錄協議之上,用於在實際的數據傳輸開始前,通訊雙方進行身份認證、協商加密演算法、交換加密密鑰等。
I. 無線路由器中 WEP,wpa,wpa2這三種加密方式有什麼區別應該選擇哪一種
目前無線路由器里帶有的加密模式主要有:WEP,WPA-PSK(TKIP),WPA2-PSK(AES)和WPA-PSK(TKIP)+WPA2-PSK(AES)。 x0dx0a WEP(有線等效加密) x0dx0a WEP是WiredEquivalentPrivacy的簡稱,802.11b標准里定義的一個用於無線區域網(WLAN)的安全性協議。WEP被用來提供和有線lan同級的安全性。LAN天生比WLAN安全,因為LAN的物理結構對其有所保護,部分或全部網路埋在建築物裡面也可以防止未授權的訪問。 x0dx0a 經由無線電波的WLAN沒有同樣的物理結構,因此容易受到攻擊、干擾。WEP的目標就是通過對無線電波里的數據加密提供安全性,如同端-端發送一樣。 WEP特性里使用了rsa數據安全性公司開發的rc4prng演算法。如果你的無線基站支持MAC過濾,推薦你連同WEP一起使用這個特性(MAC過濾比加密安全得多)。 x0dx0a 盡管從名字上看似乎是一個針對有線網路的安全選項,其實並不是這樣。WEP標准在無線網路的早期已經創建,目標是成為無線區域網WLAN的必要的安全防護層,但是WEP的表現無疑令人非常失望。它的根源在於設計上存在缺陷。在使用WEP的系統中,在無線網路中傳輸的數據是使用一個隨機產生的密鑰來加密的。但是,WEP用來產生這些密鑰的方法很快就被發現具有可預測性,這樣對於潛在的入侵者來說,就可以很容易的截取和破解這些密鑰。即使是一個中等技術水平的無線黑客也可以在兩到三分鍾內迅速的破解WEP加密。 x0dx0a IEEE802.11的動態有線等效保密(WEP)模式是二十世紀九十年代後期設計的,當時功能強大的加密技術作為有效的武器受到美國嚴格的出口限制。由於害怕強大的加密演算法被破解,無線網路產品是被被禁止出口的。然而,僅僅兩年以後,動態有線等效保密模式就被發現存在嚴重的缺點。但是二十世紀九十年代的錯誤不應該被當著無線網路安全或者IEEE802.11標准本身,無線網路產業不能等待電氣電子工程師協會修訂標准,因此他們推出了動態密鑰完整性協議 TKIP(動態有線等效保密的補丁版本)。 x0dx0a 盡管WEP已經被證明是過時且低效的,但是今天在許多現代的無線訪問點和無線路由器中,它依然被支持的加密模式。不僅如此,它依然是被個人或公司所使用的最多的加密方法之一。如果你正在使用WEP加密,如果你對你的網路的安全性非常重視的話,那麼以後盡可能的不要再使用WEP,因為那真的不是很安全。 x0dx0a WPA-PSK(TKIP) x0dx0a 無線網路最初採用的安全機制是WEP(有線等效加密),但是後來發現WEP是很不安全的,802.11組織開始著手制定新的安全標准,也就是後來的 802.11i協議。但是標準的制定到最後的發布需要較長的時間,而且考慮到消費者不會因為為了網路的安全性而放棄原來的無線設備,因此Wi-Fi聯盟在標准推出之前,在802.11i草案的基礎上,制定了一種稱為WPA(Wi-FiProctedAccess)的安全機制,它使用TKIP(臨時密鑰完整性協議),它使用的加密演算法還是WEP中使用的加密演算法RC4,所以不需要修改原來無線設備的硬體,WPA針對WEP中存在的問題:IV過短、密鑰管理過於簡單、對消息完整性沒有有效的保護,通過軟體升級的方法提高網路的安全性。 x0dx0a WPA的出現給用戶提供了一個完整的認證機制,AP根據用戶的認證結果決定是否允許其接入無線網路中;認證成功後可以根據多種方式(傳輸數據包的多少、用戶接入網路的時間等)動態地改變每個接入用戶的加密密鑰。另外,對用戶在無線中傳輸的數據包進行MIC編碼,確保用戶數據不會被其他用戶更改。作為 802.11i標準的子集,WPA的核心就是IEEE802.1x和TKIP(TemporalKeyIntegrity Protocol)。 x0dx0a WPA考慮到不同的用戶和不同的應用安全需要,例如:企業用戶需要很高的安全保護(企業級),否則可能會泄露非常重要的商業機密;而家庭用戶往往只是使用網路來瀏覽Internet、收發E-mail、列印和共享文件,這些用戶對安全的要求相對較低。為了滿足不同安全要求用戶的需要,WPA中規定了兩種應用模式:企業模式,家庭模式(包括小型辦公室)。根據這兩種不同的應用模式,WPA的認證也分別有兩種不同的方式。對於大型企業的應用,常採用「802.1x+EAP」的方式,用戶提供認證所需的憑證。但對於一些中小型的企業網路或者家庭用戶,WPA也提供一種簡化的模式,它不需要專門的認證伺服器。這種模式叫做「WPA預共享密鑰(WPA- PSK)」,它僅要求在每個WLAN節點(AP、無線路由器、網卡等)預先輸入一個密鑰即可實現。 x0dx0a 這個密鑰僅僅用於認證過程,而不用於傳輸數據的加密。數據加密的密鑰是在認證成功後動態生成,系統將保證「一戶一密」,不存在像WEP那樣全網共享一個加密密鑰的情形,因此大大地提高了系統的安全性。 x0dx0a WPA2-PSK(AES) x0dx0a 在802.11i頒布之後,Wi-Fi聯盟推出了WPA2,它支持AES(高級加密演算法),因此它需要新的硬體支持,它使用CCMP(計數器模式密碼塊鏈消息完整碼協議)。在WPA/WPA2中,PTK的生成依賴PMK,而PMK獲的有兩種方式,一個是PSK的形式就是預共享密鑰,在這種方式中 PMK=PSK,而另一種方式中,需要認證伺服器和站點進行協商來產生PMK。 x0dx0a IEEE802.11所制定的是技術性標准,Wi-Fi聯盟所制定的是商業化標准,而Wi-Fi所制定的商業化標准基本上也都符合IEEE所制定的技術性標准。WPA(Wi-FiProtectedAccess)事實上就是由Wi-Fi聯盟所制定的安全性標准,這個商業化標准存在的目的就是為了要支持 IEEE802.11i這個以技術為導向的安全性標准。而WPA2其實就是WPA的第二個版本。WPA之所以會出現兩個版本的原因就在於Wi-Fi聯盟的商業化運作。 x0dx0a 我們知道802.11i這個任務小組成立的目的就是為了打造一個更安全的無線區域網,所以在加密項目里規范了兩個新的安全加密協定_TKIP與 CCMP(有些無線網路設備中會以AES、AES-CCMP的字眼來取代CCMP)。其中TKIP雖然針對WEP的弱點作了重大的改良,但保留了RC4演演算法和基本架構,言下之意,TKIP亦存在著RC4本身所隱含的弱點。因而802.11i再打造一個全新、安全性更強、更適合應用在無線區域網環境的加密協定-CCMP。所以在CCMP就緒之前,TKIP就已經完成了。 x0dx0a 但是要等到CCMP完成,再發布完整的IEEE802.11i標准,可能尚需一段時日,而Wi-Fi聯盟為了要使得新的安全性標准能夠盡快被布署,以消弭使用者對無線區域網安全性的疑慮,進而讓無線區域網的市場可以迅速擴展開來,因而使用已經完成TKIP的IEEE802.11i第三版草案 (IEEE802.11i draft3)為基準,制定了WPA。而於IEEE完成並公布IEEE802.11i無線區域網安全標准後,Wi-Fi聯盟也隨即公布了WPA第2版 (WPA2)。 x0dx0a WPA = IEEE 802.11i draft 3 = IEEE 802.1X/EAP +WEP(選擇性項目)/TKIP x0dx0a WPA2 = IEEE 802.11i = IEEE 802.1X/EAP + WEP(選擇性項目)/TKIP/CCMP x0dx0a 還有最後一種加密模式就是WPA-PSK(TKIP)+WPA2-PSK(AES),這是目前無線路由里最高的加密模式,目前這種加密模式因為兼容性的問題,還沒有被很多用戶所使用。目前最廣為使用的就是WPA-PSK(TKIP)和WPA2-PSK(AES)兩種加密模式。相信在經過加密之後的無線網路,一定能夠讓我們的用戶安心放心的上網沖浪。