數(shù)字簽名是用于驗(yàn)證數(shù)字?jǐn)?shù)據(jù)的真實(shí)性和完整性的加密機(jī)制。我們可能會(huì)認(rèn)為它是常見手寫簽名的數(shù)字版本,但是它更復(fù)雜,更安全。
簡(jiǎn)而言之,數(shù)字簽名是附加在消息或文檔上的一段代碼。生成代碼后,可以證明該消息在從發(fā)送方發(fā)送到接收方時(shí)未被篡改。
通過(guò)加密保護(hù)通信的概念可以追溯到遠(yuǎn)古時(shí)代,但是隨著1970年代公鑰加密(PKC)的發(fā)展,數(shù)字簽名方案成為可能。因此,要了解數(shù)字簽名的工作方式,您首先需要了解哈希函數(shù)和公共密鑰密碼學(xué)的基礎(chǔ)知識(shí)。
散列是數(shù)字簽名系統(tǒng)的關(guān)鍵元素之一。散列涉及將任何大小的數(shù)據(jù)轉(zhuǎn)換為固定大小的值。這是通過(guò)稱為哈希函數(shù)的特殊算法完成的。哈希函數(shù)產(chǎn)生的結(jié)果值稱為哈希值或消息摘要。
當(dāng)與加密結(jié)合使用時(shí),可以使用所謂的加密哈希函數(shù)來(lái)生成可用作唯一數(shù)字指紋的哈希值(摘要)。這意味著輸入數(shù)據(jù)(消息)的任何更改都將導(dǎo)致完全不同的結(jié)果(哈希值)。這就是為什么加密哈希函數(shù)被廣泛用于驗(yàn)證數(shù)字?jǐn)?shù)據(jù)的真實(shí)性的原因。
在加密世界中,數(shù)字簽名系統(tǒng)通常包含三個(gè)基本步驟:哈希,簽名和驗(yàn)證。
第一步是對(duì)消息或數(shù)字?jǐn)?shù)據(jù)進(jìn)行哈希處理。這是通過(guò)使用哈希算法提交數(shù)據(jù)以生成哈希值(例如,消息摘要)來(lái)完成的。如前所述,消息大小可以有很大的不同,但是當(dāng)進(jìn)行散列處理時(shí),它們將具有相同長(zhǎng)度的散列。這是哈希函數(shù)的最基本屬性。
但是,對(duì)數(shù)據(jù)進(jìn)行哈希處理以生成數(shù)字簽名不是必需的,您還可以使用私鑰對(duì)根本沒(méi)有哈希的消息進(jìn)行簽名。但是,在使用加密貨幣的情況下,總是對(duì)數(shù)據(jù)進(jìn)行哈希處理,因?yàn)樘幚砉潭ㄩL(zhǎng)度的摘要會(huì)簡(jiǎn)化整個(gè)過(guò)程。
讓我們以一個(gè)示例來(lái)說(shuō)明最終驗(yàn)證階段的整個(gè)過(guò)程。假設(shè)愛(ài)麗絲(Alice)向鮑勃(Bob)寫了一條消息,對(duì)其進(jìn)行了哈希處理,然后根據(jù)哈希值和私鑰生成了數(shù)字簽名。該簽名將用作特定消息的唯一數(shù)字指紋。
Bob收到消息后,可以使用Alice的公鑰來(lái)驗(yàn)證數(shù)字簽名。這樣,Bob可以確保簽名是由Alice生成的,因?yàn)橹挥蠥lice(至少,正如我們期望的那樣)具有與公鑰相對(duì)應(yīng)的私鑰。
結(jié)果,Alice必須保持她的私鑰安全。如果有人獲得了Alice的私鑰,則可以生成數(shù)字簽名并假裝為Alice。就比特幣而言,這意味著有人可以在未經(jīng)許可的情況下移動(dòng)或使用Alice的比特幣。
數(shù)字簽名通常用于實(shí)現(xiàn)三個(gè)結(jié)果:數(shù)據(jù)完整性,真實(shí)性和不可否認(rèn)性。
數(shù)字簽名可以應(yīng)用于各種數(shù)字文檔和證書。因此,數(shù)字簽名以多種方式使用,最常見的用例是:
數(shù)字簽名方案面臨的主要挑戰(zhàn)來(lái)自三個(gè)最低要求。
簡(jiǎn)而言之,數(shù)字簽名與某些類型的電子簽名相關(guān)聯(lián),這意味著如何對(duì)文檔和消息進(jìn)行電子簽名。因此,所有數(shù)字簽名都是電子簽名,但是電子簽名并不總是數(shù)字簽名。
它們之間的主要區(qū)別在于身份驗(yàn)證方法。數(shù)字簽名使用加密系統(tǒng),例如哈希函數(shù), 公共密鑰密碼學(xué)和密碼學(xué)。
哈希函數(shù)和公共密鑰密碼術(shù)是數(shù)字簽名系統(tǒng)的核心,并在當(dāng)今廣泛的應(yīng)用中得到使用。正確實(shí)施后,數(shù)字簽名可以提高安全性,確保完整性并啟用任何類型的數(shù)字?jǐn)?shù)據(jù)的身份驗(yàn)證。
在區(qū)塊鏈?zhǔn)澜缰?,?shù)字簽名用于簽署和批準(zhǔn)加密貨幣交易。該簽名在比特幣中尤其重要,因?yàn)橹挥袚碛邢鄳?yīng)私鑰的人才能使用該硬幣。
電子簽名和數(shù)字簽名已經(jīng)使用了很多年,但是仍有很大的增長(zhǎng)空間。當(dāng)今,許多官僚機(jī)構(gòu)仍以書面工作為基礎(chǔ),但是隨著我們轉(zhuǎn)向更數(shù)字化的系統(tǒng),將會(huì)采用更多的數(shù)字簽名方案。
公鑰密碼術(shù)(PKC)是指使用一對(duì)密鑰組成的加密系統(tǒng),該密鑰對(duì)包括一個(gè)公鑰和一個(gè)私鑰。這兩個(gè)密鑰在數(shù)學(xué)上相關(guān),并且可以用于數(shù)據(jù)加密和數(shù)字簽名。
作為一種加密工具,PKC 比最基本的方法對(duì)稱加密更安全。較早的系統(tǒng)需要相同的密鑰來(lái)加密和解密信息,但是PKC使用公共密鑰加密數(shù)據(jù),并使用相應(yīng)的私有密鑰進(jìn)行數(shù)據(jù)解密。
此外,PKC方案可以應(yīng)用于數(shù)字簽名生成。基本上,這涉及通過(guò)簽名者的私鑰對(duì)消息(或數(shù)字?jǐn)?shù)據(jù))進(jìn)行哈希處理。然后,郵件收件人可以使用簽名者提供的公共密鑰來(lái)驗(yàn)證簽名是否有效。
在某些情況下,數(shù)字簽名可能包括加密,但并非總是如此。例如,比特幣區(qū)塊鏈?zhǔn)褂肞KC和數(shù)字簽名,但是與許多人相反,該過(guò)程不包括加密。嚴(yán)格來(lái)說(shuō),比特幣使用橢圓曲線數(shù)字簽名算法(ECDSA)來(lái)驗(yàn)證交易。
對(duì)信息進(jìn)行哈希處理后,需要消息發(fā)送者的簽名。這是使用公鑰加密的時(shí)刻。數(shù)字簽名算法有很多不同的類型,每種都有自己的機(jī)制。但是,默認(rèn)情況下,散列消息使用私鑰簽名,并且郵件收件人可以使用相應(yīng)的公共密鑰(由簽名者提供)進(jìn)行驗(yàn)證。
換句話說(shuō),如果在生成簽名時(shí)不包括私鑰,則郵件接收者將無(wú)法使用相應(yīng)的公鑰來(lái)對(duì)其進(jìn)行驗(yàn)證。公鑰和私鑰都是由消息發(fā)送者生成的,但是只有公鑰才與收件人共享。
重要的是要注意,數(shù)字簽名與每個(gè)消息的內(nèi)容直接相關(guān)。因此,與手寫簽名不同,每個(gè)數(shù)字簽名的消息將具有不同的數(shù)字簽名。
下一篇:全面介紹代幣兌換?什么是代幣兌換
相關(guān)閱讀推薦
最新資訊
最新游戲
我要上王者解鎖版
查看體育帝國(guó)大亨(Sports Empire)
查看重啟世界國(guó)際版
查看骰子獵人無(wú)限資源版
查看寶石塔防2游戲
查看奧特曼vs假面騎士手機(jī)版
查看原始回歸傳奇
查看喪尸圍城HD
查看戰(zhàn)地英雄
查看熱門文章
熱門游戲
狂扁小豆丁去廣告版 v1.1.2
查看王國(guó)紀(jì)元 v2.167官方正版
查看夢(mèng)境食旅官方正版 v1.0.5.6
查看射箭沖突 v0.32.0安卓版
查看洛伊的移動(dòng)要塞手機(jī)版 v.1.5.08
查看爆炒江湖 v1.42中文版
查看龍與劍 V1.1.1最新版
查看天道洪荒模擬器 v4.1無(wú)限靈氣/本源
查看龍之劍官方版 v0.1.3最新版
查看致命槍殺中文版 v12.0破解版
查看皇帝成長(zhǎng)計(jì)劃2 v2.2.2手機(jī)版
查看開心酷跑安卓版 v4.6.5官方版
查看臺(tái)球王者 v4.3.7安卓版
查看無(wú)神之界手游 v1.1.2安卓版
查看躍遷旅人手游 v2.2.2
查看Apex英雄手游 v1.1.839.46安卓國(guó)際服版
查看游卡三國(guó)殺 官方版v4.1.9
查看超級(jí)魂斗羅無(wú)敵版 v1.0.0安卓版
查看