當前位置:
首頁 > 最新 > 網路信息安全領域中常見的幾個概念

網路信息安全領域中常見的幾個概念

文| Roger Ye

微信號:passxyz_kpclib

在信息安全領域有幾個概念大家可能經常會聽到、用到,但是否理解這些概念,是否了解它們之間的關係呢?

談到信息安全,加密和解密是人們首先想到的話題。一般人對加密都會有一定認識。加密就是通過密鑰把明文轉換成不可識別的密文。把密文發送給接收方後,接收者用同樣的密鑰把密文再轉換成可讀的明文。這種加密和解密方法就是密碼學裡的對稱加密。

對稱加密(Symmetric cryptography)

對稱加密的特點是加密和解密使用的是同一組密鑰。對稱加密的安全性由加密演算法和密鑰長度決定。常用的加密演算法有AES、DES、3DES和IDEA等等。目前比較常用的是AES(Advanced Encryption Standard)演算法,它是由美國國家標準與技術研究院(NIST)於2001年11月26日發布的。密碼管理軟體KeePass和PassXYZ都是用的這個演算法。

對稱加密的優點是安全快速,在一定情況下還可以使用硬體演算法進行加速。因為這些特點,對稱加密被廣泛地使用在大量數據的加密應用中。但對稱加密所面臨的最大問題是密鑰的傳輸。如果無法安全傳輸密鑰,再強大的加密演算法也無用武之地。

非對稱加密(Asymmetric cryptography)

為了解決對稱加密中密鑰傳輸的問題,科學家們發明了非對稱加密演算法。非對稱加密的思想最早由瑞夫·墨克(Ralph C. Merkle)在1974年提出。之後在1976年,惠特菲爾德·迪菲(Whitfield Diffie)與馬丁·赫爾曼(Martin Hellman)兩位學者建立了非對稱加密演算法的基本理論。常見的非對稱加密演算法有RSA、ElGamal和ECC等。

非對稱加密的過程與對稱加密類似,但包括兩組不同的密鑰而不是一組。非對稱加密主要有兩個用途:文件加密和數字簽名。

1. 文件加密

如上圖所示,Alice要與Bob等人通信。Alice使用非對稱加密工具產生一對密鑰。這對密鑰包括公鑰(Public Key)和私鑰(Private Key)。私鑰是秘密的,不可以泄露給其他人,公鑰是公開的,Alice可以通過任意途徑發送給通信的對方。當Bob等人拿到Alice的公鑰後就可以用這個公鑰來加密文件發送回給Alice。這些經公鑰加密的密文只有用Alice的私鑰才能解開。這就是非對稱加密文件的過程。

2. 數字簽名(Digital Signatures)

如果將上述非對稱加密的過程反過來,Alice使用自己的私鑰加密文件,然後發送給Bob等人,由於私鑰只有Alice本人持有,Bob等人可以確認收到的文件是由Alice本人發送的且沒有被他人更改過,這就是數字簽名。數字簽名的目的不是加密,而是確保文件的完整性和確認文件的發送者。

非對稱加密解決了信息安全領域中非常關鍵的兩個問題就是:1.密鑰傳輸,和2.發送者身份的確認問題。

雖然非對稱加密作用非常大,但也存在缺陷和漏洞。非對稱加密的主要缺陷是加密效率低,解決這個問題的方法是使用混合加密和哈希演算法。在使用非對稱加密用作數字簽名時,對簽名者的身份認證也是存在漏洞的,目前的主要解決辦法是使用數字證書。

混合加密

非對稱加密最大的問題就是計算複雜造成效率欠佳。使用非對稱加密來加密大量數據是不可行的。通常的做法是在加密過程中產生一個臨時的對稱密鑰。這個密鑰是用來加密通信中的數據的,而這個密鑰的傳輸則可以使用非對稱加密來實現。這樣綜合了兩種加密方式的優點後,就是一種較為完美的解決方案了。

前面我們提到過非對稱加密有兩個主要用途:加密數字簽名。我們可以用混合加密的方法來提高加密時的效率。對於數字簽名,當我們對一個較大的文件進行簽名時,也會有加密演算法效率的問題,這時一般會用到哈希演算法來解決這個問題。

哈希演算法(Hash)

講到對大文件的簽名,就要講一下哈希演算法。大家可能在瀏覽網頁時看到過哈希這個詞。哈希演算法也譯作散列函數。它的作用就是把任意長度的輸入通過散列演算法變換成固定長度的輸出,該輸出就是散列值。這個散列值在英文中經常會用指紋(fingerprint)一詞來表示,意思是這個值就像人的指紋一樣,可以用文件的指紋來確認這個文件。通過哈希計算出來的散列值與原數據是一一對應的。對大文件的簽名通常是對這個大文件的哈希值進行簽名,而不是對文件本身進行簽名。這樣的話數字簽名的效率就不會受到非對稱加密的效率影響了。當我們下載文件時,特別是大文件,通常會提供文件的MD5或SHA256哈希值,然後用文件的哈希值來校驗下載文件的完整性。

數字證書和身份認證

再來看看非對稱加密在使用身份認證中存在的漏洞。前面講過,Alice可以通過使用私鑰加密文件來用作數字簽名。如果另外一個人冒充Alice用自己產生的公鑰和私鑰來和Bob通信,Bob是無法分辨收到的公鑰和文件是否真的是Alice發給他的,除非有辦法能幫Bob證明收到的公鑰是Alice的。這個就是公鑰的身份認證和數字證書要解決的問題。

公鑰的身份認證通常是由第三方認證機構來完成的。如圖所示,Alice可將自己的身份資料和公鑰一起提供給認證機構,認證機構核實後會用自己的私鑰來加密Alice的身份資料和她的公鑰。前面講過,由私鑰加密的文件其實就是數字簽名。這個由認證機構簽名的文件就是Alice的數字證書。Bob如果用Alice的數字證書來進行通信,Bob可以相信數字證書里的公鑰是Alice的。這裡還有一個問題就是Bob在使用Alice的數字證書時需要用到認證機構的公鑰來解開數字證書。在哪裡能獲取認證機構的公鑰呢?由於非對稱加密的廣泛使用,目前大多數認證機構的公鑰都已經隨操作系統一起發行了。也就是說,一般系統就帶有認證機構的公鑰。

在國內有些服務還沒有完全使用操作系統所提供的信任鏈,這時就需要一個額外的步驟,就是下載所用服務的根證書。比如下圖中的12306就是一個明顯的例子。想要正確的使用12306網站,需要先安裝根證書。這個根證書就是用來認證在交易中使用到的公鑰。

其他生活中使用對稱或非對稱加密的場景

除了12306的例子,我們在日常生活中還有哪些時候用到了這些加密、解密的方法呢?

銀行U

相信很多人都在使用各個銀行發行的U盾吧。U盾就是使用非對稱加密來保證銀行和用戶之間的通信是可信的和保密的。一般U盾存有銀行分配給客戶的私鑰和銀行本身的證書。客戶使用私鑰加密數據起到身份認證的作用。使用銀行證書里的公鑰加密數據起到數據加密的作用。所有認證機構頒發的數字證書都是有期限的,這也是為什麼您的U盾需要定期更換新證書的原因。

支付寶、微信以及網路交易

中國的網路支付和網購都非常發達。人們常用的網路支付手段,如支付寶和微信等,都是建立在上面所提到的密碼學概念之上的。

虛擬貨幣和比特幣

像比特幣這類的虛擬貨幣正是在非對稱加密和數字身份認證技術的逐漸成熟基礎上發展起來的。

總結

非對稱加密在信息安全領域有著非常重要的作用。它解決了兩個關鍵的問題,密鑰傳輸和數字簽名。為了解決密鑰傳輸和提高整體的加密效率,通常會使用混合加密方法。為了提高數字簽名的效率,通常會計算文件的哈希值,然後對哈希值進行數字簽名。為了在網路交易中認證的雙方的身份,通常會使用數字證書而不是直接使用對方的公鑰。

如果您對上述網路信息安全相關的概念有所了解,這對您個人信息的安全管理將會有較大的幫助。

PassXYZ是一款可以運行在安卓和蘋果手機以及Windows 10上的KeePass兼容應用。PassXYZ最大的特點是通過提供大量的個人信息記錄模板來分享和傳遞良好的使用習慣。PassXYZ個人信息管理軟體和PassXYZ公眾號的目標是通過兩者的結合來推動和提高公眾的個人信息管理水平。

您可以通過蘋果應用商店微軟應用商店Google Play華為應用商店搜索關鍵字PassXYZ來下載該應用。如果您想獲得更多模板或對個人信息安全及管理有興趣,可以搜索關鍵字PassXYZ關注公眾號。PassXYZ公眾號專註於個人信息安全及管理的相關知識。

Windows 10的用戶可以通過以下方式免費安裝PassXYZ

2.發送關鍵字」UWP」即可獲得註冊碼。

使用註冊碼可免費從微軟商店安裝PassXYZ(首200個用戶可以使用免費註冊碼)。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 PassXYZ 的精彩文章:

TAG:PassXYZ |