ECC加密算法在區(qū)塊鏈中的應用

ECC算法普遍被認為是最強大的非對稱算法,基于ECC算法在實際應用中的優(yōu)勢,它在很多領域都有著廣泛的應用。下面我們就來了解一下ECC算法在區(qū)塊鏈中的應用。

ECC算法在區(qū)塊鏈中的應用

ECC算法在區(qū)塊鏈中最為典型的應用場景就是數(shù)字簽名,常用的數(shù)字簽名體制包括RSA、EIGamal、ECDSA等,而在區(qū)塊鏈中,主要使用的是基于ECC算法的數(shù)字簽名算法ECDSA。

ECDSA

ECDSA的原理

ECDSA又名橢圓曲線簽名算法,設私鑰、公鑰分別為k、K,即K = kG,其中G為G點。

  • 私鑰簽名:

1、選擇隨機數(shù)r,計算點rG(x, y)。

2、根據隨機數(shù)r、消息M的哈希h、私鑰k,計算s = (h + kx)/r。

3、將消息M、和簽名發(fā)給接收方。

  • 公鑰驗證簽名:

1、接收方收到消息M、以及簽名。

2、根據消息求哈希h。

3、使用發(fā)送方公鑰K計算:hG/s + xK/s,并與rG比較,如相等即驗簽成功。

  • 原理如下:

hG/s + xK/s = hG/s + x(kG)/s = (h+xk)G/s

= r(h+xk)G / (h+kx) = rG

ECDSA

ECDSA的優(yōu)點

橢圓曲線離散對數(shù)問題遠難于離散對數(shù)問題,所以,ECC的安全強度要遠高于傳統(tǒng)的離散對數(shù)算法。因此,在使用較短的密鑰的情況下,ECC可以達到更高的安全級別。

這帶來的好處就是計算ECDSA參數(shù)更小,密鑰更短,運算速度更快,簽名也更加短小。因此ECDSA尤其適用于處理能力、存儲空間、帶寬及功耗受限的場合。

另外,ECC算法不僅可以用于簽名驗簽,還可以用于數(shù)據加密,從而提高了數(shù)據傳輸?shù)陌踩?。因為ECDSA具有極高的安全性,目前已廣泛應用在比特幣、以太坊、超級賬本等區(qū)塊鏈項目中。

免責聲明:素材源于網絡,如有侵權,請聯(lián)系刪稿。