圖文解說:什麼是數字簽名

圖文解說:什麼是數字簽名

數字簽名簡介 By David Youd

前言

         最近在在網上瀏覽SSL協議加密有關的文章時,越感對“數字簽名”產生了不小的困惑。直接搜索“什麼是數字簽名”,發現了這篇早期文章:

http://www.youdzone.com/signature.html,很早,但是依舊耐人尋味。在網貼上也找到了相關的翻譯:http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html。讀了下來,覺得它這個翻譯其實只是義譯,連“故事情節”都變動不少,於是就自己動起手來,於是就有了本文..


譯文

        Bob有兩把鑰匙,一把被稱作公共鑰匙,即公鑰;另一把則被稱作私鑰。

     

        Bob的公鑰對於需要它的任何人都能得到,但是他的私鑰則自己保留。密鑰(公鑰和私鑰)是用來加密信息的。加密信息的過程意味着“混淆打亂”,以至於只有擁有合適密鑰的人才能將其再次變得可讀。Bob的兩把鑰匙中,任何一把用來加密數據,另一把就能解密數據。

      

        Susan(如下展示)用Bob的公鑰加密了一條信息發給Bob,Bob則用私鑰來解密信息進行讀取。Bob的任一同事可能都可以拿到Susan已經加密的信息,但是沒有Bob的私鑰,這些數據都是沒用的。

    

        利用他的私鑰和適當的軟件,Bob放置了數字簽名在文檔和一些數據中。這個數字簽名是Bob放在數據中的,是對於Bob而言唯一的“標識”,是非常難以捏造的。並且,這個簽名能夠確保當數據發生任何變動時都會被發現。
對文檔簽名時,Bob的軟件會將數據揉碎壓縮成僅僅幾行,這個過程被稱爲“HASH校驗”,形成的幾行則被稱作信息的摘要。(直接將信息摘要還原成原始的數據信息是不可能的)

      

       然後Bob的軟件再利用他的私鑰加密信息的摘要,這個結果就是數字簽名。

     

     最後,Bob的軟件將這個數字簽名與信息文檔放在一塊。所有的數據已經被有所標識了。
    

     現在Bob把文檔傳遞給了Pat。



Plot 糾結ing..(悲劇,沒故事...)

 
       碰巧的是,Suan工作在公司的CA中心(證書認證),Susan可以對Bob的公鑰和他的一些資料信息一併簽名,簡單地爲Bob製作一個數字證書。

    

        現在Bob的同事能夠通過檢測Bob受信任的證書來確保他們擁有的公鑰確實是Bob的。事實上,Bob公司中沒有人會接受沒有Susan生成證書的那個簽名。這個就給了Susan撤銷私鑰被泄露的數字證書的權利,而這幾乎是不太可能的。Susan的CA證書驗證則被廣泛的接受。
我們接着說Bob把已經簽名的文檔發給了Pat。爲了驗證在文檔上的數字簽名,Pat首先借助軟件用Susan(即CA)的公鑰來檢測Bob文檔上的證書。如果順利解開了證書則證明是Susan生成的它。解開證書之後,Pat可以通過聯繫CA中心,與Bob證書上的信息對照,以檢查文檔是否被修改過。
然後,pat從證書中拿到Bob的公鑰,用它來檢測Bob的簽名。如果Bob的公鑰能夠順利解開簽名,Pat就可以確定這個簽名是利用Bob的私鑰生成的,同時也匹配了Susan頒發的證書公鑰。並且,如果簽名是對照的,也說明了Doug不可能修改了文檔內容。
儘管,這些步驟看起來挺讓人頭疼的,它們卻以Pat有關的用戶友好的軟件場景手把手似的。驗證簽名信息,Pat只需點擊下圖:
                                                                 

                                                                        (圖爲驗證數字證書的標識)


有關下載

鏈接: http://pan.baidu.com/s/1qWNrSZy 密碼: vsi1


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章