首先要了解什麼叫對稱加密和非對稱加密,訊息摘要這些知識。
1. 非對稱加密
在通訊雙方,如果使用非對稱加密,一般遵從這樣的原則:公鑰加密,私鑰解密。同時,一般乙個金鑰加密,另乙個金鑰就可以解密。
因為公鑰是公開的,如果用來解密,那麼就很容易被不必要的人解密訊息。因此,私鑰也可以認為是個人身份的證明。
如果通訊雙方需要互發訊息,那麼應該建立兩套非對稱加密的機制(即兩對公私鑰金鑰對),發訊息的一方使用對方的公鑰進行加密,接收訊息的一方使用自己的私鑰解密。
2.訊息摘要
訊息摘要可以將訊息雜湊轉換成乙個固定長度的值唯一的字串。值唯一的意思是不同的訊息轉換的摘要是不同的,並且能夠確保唯一。該過程不可逆,即不能通過摘要反推明文(似乎sha1已經可以被破解了,sha2還沒有。一般認為不可破解,或者破解需要耗費太多時間,價效比低)。
利用這一特性,可以驗證訊息的完整性。
訊息摘要通常用在數字簽名中,下面介紹用法。
了解基礎知識之後,就可以看一下數字簽名和數字證書了。
3.數字簽名
假設現在有通訊雙方a和b,兩者之間使用兩套非對稱加密機制。
現在a向b發訊息。
那麼,如果在傳送過程中,有人修改了裡面密文訊息,b拿到的密文,解密之後得到明文,並非a所傳送的,資訊不正確。
要解決兩個問題:1. a的身份認證 2. a傳送的訊息完整性 那麼就要用到上面所講的基礎知識。
數字簽名的過程如下圖:
簡單解釋:
a:將明文進行摘要運算後得到摘要(訊息完整性),再將摘要用a的私鑰加密(身份認證),得到數字簽名,將密文和數字簽名一塊發給b。
b:收到a的訊息後,先將密文用自己的私鑰解密,得到明文。將數字簽名用a的公鑰進行解密後,得到正確的摘要(解密成功說明a的身份被認證了)。
對明文進行摘要運算,得到實際收到的摘要,將兩份摘要進行對比,如果一致,說明訊息沒有被篡改(訊息完整性)。
疑問:摘要使用a的私鑰加密,如果被擁有a的公鑰的第三者截獲,不就可以獲取到摘要了麼?會不會對安全造成威脅。
不會。因為摘要是不可逆推出原文的。
4.數字證書
理解了數字簽名之後,數字證書就好理解了。
由於網路上通訊的雙方可能都不認識對方,那麼就需要第三者來介紹,這就是數字證書。
數字證書由certificate authority( ca 認證中心)頒發。
**如下:
首先a b雙方要互相信任對方證書。//todo
然後就可以進行通訊了,與上面的數字簽名相似。不同的是,使用了對稱加密。這是因為,非對稱加密在解密過程中,消耗的時間遠遠超過對稱加密。如果密文很長,那麼效率就比較低下了。但金鑰一般不會特別長,對對稱加密的金鑰的加解密可以提高效率。
數字簽名原理簡介(附數字證書)
首先要了解什麼叫對稱加密和非對稱加密,訊息摘要這些知識。1.非對稱加密 在通訊雙方,如果使用非對稱加密,一般遵從這樣的原則 公鑰加密,私鑰解密。同時,一般乙個金鑰加密,另乙個金鑰就可以解密。因為公鑰是公開的,如果用來解密,那麼就很容易被不必要的人解密訊息。因此,私鑰也可以認為是個人身份的證明。如果通...
數字簽名與數字證書
數字簽名 將 報文按雙方約定的hash 演算法計算得到乙個固定位數的 報文摘要。在 數學上保證 只要改動報文中任何一位,重新計算出的 報文摘要值就會與原先的值不相符。這樣就保證了報文的不可更改性。將該報文摘要值用傳送者的私人 金鑰加密,然後連同原報文一起傳送給接收者,而產生的報文即稱 數字簽名 數字...
數字簽名和數字證書
到底什麼是 數字簽名 digital signature 和 數字證書 digital certificate 對這些問題的理解,一直模模糊糊,很多細節搞不清楚。今天,讀完一篇 通俗易懂的文章後,思路豁然開朗。為了加深記憶,這篇文章的翻譯版記錄如下。1.鮑勃有兩把鑰匙,一把是公鑰,另一把是私鑰。2....