• Home
  • イーサリアム改善提案(EIP 1108)についての調査

イーサリアム改善提案(EIP 1108)についての調査

Ethereumの改善提案(EIP)についての調査結果をまとめる。
今回はGoEthereum(Geth)のv1.9.3に含まれるEIP1108(プリコンパイルGASコストの削減)について調査する。(2019/09/13現在)

参考:Ethereum Improvement Proposals 「EIP 1108: Reduce alt_bn128 precompile gas costs

要約

楕円曲線演算を用いてプリコンパイルするGASコストが高くなっている。このGASコストを下げることで、Ethereumでの多くのプライバシーソリューションとスケーリングソリューションを支援するための提案。

変更の利点

最近、公式のGoリファレンスで、ECADD(アドレス0x06)、ECMUL(アドレス0x07)、およびペアリングチェック(アドレス0x08)のプリコンパイル済みコントラクトを実装するために使用される基礎ライブラリがCloudflareのbn256に移行した。この変更を導入し、ECADD、ECMULおよびペアリングチェック(定数を除く)の計算コストは全体にわたってほぼ1桁低下した。

仕様

更新されたGASコストは、パフォーマンスの低いクライアントであるパリティに合わせて調整されている。

Contract:Address:Current Gas Cost:Updated Gas Cost
ECADD:0x06:500[1]:150
ECMUL:0x07:40,000[1]:6,000
Pairing check:0x08:80,000 * k + 100,000[2]:34,000 * k + 45,000

アルゴリズムの構造により、ランタイムを「固定コスト」と「ペアリングごとの線形コスト」のコンポーネントに分割できる。マイクロ秒あたりの「公正な」価格を使用することでGAS計算式が求められる。

変更の根拠

高速楕円曲線暗号化は、イーサリアム上に構築されたプロトコルの数が増えている重要な要素であり、これらのプロトコルの多くは、プリコンパイルのGASコストを削減するこで大きな利益を得る。また、GethとParityは既にGASコストを削減する高速アルゴリズムを持っており、差し迫った問題に対する即時のソリューションを提供すると同時に、より高度なソリューションを開発、定義、および展開することが可能となる。

特記事項

特になし

ご相談・お見積もり

03-5207-2689