還記得前一章區塊鏈的核心概念嗎?其中如果在「公開透明」的情況下,那隱私性是不是會下降呢?本章節讓我們淺談一下在區塊鏈中的安全性吧!
先來聊聊「私鑰、公鑰」是甚麼?
每個人在區塊鏈的世界裡,都會有一個密鑰。
在交易時會利用密鑰加密後,產出一對鑰匙分別為「公鑰、私鑰」,其中私鑰最為重要。
私鑰等同錢包密碼,還記得上一章所說「去中心化」嗎?在去中心化的情況下,因沒有第三方幫你紀錄私鑰密碼,會導致你喪失整個錢包的主導權;而不幸私鑰被有心人拿走,對方也能直接成為你錢包的主人,把錢都偷走。
而「公開透明化」的部分,則是在公鑰跟地址,公鑰是由私鑰經過加密所組成的,地址則是經公鑰在加密而成。在區塊鏈世界中,公鑰對礦工來說最為重要,因為礦工會用公鑰作為驗證交易的重要數據之一;地址則是接收訊息,且只有擁有該地址「私鑰」(解鎖)的人才能開啟它。
「對稱加密」和「非對稱加密」有差別嗎?
而在區塊鏈的世界裡,傳遞訊息也有兩種方式加密方式,為「對稱加密」和「非對稱加密」。
顧名思義「對稱加密」,就是加密和解密都用同一把鑰匙,舉例來說:A用紅色鑰匙將門上鎖,則B想要進入房間就必須要有那把紅色鑰匙(圖一); 有可能B好不容易借到鑰匙,而卻被C偷走了,則C就可以潛近房間偷走東西(圖二)。
(圖一)需跟上鎖的人拿鑰匙 (圖二) 鑰匙被拿走的情況下
而區塊鏈則是,使用了「非對稱加密」防止竄改及加強資訊的安全性,因為加密和解密的鑰匙都是不一樣,想要解鎖訊息,就需要傳送人私鑰才能解開訊息內容;例如:B要給A一千塊,但是怕被大家發現,因此在B要再給A錢時,A先準備好了一把公鑰、一把私鑰,跟一個傳送地址;因為怕錢被偷,所以A就把自己的公鑰跟地址提前先給B,告訴B說「你把錢放進去這個有地址的箱子裡,再用我給的鑰匙上鎖就可以傳給我了」(圖三),此箱子被上鎖,且箱子上的鑰匙(公鑰)只能上鎖不能解鎖,所以任何人拿到了都打不開此箱子,唯獨只有A的私鑰可以打開,進而大大降低被偷走的風險。
「數位簽章」又是甚麼?
而數位簽章則是多增加一組簽名,降低資訊被篡改的可能性,而簽名的順序和非對稱加密的原理是相反的。在非對稱加密裡,「私鑰負責解密、公要負責加密」,而數位簽章則反之,利用「私鑰加密簽名,須要用公鑰解密」確認傳遞的訊息裡資訊是否正確。舉一個例子:A有個訊息要給B,但是怕被大家篡改,因此A會把其中一份訊息經過雜湊函數運算出一個值,利用私鑰加密(簽名),和另一份完整內容一起傳遞,而接收者,須再利用雜湊函數將完整內容運算出值,且拿出公鑰解密,查看兩個數值是否相同,如果是相同的狀態下,則此交易訊息是正確的,如果不是則反之(圖四)。再傳遞中,資訊是可以被打開的(因為有公鑰解密),但是因為打開後沒有私鑰可以加密,因此不會有人想打開,進而大大降低被偷走的風險。
小結:
有許多人對於區塊鏈的安全性還是有所顧慮,但經由上述了解到,區塊鏈是如何在公開透明的情況下,透過加密原理和數位簽章的概念,降低被篡改的風險!而且在現在科技發達的狀態下,這些演算法的概念其實可以延伸在很多地方,公司資料的保存、購物上的交易訊息等等,也相信在未來科技發達時,這些技術一定更會被廣泛的應用。
本文章的先分享到這邊,其他的我們下一篇文再繼續分享~,如果有任何疑問都歡迎在下方留言或是私訊粉專喔!!