iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 11
0
Blockchain

商管學生如何從零開始學習區塊鏈系列 第 11

DAY11 甚麼是非對稱密鑰加密?

  • 分享至 

  • xImage
  •  

幫大家複習一下,跟著我從零開始學習以太坊區塊鏈到現在學到甚麼?以太坊區塊鏈使用的貨幣叫作以太幣,以太幣的特色是它有智能合約,在以太坊區塊鏈上的交易或執行智能合約要付交易手續費,交易手續費等於Gas Price 乘以 Gas limit,在以太坊區塊鏈中有兩種帳戶外部帳戶(EOA)和合約帳戶(CA),今天我們繼續了解以太坊區塊鏈。

記得我在以太坊區塊鏈中提到外部帳戶(EOA)時,提到了公鑰和私鑰吧!區塊鏈的有效驗證靠的就是兩個技術: Hash值和非對稱密鑰加密,既然有非對稱密鑰加密,相對就會對稱密鑰加密,對稱密鑰加密就是用同一把密鑰加密和解密,為了稍微了解一點,我也認真研究了一番,這裡舉一個對稱加密的簡單例子—Ceasar加密,可以用來簡單的加密英文字母,它會把字母全部移動幾個到另一個字母,如果我們對每個字母向右移動3個, hello就會加密成khoor,如果你要解密就反向移動3個字母,對稱密鑰加密存在兩個問題。第一,這種加密方式容易猜出密鑰,第二,在區塊鏈這樣的分散式(去中心化)網絡中,你要如何將密鑰傳遞給彼此是誰都不知道的參與者呢?

解決這個問題的方法就是我上面提到的非對稱密鑰加密,首先,它會使用兩個不同的密鑰,也就是公鑰和私鑰,這兩把都可以加密和解密,也就是說我用公鑰加密的東西,可以用我的私鑰解密,我用私鑰加密的東西,也可以用我的公鑰解密

假如現在我有一對鑰匙(公鑰私鑰),小瑜也有一對鑰匙(公鑰私鑰),我跟小瑜都把公鑰交給對方,那我手上有甚麼?我的私鑰和小瑜的公鑰;小瑜就會有她的私鑰和我的公鑰,現在,我傳東西給小瑜,我要用她的公鑰加密,因為世界上只有小瑜自己手上有她的私鑰可以解密,如果途中被攔截了,別人也沒鑰匙來解密,所以我用她的公鑰加密給她,她就可以用她的私鑰解密囉!

唉?大家是不是會有疑問,小瑜給我她的公鑰,我加密後傳給她用私鑰解密,那我的公鑰給她幹嘛?答案是跟數位簽名有關,數位簽名簡單來說就是用來驗證我的身分,今天傳東西給小瑜會是這樣的流程: 我會用我的私鑰和她的公鑰加密,小瑜收到後,會用她自己的私鑰解密,接著使用我的公鑰解密,驗證我的hash來確定交易的內容未被修改,就讓我在下一篇好好跟大家解釋一下hash是甚麼吧!那我們明天見~


上一篇
DAY10 以太坊區塊鏈中的帳戶和Gas是甚麼?
下一篇
DAY12 甚麼是hash?
系列文
商管學生如何從零開始學習區塊鏈30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言