LoginSignup
1
1

More than 3 years have passed since last update.

マスタリング・イーサリアムを読んでいる

Posted at

日本語版が出ているのを知ったので買って読んでいるけど、意味がわからないところが結構ある。というか6章がつらい。

たとえば6.6の「特別なトランザクション:コントラクト作成」のところ

ゼロアドレスの使用はコントラクトの作成のみを目的としていますが、さまざまなアドレスから支払いを受け取ることがあります。これには2つの説明があります。それは偶然にイーサを損失するのか、意図的なイーサの焼却です。しかし、意図的にイーサを焼却したい場合、ネットワークへの意図を明確にして、代わりに特別に指定された焼却アドレスを使用する必要があります。

ゼロアドレスは意図的なイーサの焼却に使われるが意図的にイーサを焼却したい場合は代わりに特別な焼却アドレスを使用する必要がある…?

原文読んだら
https://github.com/ethereumbook/ethereumbook/blob/develop/06transactions.asciidoc#special-transaction-contract-creation

However, if you want to do an intentional ether burn, you should make your intention clear to the network and use the specially designated burn address instead:

"You should make your intention clear..." だから普通は
「しかし、意図的にイーサを焼却したい場合は、ネットワークへの意図を明確にするために、代わりに特別に指定された焼却アドレスを使用するべきです。」
ぐらいでは。

あと

コントラクト作成のためにゼロアドレスを宛先とする場合でも、常にtoパラメータを指定することをおすすめします。誤ってあなたのイーサを0x0に送信し、それを永久に失うコストが大きすぎるからです。また、gasPriceとgasLimitも指定する必要があります。

これも良くわからない。結局コントラクト作成のトランザクションのtoは0x0なんだから。例えば、コントラクト作成の意図のトランザクションのdataが誤って空だったりすると、to未指定でも0x0指定しても同じ結果になるはず。

これも原文を読むと

It is good practice to always specify a to parameter, even in the case of zero-address contract creation, because the cost of accidentally sending your ether to 0x0 and losing it forever is too great. You should also specify a gasPrice and gasLimit.

なので
「必ずtoパラメータを指定する習慣づけをすることをおすすめします。たとえゼロアドレスのコントラクト作成の場合でもです。なぜなら、誤って0x0にイーサを送付してしまい、それが永久に失われてしまった時のコストが大きすぎるからです。gasPriceとgasLimitも指定するべきです。」

ぐらいかなあ。ようはto省略したりしなかったりしてると間違って0x0に送金しちゃうぞ。ぐらい。またここでもshouldを"必要です"って訳してるし。

こういう風に6章は重要そうだけど何が書いてあるかわからないところがあって、そのたびに原文をあたっているので辛いです。

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