
Cosmos IBC EurekaのEthereum上のSP1 Tendermintライトクライアントについて調査しました。 新しいSP1バージョンが、コントラクトのアップグレードなしで既にデプロイされたバリデーターと引き続き動作するかどうかを気になりました。 いくつか興味深い発見がありました。 公式な本番用ELFファイル4つをすべて取得し、SP1 v6.1およびv6.9を使用して、それらの正確なプログラム検証キーを再現しました。 その後、実際のCosmos Hub Tendermint更新証明書を生成し、元の本番用ELFを両バージョンで実行しました。 両方の実行は成功し、768バイトの公開出力、同じ実行ガス、同じSHA-256ハッシュを生成しました。 さらに興味深い点: SP1 v6.1、v6.9、v6.10はすべて回路バージョンv6.1.0と報告しています。 v6.1とv6.10の実際のGroth16検証キーバイナリを比較したところ、バイト単位で完全に同一でした。 それらのSHA-256ハッシュは、Ethereumにすでにデプロイされているバリデーターのハッシュと一致しています: 0x4388a21c687fdd5f218d7e3d13190cac4c5355818d3605fd5fb811df468ee696 したがって、プログラムの識別子、実行、Groth16検証キーのレベルでは、これらのバージョン間で互換性が維持されています。 まだ新しいプローバーを使用して本物の証明を生成しておらず、ライブなEthereumバリデーターでの検証も行っていません。次回の課題です。 証明スタックの多くの部分が変更されても、検証インターフェースが同じままであるのは興味深いことです。

