數據在傳輸過程中,如果保證數據的完整性,實現數字簽名,安全傳輸的過程如下
加密過程
以上這個加密過程解釋如下
加密過程
先用hash 獲取到一個摘要值
用A的私鑰來加密這個摘要值
然後A生成一個對稱的密鑰,效率高 ,用這個對稱密鑰來加密 (數據+A私鑰加密的摘要)
用B的公鑰來加密對稱密鑰的key
將這段數據發送出去
解密過程:
B收到數據後,用自己的私鑰來解密,獲取到A的對稱公鑰的key
得到A的對稱key後來解密{數據+A私鑰加密的摘要}
得到數據後,B用A的公鑰來解密 經過 A私鑰加密的摘要,確保這段數據是有A發過來的,數字簽名的效果
得到hash的摘要值後,B將得到的數據data也進行同樣的hash算法得到hash 摘要B,
對比摘要A和摘要B,這兩段hash值,如果一樣,就確定數據沒有被更改過,保證了數據的完整性