曾曉云
摘要:數(shù)字簽名技術(shù)能夠有效地保護(hù)數(shù)據(jù)訪問(wèn)權(quán)限,區(qū)塊鏈技術(shù)因?yàn)槿ブ行幕忍攸c(diǎn)有利于各種隱私數(shù)據(jù)的存儲(chǔ)和保護(hù)。具有數(shù)字簽名的區(qū)塊鏈已經(jīng)成為很多組織作為安全策略的關(guān)鍵技術(shù),可以對(duì)數(shù)字環(huán)境中的任何對(duì)象進(jìn)行身份驗(yàn)證。
關(guān)鍵詞:數(shù)字簽名;區(qū)塊鏈;身份驗(yàn)證
中圖分類(lèi)號(hào):TN918.91 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2020)08-0176-02
0 引言
區(qū)塊鏈技術(shù)被應(yīng)用于各種許可證、登記表或者執(zhí)照等的保存過(guò)程之中[1]。區(qū)塊鏈技術(shù)在金融交易行業(yè)應(yīng)用最為常見(jiàn),如三方支付、資金托管、銀行、證券行業(yè)等。區(qū)塊鏈自動(dòng)合約技術(shù)的應(yīng)用能夠提升工作效率,降低成本投入,更好地實(shí)現(xiàn)金融交易。在數(shù)據(jù)鑒證方面,區(qū)塊鏈技術(shù)具有記錄、驗(yàn)證和不可篡改的特點(diǎn)。
1 數(shù)字簽名技術(shù)
數(shù)字簽名是一種數(shù)字?jǐn)?shù)據(jù)形式,它的工作是虛擬的,但可以合法的和可識(shí)別的來(lái)描述你的名字。越來(lái)越多的人使用數(shù)字簽名來(lái)證明他們的身份。
數(shù)字簽名以準(zhǔn)確和安全的方式提供身份證明,雙方可以安全地完成交易、共享文檔等。合格的數(shù)字簽名是使用特殊安全設(shè)備加密的電子證書(shū)創(chuàng)建的。很多企業(yè)都選擇使用諸如此類(lèi)的電子標(biāo)識(shí)。原因和好處很多,如可以為你的所有文件提供更高的安全級(jí)別;所有參與交易或協(xié)議的人員將能夠跟蹤各方共享的所有信息;并且是方便、直觀的;另外它也是一種方便的遠(yuǎn)程認(rèn)證解決方案,在成本方面,數(shù)字簽名比傳統(tǒng)簽名更有效。
數(shù)字簽名有簡(jiǎn)單簽名,合格數(shù)字簽名和高級(jí)數(shù)字簽名這三種類(lèi)型[2]。簡(jiǎn)單簽名是沒(méi)有特殊屬性的基本簽名。可以用簡(jiǎn)單的簽名快速簽署任何文件,而不需要注冊(cè)。不過(guò),這種類(lèi)型的身份驗(yàn)證也有其局限性。因?yàn)槟愕纳矸莶荒軆H通過(guò)打開(kāi)已簽名的文檔來(lái)驗(yàn)證。簡(jiǎn)單地說(shuō),發(fā)起操作的人必須在文件上應(yīng)用手工簽名標(biāo)記才能讓文檔受到密碼戳的保護(hù)。雖然這個(gè)簽名可能很簡(jiǎn)單,但它仍然可以強(qiáng)大到足以確保數(shù)據(jù)的完整性。
合格和高級(jí)數(shù)字簽名類(lèi)型是專(zhuān)家推薦的最安全的方法,它們可以確保你文件的隱私,并提供對(duì)簽署者的準(zhǔn)確跟蹤。它們使用惟一的簽名密鑰,這些密鑰在不同的簽名者之間是不同的。私有簽名密鑰確保了不可否認(rèn)性以及可以顯示簽署文件的確切個(gè)人。
有幾種不同形式的Click-to-Sign簽名,如電子曲線、鍵入的名稱(chēng)、復(fù)選框和掃描的圖像。這些都是簡(jiǎn)單方便的表單,它們并不能為文檔提供加密保護(hù)。也就是說(shuō),它們不夠強(qiáng)壯和安全。懷有意圖的人很容易把它們復(fù)制到另一份文件上。
在現(xiàn)實(shí)社會(huì)中,簽名已經(jīng)作為簽名者身份的一種證明,簽名代表對(duì)簽名文件的認(rèn)可,不可抵賴(lài);理論上簽名是可信、不可偽造的。比如每次你刷卡消費(fèi)后,營(yíng)業(yè)員肯定需要你對(duì)回執(zhí)上進(jìn)行簽名,這就是一種對(duì)消費(fèi)交易的認(rèn)可;而在比特幣轉(zhuǎn)賬過(guò)程中,比特幣的數(shù)字簽名就是只有比特幣轉(zhuǎn)出人才能生成的一段防偽造的字符串。
2 區(qū)塊鏈
數(shù)字簽名的自然進(jìn)化和區(qū)塊鏈有了新的聯(lián)系。最近流行的就是基于區(qū)塊鏈的數(shù)字簽名新技術(shù)。使用這項(xiàng)新技術(shù),將不再需要昂貴的證書(shū)。使用區(qū)塊鏈支持的簽名,可以對(duì)數(shù)字環(huán)境中的任何對(duì)象進(jìn)行身份驗(yàn)證,也可以知道黑客或其他方是否一直在篡改數(shù)據(jù)。這種基于區(qū)塊鏈的數(shù)字簽名以安全的方式添加額外的數(shù)據(jù),在不允許其他人訪問(wèn)的情況下驗(yàn)證對(duì)象,以及執(zhí)行許多其他有用的操作,如在進(jìn)行比特幣轉(zhuǎn)賬時(shí)需要進(jìn)行數(shù)字簽名才可進(jìn)行交易。
區(qū)塊鏈通過(guò)使用基于共識(shí)機(jī)制來(lái)檢測(cè)交易的有效性,然后利用分布式數(shù)據(jù)庫(kù)來(lái)保存數(shù)據(jù)記錄,并不需要中心協(xié)調(diào)。這個(gè)分布式數(shù)據(jù)庫(kù)不斷維護(hù)著一個(gè)不斷增長(zhǎng)的數(shù)據(jù)記錄,且這些記錄難以被篡改??梢哉f(shuō),區(qū)塊鏈?zhǔn)前殡S著比特幣交易而誕生的一種公共賬本,其主旨是取代外部、第三方認(rèn)證等中心化機(jī)構(gòu),同時(shí)能有效防止被任何人篡改,即使某一個(gè)區(qū)塊損失,這個(gè)公共賬本也能夠及時(shí)修復(fù)。
3 數(shù)字簽名技術(shù)與區(qū)塊鏈
數(shù)字簽名基本上是一種虛擬標(biāo)識(shí),它支持安全的交易。為了防止發(fā)送節(jié)點(diǎn)信息和數(shù)據(jù)被惡意偽造和篡改,將區(qū)塊鏈引入數(shù)字簽名技術(shù)。數(shù)字簽名技術(shù)作用是保證發(fā)送信息不會(huì)被篡改。數(shù)字簽名又名為公鑰數(shù)字簽名,是一種通過(guò)公鑰加密鑒別數(shù)字信息的方法?;谠摷夹g(shù)信息,發(fā)送者可以發(fā)送別人不能偽造的一串?dāng)?shù)字字符,也可以證明發(fā)送信息真實(shí)性。
區(qū)塊鏈中,數(shù)字簽名技術(shù)包含兩種運(yùn)算算法:簽名和驗(yàn)證。數(shù)字簽名可以讓文件更加安全,將簽名與區(qū)塊鏈系統(tǒng)配對(duì),可以獲得更高級(jí)別的安全性。數(shù)字簽名就是在區(qū)塊鏈發(fā)送交易時(shí),無(wú)論是比特幣、Ethereum、Hyperledger Fabric或是其他,它們都需要使用數(shù)字簽名進(jìn)行簽名驗(yàn)證。區(qū)塊鏈的數(shù)字簽名,就是只有在區(qū)塊鏈轉(zhuǎn)賬的轉(zhuǎn)出方生成的一段防偽造的字符串。通過(guò)驗(yàn)證該數(shù)字串,一方面證明該交易是轉(zhuǎn)出方發(fā)起的,另一方面證明交易信息在傳輸中沒(méi)有被更改。
數(shù)字簽名是如何運(yùn)作的呢?簡(jiǎn)單點(diǎn)來(lái)說(shuō)就是通過(guò)數(shù)字摘要技術(shù)把交易信息縮短成固定長(zhǎng)度的字符串。比如,甲方發(fā)起一筆比特幣轉(zhuǎn)賬,需要先將該交易進(jìn)行數(shù)字摘要,縮短成一段字符串,然后用自己的私鑰對(duì)摘要進(jìn)行加密,形成數(shù)字簽名。完成后甲需要將原文(交易信息)和數(shù)字簽名一起廣播給工人,工人用甲的公鑰進(jìn)行驗(yàn)證,如果驗(yàn)證成功,說(shuō)明該筆交易確實(shí)是甲發(fā)出的,并且信息沒(méi)有被更改。簽名完成后需要將完整的交易信息和數(shù)字簽名一起廣播給工人,工人用轉(zhuǎn)出人的公鑰進(jìn)行驗(yàn)證(公鑰是公開(kāi)的,用來(lái)做解密操作的),如果驗(yàn)證成功說(shuō)明該筆交易確實(shí)是轉(zhuǎn)出人本人發(fā)起的且信息未被篡改。也就是說(shuō),由于比特幣使用數(shù)字簽名來(lái)證明資金的所有權(quán),因此發(fā)送比特幣需要其所有者進(jìn)行數(shù)字簽名來(lái)授權(quán)轉(zhuǎn)讓。具體這筆交易會(huì)被發(fā)送到比特幣的公共網(wǎng)絡(luò),之后記錄進(jìn)比特幣的公共數(shù)據(jù)庫(kù)即區(qū)塊鏈里,因此任何人都可以通過(guò)檢查數(shù)字簽名進(jìn)行驗(yàn)證。
數(shù)字簽名由數(shù)字摘要和非對(duì)稱(chēng)加密技術(shù)組成。數(shù)字簽名首先通過(guò)數(shù)字摘要技術(shù)把交易信息縮短成固定長(zhǎng)度的字符串,然后用非對(duì)稱(chēng)加密技術(shù)對(duì)摘要進(jìn)行加密,進(jìn)而形成數(shù)字簽名。
對(duì)稱(chēng)加密算法在加密和解密時(shí)使用的是同一個(gè)秘鑰;而非對(duì)稱(chēng)加密算法需要兩個(gè)密鑰來(lái)進(jìn)行加密和解密,這兩個(gè)秘鑰是公開(kāi)密鑰(public key,簡(jiǎn)稱(chēng)公鑰)和私有密鑰(private key,簡(jiǎn)稱(chēng)私鑰)。公鑰與私鑰是一對(duì),如果用公鑰對(duì)數(shù)據(jù)進(jìn)行加密,只有用對(duì)應(yīng)的私鑰才能解密;如果用私鑰對(duì)數(shù)據(jù)進(jìn)行加密,那么只有用對(duì)應(yīng)的公鑰才能解密,因?yàn)榧用芎徒饷苁褂玫氖莾蓚€(gè)不同的密鑰,所以這種算法叫作非對(duì)稱(chēng)加密算法。
在比特幣轉(zhuǎn)賬的過(guò)程中數(shù)字簽名加密的私鑰和解密的公鑰就不一致。
基于數(shù)字簽名的區(qū)塊鏈交易過(guò)程如下,如圖1所示。
區(qū)塊鏈不使用當(dāng)前的公鑰加密文檔,而是允許使用私鑰,因?yàn)樗借€的安全性要高得多。畢竟網(wǎng)絡(luò)安全已經(jīng)因?yàn)檫@個(gè)系統(tǒng)而發(fā)生了革命性的變化。此外,上述系統(tǒng)允許用戶(hù)在同一個(gè)文件中包含多個(gè)簽名、時(shí)間戳甚至指紋??傊?,所有這些數(shù)字簽名、區(qū)塊鏈和哈希值都是相互關(guān)聯(lián)的,并且以它們最有效的形式存在。
4 結(jié)語(yǔ)
如今數(shù)字簽名技術(shù)和區(qū)塊鏈的結(jié)合更深,更廣,如通過(guò)復(fù)合簽名技術(shù)消除或模糊交易發(fā)送方與接收方之間的鏈接,來(lái)增強(qiáng)區(qū)塊鏈系統(tǒng)中交易的匿名性[3];通過(guò)橢圓曲線離散對(duì)數(shù)問(wèn)題、雙線性映射和聚類(lèi)簽名等加密技術(shù)提出針對(duì)區(qū)塊鏈上交易的新簽名方案以隱藏交易金額等等。
參考文獻(xiàn)
[1] 田道坤,彭亞雄.在區(qū)塊鏈中基于混合算法的數(shù)字簽名技術(shù)[J].電子科技,2018,31(7):19-23.
[2] 趙屹.電子文件防篡改技術(shù)發(fā)展對(duì)檔案管理的影響及啟示[J].檔案學(xué)研究,2019(6):77-85.
[3] 顧欣,徐淑珍.區(qū)塊鏈技術(shù)的安全問(wèn)題研究綜述[J].信息安全研究,2018,4(11):997-1001.