Progress Report April 2022

こんにちは、ばくちーです。

今月はinputが多めで、形として見せられるoutputはあまりないです。 最近は、SolidityのEVMに近いオペコードやバイトコードレベルの理解を進めつつあります。一方で、ZKPやノード実装を理解するための学習も始めました。それから、英語を話せるようになるために、発音に重点を置いた勉強を始めました。

今月の音楽

Play Video

今月の記事

ETH Amsterdam mev.day もちろん、YouTubeにもアップロードされている。 まだ見れてないが、興味深い話が聴けることを期待してる。

https://flashbots.notion.site/flashbots/mev-day-836f88806995412dabc1c7bb7ce4e830

Announcing the Winners of the Underhanded Solidity Contest 2022

https://blog.soliditylang.org/2022/04/09/announcing-the-underhanded-contest-winners-2022/

優勝した人が提出したバグのトリックはシンプルなもので、正直関心した。やはり、上にはさらに上がいる。

https://twitter.com/0xbakuchi/status/1513711797597270017?s=20&t=gaAZFRhs6fttHPTI0zpOnQ

参加したバウンティの結果

今月は参加していない.

なぜなら、そこそこ戦えることが分かっているので、お金のために勝てるバウンティを無理に取りに行く必要もないと思った。年度が変わる4月ということもあり、イレギュラーなイベントに時間を取られたので、インプットに専念した。

今月の開発

Idle Finance Perpetual Yield Trancheを使った、YearnのStrategyの開発

先月からの仕事の続き

Idle Finance Best Yieldを使った、YearnのStrategyの開発

先月からの仕事の続き

Idle Finance Best YieldためのAave v3のラッパーコントラクトの開発

https://github.com/Idle-Finance/best-yield-aave-v3/tree/main/src/test

コントラクトのバグの学習

Underhanded solidityの優勝者の真似をして、同じバグがあるコントラクトを書いた。

https://github.com/massun-onibakuchi/smart-contracts-vulns-hacking/tree/main/contracts/EvaluationOrder

オペコード、EVMレベルの理解を進めた

Solidityのコードを書きながら、どのオペコードにコンパイルされるかを想像できるようになれば、ガスの最適化はある程度、自ずとできるようになると思う。

参考になる資料などはこちら

https://www.notion.so/Reading-List-8657ab777b384f96a6e344108393bbc6

ZKSNARKの理解を進めた

  • ZKP とか Arithmetic Circuit → QAPへの変換はVitalikの記事と自分がまとめた記事で理解できるはず。その記事の行間を埋める程度の内容だが、Mediumに記事を公開した

https://twitter.com/0xbakuchi/status/1513352031850811394?s=20&t=scrzsNoeSap5QXrbg-PQ5A

https://medium.com/@0xbakuchi/quadratic-arithmetic-programs-from-zero-to-hero-%E3%82%92%E7%90%86%E8%A7%A3%E3%81%99%E3%82%8B-67afd66c6860

その他

  • Rust

  • プライベートな案件

次のステップ

  • CTF (一旦中断)

  • ZkSyncのコードを理解

  • RustとZk