2019年09月17日

白書:次世代のスマート契約と分散アプリケーション・プラットフォーム(54)


There is another factor disincentivizing large block sizes in Bitcoin: blocks that are large will take longer to propagate, and thus have a higher probability of becoming stales. In Ethereum, highly gas-consuming blocks can also take longer to propagate both because they are physically larger and because they take longer to process the transaction state transitions to validate. This delay disincentive is a significant consideration in Bitcoin, but less so in Ethereum because of the GHOST protocol; hence, relying on regulated block limits provides a more stable baseline. 
ビットコインの大きいブロック規模に 動機付けにならない因数があります。:大きいブロックが伝搬するのにもっと長い時間を要して、そしてそれで古くなるより高い確率を持つでしょう。 イーサリアムで、大いにガスを消費するブロックが伝搬するために同じくもっと長くかかる可能性があります。なぜなら、それらが物理的により大きく、そしてそれらが検証すべき取引き状態遷移を処理するためにもっと長くかかるからです。 この遅延で動機付けにならないものはビットコインで 重要な配慮です が、GHOST プロトコールのためにイーサリアムで、それほどではありません。;それ故、規律正しいブロック限界に頼ることはいっそう安定したベースラインを提供します。 

Computation And Turing-Completeness 
電算とチューリング - 完全性 

An important note is that the Ethereum virtual machine is Turing-complete; this means that EVM code can encode any computation that can be conceivably carried out, including infinite loops. EVM code allows looping in two ways. First, there is a  JUMP   instruction that allows the program to jump back to a previous spot in the code, and a  JUMPI   instruction to do conditional jumping, allowing for statements like  while  x  <  27:  x  =  x  *  2  . Second, contracts can call other contracts, potentially allowing for looping through recursion. This naturally leads to a problem: can malicious users essentially shut miners and full nodes down by forcing them to enter into an infinite loop? The issue arises because of a problem in computer science known as the halting problem: there is no way to tell, in the general case, whether or not a given program will ever halt. 
ある重要な注釈は、 イーサリアム仮想マシンがチューリング - 完全であるということです;これは、EVMコードが、無限ループを含めて、考えられるところでは行なわれ得るどんな計算でもコード化することができることを意味します。 EVMコードが2つの方法でループを可能にします。 第1にに、プログラムがコードの前のスポットに戻るジャンプを可能にするJUMP命令と x  <  27:  x  =  x  *  2  のような命令文考慮に入れて条件付きのジャンプをするべき JUMPI 命令があります。 第2に、契約が、潜在的に反復によりループすることを考慮に入れて、他の契約を呼ぶことができます。 これは当然問題に導かれます:悪意があるユーザーが、それらに無限ループに入ることを強いることによって、本質的に鉱夫とノード全体をシャットダウンすることができますか? 問題は停止問題として知られているコンピュータサイエンスの問題のために生じます:一般的なケースで、所定のプログラムがいつか止まるであろうかどうか分かる方法がありません。 

=====================================================================
 

人気ブログランキングへ人気ブログランキングへ

=====================================================================

posted by 平成アフィリエイトへの挑戦 at 10:37| 千葉 ☀| Comment(0) | イーサリアム | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス: [必須入力]

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。