關於加解密、簽名驗籤、數字簽名、雜湊、數字證書的大概理解
一、加解密演算法(最普通的加解密)
對稱金鑰:使用者A將明文資訊M使用金鑰K進行加密,使用者B是用金鑰K將加密後的資訊進行解密。(加密與解密使用同一金鑰K)
非對稱金鑰:使用者A將明文資訊使用金鑰SK進行加密,使用者B使用金鑰PK將加密後的資訊進行解密。(加密與解密使用不同的金鑰SK與PK,且SK與PK互為配對)
二、簽名、驗籤演算法(如何驗證簽名的真偽)
使用者A使用私鑰SK進行簽名得到數字簽名,使用者B得到數字簽名與明文資訊後,再使用公鑰PK對數字簽名進行驗籤,得到的結果與明文資訊一致的話,則證明簽名正確,反之則簽名不正確。
三、數字簽名演算法(如何驗證接收到的文件是完整的未經篡改的)
加密過程:使用者A將文件壓縮後,取得資訊摘要,將資訊摘要使用使用者A的私鑰進行加密,連同文件與加密後的資訊摘要傳送給使用者B。
解密過程:使用者B收到文件與加密後的資訊摘要之後,使用使用者A的公鑰將加密的資訊摘要進行解密,得到未加密的資訊摘要,再將文件進行壓縮,取得文件的資訊摘要,如果兩個資訊摘要是一致的,則該文件的完整性是可以保證的。
四、雜湊演算法
將資訊M經過雜湊運算後得到一串固定長度的雜湊值s(s具有單向性,即給定M可輕易推算出s,但給定s卻很難反推出M)
給定M,如果想要找到另一個明文資訊m,並且這個明文資訊m經過雜湊運算後很難得到s
所以雜湊演算法就相當於賦予資訊M一個“指紋”也稱為“摘要”
五、數字證書
數字證書是通過一個大家都認可信任的權威機構——CA進行頒發的
當用戶A與使用者B(使用者A為私鑰所有者)通訊時:
雖然私鑰為使用者A所獨有,但是公鑰卻是相當於公有的,因此單單一個公鑰不足以驗證使用者B的身份,因此使用者B需要將使用者A的公鑰與自己的“電子身份證”傳送給CA,由CA進行邦定並且“蓋章”後形成一張數字證書頒發給使用者B,使用者B再使用數字證書與使用者A進行通訊,使用者A在檢測到使用者B的數字證書上存在CA的標識後,認定了使用者B的合法性,則通訊成功!
我也是剛剛學到的,具體的理解可能還是需要結合其他文章進行理解,有什麼理解錯的或者需要補充的也希望大佬們幫忙補充一下,謝謝