當前位置:
首頁 > 最新 > 侯震:數字簽名——再也不擔心兒子替我在不及格試卷上簽字了

侯震:數字簽名——再也不擔心兒子替我在不及格試卷上簽字了

侯震

Astar區塊鏈實驗室首席研究員

致力於人工智慧、物聯網、區塊鏈的投資與研究工作,長期跟蹤機器視覺、無人駕駛、基礎穩定貨幣等細分行業。

今天,我們來學習下數字簽名(digital signatures)。數字簽名理論和哈希函數一起,是密碼學的重要組成部分。

數字簽名是對紙上手寫簽名的數字模擬。區別於手寫的物理簽名,數字簽名需要滿足兩個要求,才能使其與手寫物理簽名的預期一致。

第一,簽名只有本人才能製作,但任何人都可以驗證其有效性;

第二,簽名只與某一特定文件有聯繫,也就是說簽名不能證明你同意另一份文件。

那麼如何通過密碼學來構造這些性質呢?我們先來看看大神們給的技術方案。

數字簽名方案

數字簽名方案的三個演算法:

密鑰生成演算法:

(sk,pk):= generateKeys(keysize)

generateKeys方法把keysize作為輸入,來產生一對公鑰和私鑰。私鑰sk(secret key)被安全保存,並用來簽名一段消息;

公鑰(private key)是人人都可以拿到的,拿到它,被人可以驗證你的簽名。

加密演算法:

sig:=sign(sk,message)

加密演算法以密鑰和一段消息作為輸入,輸出就是你的簽名。

解密演算法:

isValid:=verify(pk,message,sig)

解密演算法就是把密鑰、簽名和消息作為輸入,如果返回結果是真,則簽名屬實,如果返回結果是假,則證明簽名是假。

如果上述方案過於技術,那麼我們用圖片來通俗的介紹下數字簽名的過程。

1. Astar小倩有兩把鑰匙,一把公鑰,一把私鑰。私鑰是密鑰中保密的部分,只由小倩自己保管;公鑰則是小倩身份的象徵,類似小倩的名片,其他人可以通過小倩的公鑰來識別小倩的身份。

2. 小倩把他的公鑰發給他的好朋友小高。

3. 小高給小倩寫了一封信,寫完之後,他用小倩的公鑰加密,這樣這封信就只有小倩自己才能打開。

4. 小倩收到信之後非常高興,用自己的私鑰解密,就看到了信的內容。這樣就完成了一次簡單的公鑰私鑰加解密的過程,現在來說說數字簽名。

5. 小倩打算給小高回信,並打算在信的末尾加上小倩的數字簽名。小倩首先運用哈希函數,生成小倩回信的摘要。

註:有關摘要的內容,我們複習下之前哈希運算的內容。這裡,我們根據哈希演算法的碰撞阻力特性,將發送信息生成信息摘要,極大降低了儲存要求(哈希值長度固定,256位),同時通過比較哈希值還可以有效檢測文件是否損壞或惡意篡改(如果原文件損壞或被惡意篡改,那麼它的哈希值也會隨之改變)。

6. 小倩對這個摘要進行私鑰加密,生成數字簽名。

7. 小倩將這個簽名附在信件下面一起發給小高。

8. 小高收到信之後,取下簽名,用小倩的公鑰解密,得到信件的摘要。由此發現,此信確實是由小倩發的。

9. 最後,小高再對信件本身做哈希運算,得到的結果與上文的摘要進行比對,如果兩者一致,就證明信件未被修改過。

圖解完數字簽名的全過程,我們回過頭來看看數字簽名的意義。

首先,數字簽名技術確保了消息的真實性,也就是不可偽造的,因為其他人假冒不了發送方的私鑰,對於發送方私鑰加密的信息,只有發送方的公鑰才能解密。

其次,數字簽名保證了消息的完整性,一次簽名對應一個哈希值,這樣既保證了簽名的一次有效性,同時,哈希運算防止了數據被篡改的可能。

對於數字簽名來說,很重要的一點就是公鑰的分發,公鑰是公開給所有人的,那麼它有沒有可能被偽造或篡改呢?一旦公鑰出問題,會威脅整個體系的安全。下一章節,我們會解決這個問題。

Astar Lab成立於2017年,旗下有兩個子品牌:Astar Fund & Astar IBD。Astar Lab的基金品牌Astar Fund 擁有嚴格篩選的一級市場投資策略和穩健的二級市場操作策略,是多個世界頂級區塊鏈項目的基石私募投資機構,量化基金子品牌Bit Valley上一季度平均回報率超過100%。而作為區塊鏈投行的服務商,Astar IBD可以承擔財務顧問,行業顧問,保薦商,承銷商等多個角色,目前已經累計在多個環節服務二十餘家機構。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Astar區塊鏈實驗室 的精彩文章:

CEC:區塊鏈版權跨境交易領域的拓荒者,首推視頻跨境交易項目

TAG:Astar區塊鏈實驗室 |