數字簽名是什麼

2021-07-17 00:04:25 字數 1270 閱讀 6513

隨著現在網銀、電子商務的普及,「數字簽名」屢屢被提到,我也曾一度迷惑,直到看到mozilla mdn上的一篇文章digital signatures

,下面我將翻譯一下這篇文章。

加密和解密解決了三大網際網路安全隱患(竊聽、篡改、偽裝)之竊聽的問題,但是卻沒法避免資訊被篡改。

本篇文章將向你介紹公共秘鑰加密如何解決這個問題。

資訊篡改及相關的認證技術依賴於乙個數學函式單向雜湊函式one-way hash,也稱作資訊摘要)。單項雜湊函式可以根據原始資料生成乙個定長的資料摘要,並且具有如下特性:

同樣地,在公共金鑰加密中為了進行數字簽名,要產生一對秘鑰(key),乙個稱為私有簽名秘鑰private signing key),乙個稱為公開驗證秘鑰public verification key)。後者是公開的,前者是保密的,只有所有者知道。二者在數學上有一定的聯絡,想從公開驗證秘鑰推出私有簽名秘鑰幾乎是不可能的或者要付出高昂的代價(注:比如時間、金錢)。摘要及其他相關資訊,連同雜湊演算法,一併被稱為數字簽名。

下圖簡單展示了數字簽名如何驗證資料的合法性。

上圖顯示傳送者將兩份資料傳送給接受者:乙份原始資料,乙份加密過的摘要資料,即用私鑰和相關的單項雜湊演算法加密過的資料摘要(注:這裡有兩個過程,第一步求資料摘要:原始資料->摘要,第二步加密:摘要->加密過的摘要)。為了驗證資料的合法性,接受者首先使用簽名者的公鑰對加密摘要進行解密得到摘要,然後對原始資料應用同樣的單向雜湊演算法得到乙份新的摘要(單項雜湊演算法會和資料一併傳送給接受者,圖中未標出),最後,接受者對比這兩份摘要。如果二者一致,那麼說明資料沒有篡改,否則資料可能被篡改或者傳送過來的公鑰和簽名者的私鑰不匹配。

如果兩份摘要一致,接受者就能確定解密簽名的公鑰和生成簽名的私鑰是匹配的,然後進一步確認簽名者的身份,儘管要確認簽名者的身份還需要其他一些步驟來確定這個公鑰確實屬於某個人或實體,詳見introduction to public-key cryptography

.數字簽名的意義堪比手寫簽名。如果秘鑰沒有失去所有者的控制,一旦簽名,過後很難進行否認。數字簽名的這個特性提供了高度的不可否認性,簽名者簽名後就無法抵賴。以致在一些情形中,數字簽名具有手寫簽名的同等法律效力。

數字簽名是什麼?

數字簽名是什麼?翻譯 阮一峰 原文 1.鮑勃有兩把鑰匙,一把是公鑰,另一把是私鑰。2.鮑勃把公鑰送給他的朋友們 帕蒂 道格 蘇珊 每人一把。3.蘇珊要給鮑勃寫一封保密的信。她寫完後用鮑勃的公鑰加密,就可以達到保密的效果。4.鮑勃收信後,用私鑰解密,就看到了信件內容。這裡要強調的是,只要鮑勃的私鑰不洩...

數字簽名是什麼?

1.鮑勃有兩把鑰匙,一把是公鑰,另一把是私鑰。2.鮑勃把公鑰送給他的朋友們 帕蒂 道格 蘇珊 每人一把。3.蘇珊要給鮑勃寫一封保密的信。她寫完後用鮑勃的公鑰加密,就可以達到保密的效果。4.鮑勃收信後,用私鑰解密,就看到了信件內容。這裡要強調的是,只要鮑勃的私鑰不洩露,這封信就是安全的,即使落在別人手...

數字簽名是什麼?

what is a digital signature?翻譯 阮一峰 鮑勃有兩把鑰匙,一把是公鑰,另一把是私鑰。鮑勃把公鑰送給他的朋友們 帕蒂 道格 蘇珊 每人一把。蘇珊要給鮑勃寫一封保密的信。她寫完後用鮑勃的公鑰加密,就可以達到保密的效果。鮑勃收信後,用私鑰解密,就看到了信件內容。這裡要強調的是,...