數字簽名(又稱公鑰數字簽名、電子簽章)是一種類似寫在紙上的普通的物理簽名, 但是使用了公鑰加密領域的技術實現, 用于鑒別數字信息的方法。 一套數字簽名通常定義兩種互補的運算, 一個用于簽名, 另一個用于驗證。
數字簽名, 就是只有信息的發送者才能產生的別人無法偽造的一段數字串, 這段數字串同時也是對信息的發送者發送信息真實性的一個有效證明。
數字簽名是非對稱密鑰加密技術與數字摘要技術的應用。
發送報文時, 發送方用一個哈希函數從報文文本中生成報文摘要,然后用自己的私人密鑰對這個摘要進行加密,
數字簽名有兩種功效:一是能確定消息確實是由發送方簽名并發出來的, 因為別人假冒不了發送方的簽名。 二是數字簽名能確定消息的完整性。 因為數字簽名的特點是它代表了文件的特征, 文件如果發生改變, 數字摘要的值也將發生變化。 不同的文件將得到不同的數字摘要。
結合比特幣交易的場景是這樣的:
張三發起一筆比特幣轉賬, 需要先將該交易進行數字摘要, 縮短成一段字符串, 然后用自己的私鑰對摘要進行加密, 形成數字簽名。
完成后, 張三需要將原文(交易信息)和數字簽名一起廣播給記錄“賬本的人”也就是礦工。
礦工用張三的公鑰進行驗證, 如果驗證成功, 說明該筆交易確實是張三發出的, 且信息未被更改, 是完整的。
相關詞匯:
非對稱加密
公鑰
私鑰
數字摘要
哈希
本文作者為U贊發燒友郗朝旭