一篇文章帶你看明白數(shù)字簽名到底是個啥?

隨著信息化時代的發(fā)展,相信很多年輕人都沒有寫過信,但是經(jīng)歷過的人都知道,在信件落款處往往都要留下自己的姓名,以確定和表明我們的身份。但你可聽說過“數(shù)字簽名”?

數(shù)字簽名

“數(shù)字簽名”簡單的來說,就是在網(wǎng)絡(luò)中傳輸數(shù)據(jù)時候,給數(shù)據(jù)添加一個數(shù)字簽名,表示是誰發(fā)的數(shù)據(jù),而且還能證明數(shù)據(jù)沒有被篡改。

為了更好的了解“數(shù)字簽名”,下面我們來舉個例子:

張三有兩個好友:A和B,張三和A、B寫郵件的時候為了安全都需要加密。

于是張三想到了數(shù)字簽名:

第一步:加密采用非對稱加密,張三有三把鑰匙,兩把公鑰,送給朋友,一把私鑰留給自己。

數(shù)字簽名
圖片來源于網(wǎng)絡(luò)

第二步:A或者B寫郵件給張三。A先用公鑰對郵件加密,然后張三收到郵件之后使用私鑰解密。

數(shù)字簽名
圖片來源于網(wǎng)絡(luò)

第三步:張三寫郵件給A或者B。

(1)張三寫完郵件,先用hash函數(shù)生成郵件的摘要,附著在文章上面,這就完成了數(shù)字簽名,然后張三再使用私鑰加密。就可以把郵件發(fā)出去了。

(2)A收到郵件之后,先把數(shù)字簽名取下來,然后使用自己的公鑰解密即可。這時候取下來的數(shù)字簽名中的摘要若和張三的一致,那就認(rèn)為是張三發(fā)來的;再對信件本身使用Hash函數(shù),將得到的結(jié)果,與上一步得到的摘要進(jìn)行對比。如果兩者一致,就證明這封信未被修改過。

數(shù)字簽名
圖片來源于網(wǎng)絡(luò)

看完上面的簡單介紹,我們可以知道“數(shù)字簽名”其主要作用就是能夠保證數(shù)據(jù)的有效性(驗證是誰發(fā)的)和完整性(證明信息沒有被篡改)。它類似于寫在紙上的物理簽名,同樣具有法律效應(yīng)。