LoginSignup
6
0

More than 5 years have passed since last update.

カタパルトのCowでトランザクション手数料を設定する

Posted at

はじめに

カタパルトのCowが出ました。どうやら、手数料の設定ができるようになったみたいです。

手数料設定

minFeeMultiplier = 0

やってみる

設定

最低手数料積?は100にしてみます。

minFeeMultiplier = 100

まず、使用するアカウントの残高を見てみます。

初期の残高は、[2811359534,963522852][1004000100,0]あります。

image.png

では、トランザクションを送信していこうと思います。

手数料なし

はじめは、手数料なし。送金金額は1000000

image.png

送れませんでした。

image.png

ノードのコンソールには、このようなログが記録されていました。

api-node-0_1              | 2019-02-22 00:47:01.007738 0x00007ff396fed700: <info> (chain::UtUpdater.cpp@144) dropping transaction 4BD3CC536CCECC8FCA9C2275844C136F454B9FD75464D5C12711DE04060F0409 with max fee 0 because min fee is 16500 
peer-node-1_1             | 2019-02-22 00:47:01.218005 0x00007fc6dcff1700: <info> (chain::UtUpdater.cpp@144) dropping transaction 4BD3CC536CCECC8FCA9C2275844C136F454B9FD75464D5C12711DE04060F0409 with max fee 0 because min fee is 16500 
peer-node-0_1             | 2019-02-22 00:47:01.370277 0x00007f8fe3ff7700: <info> (chain::UtUpdater.cpp@144) dropping transaction 4BD3CC536CCECC8FCA9C2275844C136F454B9FD75464D5C12711DE04060F0409 with max fee 0 because min fee is 16500 

手数料は最低16500でないとだめそうです。

手数料付き

次は、手数料1000000で送ってみます。

image.png

送れました。

image.png

"maxFee": "1000000"と書いてあります。

残高はどうなったでしょうか

image.png

[1004000100,0]から、[1002000200,0]になりました。

1999900少なくなりました。

送金金額を差し引くと、999900引かれたことになります。指定した手数料より少し小さいですね。

手数料の計算

以上の出来事から手数料の計算について推測します(ソースを見ればわかると思うけど、見かたがわからない)。

  • 設定した手数料を超えない最大のトランザクションサイズ倍数が引かれる。
  • 最低手数料は、トランザクションサイズとminFeeMultiplierの積である。

まず、今回送信したトランスファートランザクションの先頭4バイトは、A5000000となっており、これはサイズが165バイトであることを意味します。

なので、手数料0で送ると16500以上出せと怒られたのだと思います。

また、999900は、165 * 6060なので、たぶん、トランザクションサイズに関係しているのだと思いました。

ハーベスト

手数料として引かれた金額は、ブロック作成者にいっているのでしょうか。見てみます。

まえ

image.png

あと

image.png

[2811359534,963522852]が、[3969189972,95248]から[3970189872,95248]に増えました。

差分はしっかりと999900になってます。

おわりに

この仕様はこれからまた変わっていくと思います。

6
0
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
6
0