# 數位簽名 ## 簡介 數位簽名使用非對稱加密和哈希(hash)創造一個唯一的簽名,其可以驗證資料有沒有被竄改,也可以確認消息確實來自發送者。在數位簽名中私鑰用於加密,公鑰用於解密。 ## 發送方(創建數位簽名) 1. 發送者使用哈希函數對要發送的訊息生成一個摘要,只要訊息有任何微小的變動,哈希函數得出的摘要就會有顯著的變化 2. 發送者使用自己的私鑰對訊息和摘要加密,加密後的摘要就是數位簽名,加密後的訊息和摘要都要傳給接收者 ## 接收方(驗證數位簽名) 1. 接收者使用發送者的公鑰對訊息與簽名解密 2. 接收者對解密後的消息使用同樣的哈希函數生成一個新的摘要 3. 如果收到並解密後的摘要和自己生成的摘要相同,就能證明在傳輸過程中資料沒有被竄改,且是由擁有私鑰的發送者所簽名的 ## 相關算法 [學習筆記:RSA非對稱加密](/x8m97ltRTaC1BGXD-P7okQ)