トランザクションの優先度

試しにマイニングのプログラミング組みたいな~ということで、マイニング周りをマイニングっと。

トランザクションの優先度

マイニングする際、トランザクションの優先度

Priority = Sum( Value of input * Input Age)/Transaction Size

新しく小さいvalueインプット(Value of Input)をもつトランザクションよりも古くて大きいvalueインプットが優先

トランザクション年齢(Input Age)は、UTXOが含まれているブロックがブロックチェーンの何ブロック「深いか」

優先度が高いトランザクション(High Priority transaction)

優先度が高いトランザクションの定義は、下の式の優先度が57,600,000よりも大きいものだそう

High Priority > 100,000,000 satoshis * 144 blocks / 250 bytes = 57,600,000

この基準値は、 valueが1bitcoin = 1億satoshis

で、

年齢が

1日= 144ブロック (10分ごとにブロックが作られるので、60分×24時間/10分)

データサイズは、

250バイト

に相当。

ブロックのトランザクションの最初の50KBは、このHigh Priority transactionのために確保。 ここには、(古い)手数料なしのトランザクションも含む。

High Priority transactionの後は、最低トランザクション手数料を持つもので、優先度は、トランザクション手数料をトランザクションのデータサイズで割った値が高い順で埋められるっと。

ここでトランザクション手数料と優先度が関係するのね。

ともかく、そうやってトランザクションをプールしておくと。