LoginSignup
1
1

More than 5 years have passed since last update.

イーサリアムのブロック構造と合意するアルゴリズム - Qiita ではブロック構造を調べてみたが、下記の2つは疑問でした。

receipts_root: ???
logs_bloom: ???

receipts_root

  • 各トランザクション毎に、トランザクションを実行する時、発生した下記の各種データをレシート(receipt)として記録される。
    • ブロック番号
    • ブロックハッシュ
    • トランザクションハッシュ
    • 使われた gas
    • 該当トランザクションを実行した後、ブロック内に使われたガス
    • 該当トランザクションを生成した時に作られたログ
    • etc
  • ブロックにある全てのトランザクションのレシートを基づいて、マークル木構造を作成し、最終的にrootノードのハッシュ値を receipts_root とする

logs_bloom

  • ブロックチェーンで発生した各種のイベント(普通のトランザクションやコントラクト間でのやり取りなど)をトラッキングできる
  • ログには概ね下記の情報を含めている
    • ログを取っているのアカウントアドレス
    • トランザクションによって実行されるイベントを表すトピック
    • それらのイベントに関連するデータ
  • bloom というのは、ブルームフィルター であり、ある情報を含めているかどうかを効率よく、確率的に判定できる データ構造である
  • これがあるため、ログを検索したい場合、ブロック全体ではなくヘッダー部だけ取得し、この logs_bloom の部分を使って、検索したいキーワードを含めるかどうかを判定できる

参考記事

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1