什麼是非對稱加密非對稱加密演算法需要兩個金鑰:publickey和privatekey。如果用公鑰對資料進行加密,只有用對應的私鑰才能解密。因為加密和解密使用的是兩個不同的金鑰,所以這種演算法叫作非對稱加密演算法。•公鑰:可以公開的金鑰•私鑰:需要妥善保管的金鑰,知道人越少越好•資料的機密性只能單方向保證•加密效率低什麼是數字簽名將數字簽名理解為附加到訊息或文件中的程式碼。在生成數字簽名之後,其可以作為證明訊息從傳送方到接收方的傳輸過程中沒有被篡改的證據。簽名的生成•有原始資料對其進行雜湊運算-> 雜湊值•使用非對稱加密的私鑰對雜湊值加密 -> 簽名•將原始資料和簽名一併傳送給對方簽名的驗證•接受資料1 原始資料2 數字簽名•數字簽名,需要使用公鑰解密,得到雜湊值•對原始資料進行hash運算,得到新的雜湊值•雜湊值進行比對go實現Rsa數字簽名使用rsa生成金鑰對•生成金鑰對•序列化•儲存到磁碟檔案
使用私鑰對數字簽名
使用公鑰進行簽名認證
結果展示
GitHub https://github.com/potaxie/go-crypto
Wechat potaxie