# EIP-2537:長いイーサリアムのプレアセンブリの道EIP-2537は最新のPectraフォークアップグレードで追加されることが決定されたEVMプリアセンブリ命令です。この命令はEVMにBLS12-381曲線のさまざまな計算機能を追加します。例えば、曲線の領域でのペアリング計算などです。EIP-2537は2020年に最初に提案され、2025年までイーサリアムのアップグレードに組み込まれることが確認されませんでした。本記事ではEIP-2537のガバナンスの経緯を紹介し、なぜ5年かけてこの提案がアップグレードに組み込まれたのかを探ります。## 提案の背景2017年1月、ヴィタリック・ブテリンは初めてペアリングアルゴリズムとalt_bn128曲線を紹介しました。その後、ヴィタリックとクリスティアン・ライトビッサーナーはEIP-196とEIP-197を提案し、EVMにalt_bn128曲線計算のサポートを追加しました。2017年10月のByzantiumアップグレードは、alt_bn128曲線を正式に取り入れ、EVM内部での曲線領域ペアリング計算を実現し、ZK-Snarks証明の検証がEVM内で行えるようになりました。2017年11月、zcashチームはBLS12-381曲線を提案しました。これはalt_bn128に比べて、より高い安全性と性能を持っています。その後、多くのブロックチェーンプロトコルがBLS12-381曲線を採用しました。2018年5月、ジャスティン・ドレイクはイーサリアムの将来のPoSとシャーディングのアップグレードにBLS12-381に基づくBLSマルチシグアルゴリズムが使用できると指摘しました。実際、後のETH2アップグレードは確かにBLS12-381曲線を採用しました。ETH2の開発が進む中、ETH実行層へのBLS12-381の導入を求める声が高まっています。2020年2月、研究者たちはEIP-2537を提案し、ETH2テストネットと共にテストすることを希望しました。EIP-2537の著者であるAlex Stokesは、Berlinハードフォークにこの提案を含めるよう呼びかけました。! [イーサリアムガバナンスウォッチ:EIP-2537プレアッセンブルジャーニー](https://img-cdn.gateio.im/social/moments-1f78fbf1beee46a4a213a7c20c0ddd84)## ベルリンの動乱次の内容を紹介する前に、EIP-1962を理解する必要があります。この提案は2019年4月にMatter Labsによって提案され、BLS12、BN、MNT4/6の3つの曲線をサポートし、一度に10個の事前コンパイル命令を追加することを計画しています。しかし、提案は複雑すぎるため、多くの開発者から疑問視されています。EIP-1962の問題を解決するために、Matter Labsは2020年2月に複数のEIPの分割案を提案しました。- EIP-2537: BLS12-381のサポートを提供- EIP-2539: BLS12-377のサポートを提供- PR#2541: BLS12-377 (Zexe曲線)のサポート(はEIP番号)を取得していませんその中でEIP-2537が最も重要であり、コンセンサスレイヤーでもBLS12-381曲線が使用されています。これらの提案の核心的な目的は、メインネットでコンセンサスレイヤーのBLS署名検証を実現することです。当時ETH2はデポジット契約を開発中であり、BLS12-381のプリアセンブリを導入することで、デポジット契約内で署名検証を実現し、ユーザーの資金損失リスクを回避することができました。EIP-2537が提案されたとき、Vitalikは一連の問題を指摘し、主にEIP文書の内容に集中していました。その後、著者は返信と議論を行いました。2020年3月6日、イーサリアムのコア開発者会議でEIP-2537について議論されました。Vitalikはこの提案が再帰的SNARK証明に非常に効果的であり、長期的にはイーサリアムに損害を与えないと考えています。会議ではEIP-2537の優先地位が確認され、すべてのクライアントができるだけ早く実装し、Berlinアップグレード前に開発を完了させることを計画しています。その後、EIP-2537は高優先度のタスクとなりました。3月20日の会議で、EIP-2537がEIP-1962の代わりにコアBLS提案として確認され、Berlinアップグレードの予備リストに追加されました。4月の会議でEIP-2537がBerlinハードフォークのアップグレードに正式に組み込まれ、4月の実施、5-6月のテストのタイムラインが確定され、最高優先事項としてリストされました。その後、EIP-2537は大量の開発とテスト段階に入り、20回近くのコア開発者会議で議論されました。主な内容は次の通りです:- ABIエンコーディング問題の議論- 各クライアントの実装進捗同期- Gethの実装PRの問題点- YOLOテストネットのテスト状況- デポジット契約との関係- クライアントの多様性問題- ガスコストの価格設定問題しかし、実装の複雑さから、EIP-2537は最終的にEthereum Core Devs Meeting #99でYOLO v3テストネットとBerlinアップグレードから除外されました。主な理由は、他のEIPの開発に影響を与えるほど、開発リソースを消費しすぎたためです。2021年4月、イーサリアムはベルリンアップグレードを完了しましたが、EIP-2537は含まれていませんでした。これにより、ベルリンアップグレードはやや薄っぺらに見えました。! [イーサリアムガバナンスウォッチ:EIP-2537コンパイル前の旅](https://img-cdn.gateio.im/social/moments-3198079b11f21298df05682606409838)## フォローアップ開発その後の数回のイーサリアムのアップグレードでは、EIP-2537を取り入れることができませんでした:- ロンドンアップグレード: 複雑性とガス料金の問題により除外されました- 上海のアップグレード: 開発者はPoS引き出し機能に注力し、EIP-2537を延期しました- カンクンのアップグレード:注目はEIP-4844で、EIP-2537については議論されていません。2024年2月まで、開発者はPectraのアップグレードに関する議論の中でEIP-2537を再検討することになります。この時点では、実装は問題ではなく、残るのはガス消費の価格設定に関する問題だけです。2024年12月から2025年1月にかけて、開発者はEIP-2537の価格モデルを最終決定し、コストの問題を解決しました。! [イーサリアムガバナンスウォッチ:EIP-2537プレアッセンブリージャーニー](https://img-cdn.gateio.im/social/moments-75338d7a495f20ef25a70cca21a48381)## まとめEIP-2537は2020年2月に提案され、2025年1月に最終確定されるまで、約5年の時間を経ています。この間、多くのアップグレードの議論と放棄があり、主に実現の複雑性やイーサリアムのアップグレード重点の移転などの要因によって制約を受けました。この過程は、イーサリアムのガバナンスの複雑性や、技術提案が提案から最終的に採用されるまでに経験する可能性のある長いプロセスを示しています。! [イーサリアムガバナンスウォッチ:EIP-2537コンパイル前の旅](https://img-cdn.gateio.im/social/moments-55d3bb1142078f459d3a41ead42cd599)
EIP-2537: イーサリアムBLS12-381プリアセンブリ命令の5年の曲折の道
EIP-2537:長いイーサリアムのプレアセンブリの道
EIP-2537は最新のPectraフォークアップグレードで追加されることが決定されたEVMプリアセンブリ命令です。この命令はEVMにBLS12-381曲線のさまざまな計算機能を追加します。例えば、曲線の領域でのペアリング計算などです。
EIP-2537は2020年に最初に提案され、2025年までイーサリアムのアップグレードに組み込まれることが確認されませんでした。本記事ではEIP-2537のガバナンスの経緯を紹介し、なぜ5年かけてこの提案がアップグレードに組み込まれたのかを探ります。
提案の背景
2017年1月、ヴィタリック・ブテリンは初めてペアリングアルゴリズムとalt_bn128曲線を紹介しました。その後、ヴィタリックとクリスティアン・ライトビッサーナーはEIP-196とEIP-197を提案し、EVMにalt_bn128曲線計算のサポートを追加しました。
2017年10月のByzantiumアップグレードは、alt_bn128曲線を正式に取り入れ、EVM内部での曲線領域ペアリング計算を実現し、ZK-Snarks証明の検証がEVM内で行えるようになりました。
2017年11月、zcashチームはBLS12-381曲線を提案しました。これはalt_bn128に比べて、より高い安全性と性能を持っています。その後、多くのブロックチェーンプロトコルがBLS12-381曲線を採用しました。
2018年5月、ジャスティン・ドレイクはイーサリアムの将来のPoSとシャーディングのアップグレードにBLS12-381に基づくBLSマルチシグアルゴリズムが使用できると指摘しました。実際、後のETH2アップグレードは確かにBLS12-381曲線を採用しました。
ETH2の開発が進む中、ETH実行層へのBLS12-381の導入を求める声が高まっています。2020年2月、研究者たちはEIP-2537を提案し、ETH2テストネットと共にテストすることを希望しました。EIP-2537の著者であるAlex Stokesは、Berlinハードフォークにこの提案を含めるよう呼びかけました。
! イーサリアムガバナンスウォッチ:EIP-2537プレアッセンブルジャーニー
ベルリンの動乱
次の内容を紹介する前に、EIP-1962を理解する必要があります。この提案は2019年4月にMatter Labsによって提案され、BLS12、BN、MNT4/6の3つの曲線をサポートし、一度に10個の事前コンパイル命令を追加することを計画しています。しかし、提案は複雑すぎるため、多くの開発者から疑問視されています。
EIP-1962の問題を解決するために、Matter Labsは2020年2月に複数のEIPの分割案を提案しました。
その中でEIP-2537が最も重要であり、コンセンサスレイヤーでもBLS12-381曲線が使用されています。これらの提案の核心的な目的は、メインネットでコンセンサスレイヤーのBLS署名検証を実現することです。当時ETH2はデポジット契約を開発中であり、BLS12-381のプリアセンブリを導入することで、デポジット契約内で署名検証を実現し、ユーザーの資金損失リスクを回避することができました。
EIP-2537が提案されたとき、Vitalikは一連の問題を指摘し、主にEIP文書の内容に集中していました。その後、著者は返信と議論を行いました。
2020年3月6日、イーサリアムのコア開発者会議でEIP-2537について議論されました。Vitalikはこの提案が再帰的SNARK証明に非常に効果的であり、長期的にはイーサリアムに損害を与えないと考えています。会議ではEIP-2537の優先地位が確認され、すべてのクライアントができるだけ早く実装し、Berlinアップグレード前に開発を完了させることを計画しています。
その後、EIP-2537は高優先度のタスクとなりました。3月20日の会議で、EIP-2537がEIP-1962の代わりにコアBLS提案として確認され、Berlinアップグレードの予備リストに追加されました。
4月の会議でEIP-2537がBerlinハードフォークのアップグレードに正式に組み込まれ、4月の実施、5-6月のテストのタイムラインが確定され、最高優先事項としてリストされました。
その後、EIP-2537は大量の開発とテスト段階に入り、20回近くのコア開発者会議で議論されました。主な内容は次の通りです:
しかし、実装の複雑さから、EIP-2537は最終的にEthereum Core Devs Meeting #99でYOLO v3テストネットとBerlinアップグレードから除外されました。主な理由は、他のEIPの開発に影響を与えるほど、開発リソースを消費しすぎたためです。
2021年4月、イーサリアムはベルリンアップグレードを完了しましたが、EIP-2537は含まれていませんでした。これにより、ベルリンアップグレードはやや薄っぺらに見えました。
! イーサリアムガバナンスウォッチ:EIP-2537コンパイル前の旅
フォローアップ開発
その後の数回のイーサリアムのアップグレードでは、EIP-2537を取り入れることができませんでした:
2024年2月まで、開発者はPectraのアップグレードに関する議論の中でEIP-2537を再検討することになります。この時点では、実装は問題ではなく、残るのはガス消費の価格設定に関する問題だけです。
2024年12月から2025年1月にかけて、開発者はEIP-2537の価格モデルを最終決定し、コストの問題を解決しました。
! イーサリアムガバナンスウォッチ:EIP-2537プレアッセンブリージャーニー
まとめ
EIP-2537は2020年2月に提案され、2025年1月に最終確定されるまで、約5年の時間を経ています。この間、多くのアップグレードの議論と放棄があり、主に実現の複雑性やイーサリアムのアップグレード重点の移転などの要因によって制約を受けました。この過程は、イーサリアムのガバナンスの複雑性や、技術提案が提案から最終的に採用されるまでに経験する可能性のある長いプロセスを示しています。
! イーサリアムガバナンスウォッチ:EIP-2537コンパイル前の旅