密碼學 什麼是數字簽名

2021-10-10 13:00:54 字數 615 閱讀 2678

1、場景

傳送方 a 需要給 b 傳送一條訊息,為了保證資料的完整性,a 在訊息的後面新增該訊息的 hash 值。

問題:由於訊息是明文的,中間人可以截獲該訊息並生成新訊息的 hash 發給 b。

為了解決上述問題,有如下方案:

(1)這條訊息用 a 和 b 共享的金鑰進行對稱加密。

(2)hash 值用 a 和 b 共享的金鑰進行對稱加密。

(3)計算 hash 值時加入 a 和 b 共享的秘密值 s 。

2、數字簽名

將上述方法(2)中加密 hash 值用的共享金鑰換成 a 的私鑰,即:a 使用自己的私鑰對 hash 值進行非對稱加密,這樣的 hash 值就是數字簽名了。因為該 hash 值被 a 私鑰加密了,只有 a 有私鑰,就像 a 的簽名一樣。上述過程就是數字簽名技術的本質所在。

如果在數字簽名的基礎上,再加入上述方案中的(1),則既實現了對訊息本身的保密性又實現了數字簽名。

3、總結

保密性數字簽名的步驟如下:

(1)對訊息 hash,並將該值放入訊息後面。

(2)用傳送者的私鑰對 hash 值進行非對稱加密,生成數字簽名。

(3)用共享金鑰對訊息和數字簽名進行對稱加密。

(完)

Lauren與密碼學9,數字簽名

lauren 我思考了一下,採用訊息認證碼的手套訂單還是有問題。客戶生成訂單,計算hash值,並且給hash值加密。這樣防止了篡改和別人偽造,但是因為密碼是在工廠與客戶之間共享的。客戶和工廠都有生成一模一樣訂單的能力。客戶否認說我沒有發過這個訂單,是工廠自己偽造的訂單。技術上來講,訊息認證碼沒有辦法...

密碼學系列 數字簽名

什麼是數字簽名呢?數字簽名其實是訊息摘要和非對稱加密的一起應用。數字簽名是怎麼來的呢?在非對稱加解密中,公鑰方對私鑰方傳送訊息,只需要公鑰方用公鑰加密即可,因為私鑰只有一人持有。那麼私鑰方給公鑰方傳送資料是否可以用私鑰傳送即可呢?當然可以的啊。但是又乙個問題就是私鑰加密後,所有的公鑰都可以解開,那麼...

什麼是數字簽名

翻譯 吳裕華 原文 1 bob 有兩把秘鑰,一把公鑰,一把私鑰 2 bob 可以把公鑰分析給他的同事pat doug susan,但是自己儲存私鑰。而加密後的資料只能匹配的秘鑰才能開啟。任何一把 bob 的秘鑰都可以用於加密資料,同時則必須使用另一把秘鈅來進行解密。3 susan 可以用 bob 分...