iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 5
0
Blockchain

D30 Block Chain 系列 第 5

D5 區塊鏈特色之四

  • 分享至 

  • xImage
  •  

區塊鏈中最為重要的技術就是密碼學Cryptography,其源於希臘語「kryptós 隱藏」和「gráphein 書寫」,因此也有加密貨幣Cryptocurrency。各種通行密碼技術主要有直接儲存法、單向函數法、通行密碼加密碼、通行密碼加鹽法、時戳法、亂數法;密碼學主要可分類為編碼、單向雜湊、非對稱式加密法、對稱式加密法。

What is the Hash Function

單向函數法One-Way Function可避免系統管理員得知使用者的通行密碼,因為Z = F(X)時,知道Z也難推出X。

雜湊函數,又稱散列函數、哈希函數,是不管輸入多長的字串都可以產生(mapping)固定長度大小的輸出值,並且好的函數不可有重複的,就算改一個字元也會有很大的改變,可用雜湊值是來證實其唯一性,如同人的指紋是唯一的,才有「數位指紋Digital Fingerprint」之稱。而所謂「碰撞Collision」是指多個不同的輸入值在使用同個函數的情況下,能得出至少兩個相同的輸出值。

單向雜湊算法也被稱為訊息指紋 Message Fingerprint演算法或 訊息摘要 Message Digest演算法,是不需要Private key的。

下面是常使用的幾個典型單向雜湊函數,而目前 MD5, SHA1 都已經可被破解:
• MD5(RFC 1321):產生128位元(比特)固定長度,最大輸入訊息長度為無限。
• SHA-1(Secure Hash Algorithm):產生160位元固定長度。
• SHA2-256:產生256位元固定長度 ,是Bitcoin使用的Hash function。
• SHA3-256(Keccak-256):產生256位元固定長度,最大輸入訊息長度為無限,是在Ethereum中使用。
• SHA2-384:產生384位元固定長度。
• SHA2-512:產生512位元固定長度。

提供大家線上測試的工具

What is Public-Key Cryptography?

公開金鑰加密Public-Key Cryptography,亦稱為非對稱加密Asymmetric cryptography,是用一對金鑰,公開金鑰Public key,也稱加密金鑰Enciphering key,是可以公開出去給所有人知道的,另一把私密金鑰Private key,也稱解密金鑰Deciphering key,是要自己秘密保管的,加密的過程是用公鑰將明文Cleartext or Plaintext(未加密的原始資料或機密資料)轉變為密文Ciphertext(經加密成亂碼的文字),接收者用自己的私鑰解密而還原明文內容。

區塊鏈使用的SHA256所產生的公鑰過程是不可逆的,私鑰可則達到2的256次方個,有一定的保護資料的安全;當一個個含有交易紀錄的區塊,串成一長串的區塊鏈 時,其區塊間皆以Hash function塊塊相連,有著連鎖效應,想要竄改交易紀錄須要比挖礦多出非常多倍的算力,因此要51%的算力才能發起攻擊,代價自然不會比當礦工還要值得。

提供大家一份關於區塊鏈技術相關的文章

文章另會分享在stars blog中,歡迎一起交流。


上一篇
D4 區塊鏈特色之三
下一篇
D6 區塊鏈特色之五
系列文
D30 Block Chain 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言