Skip to content

Commit

Permalink
Merge pull request #10570 from ethereum/june27Japanese
Browse files Browse the repository at this point in the history
Update Japanese (ja) Use Ethereum, Docs Proof-of-work, and Docs Proof-of-stake, and add translated images
  • Loading branch information
corwintines authored Jun 28, 2023
2 parents 83b20de + 1c31c3d commit 04ce0b4
Show file tree
Hide file tree
Showing 23 changed files with 2,157 additions and 85 deletions.
2 changes: 1 addition & 1 deletion src/content/translations/ja/dao/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ _主にプロトコルや分散型アプリ(Dapp)の分散型開発や分散型

[DXdao](https://DXdao.eth.link) - DXdao は、2019 年から分散型プロトコルやアプリケーションを構築し統治するグローバル・ソブリン団体です。 レピュテーションに基づくガバナンスとホログラフィック・コンセンサスを活用して資金を調整・管理しています。つまり、誰かが金銭的な手段を使って、DXdao の今後に影響をおよぼすことができません。

## 分散型自律組織(DAO)に参加/始める {#join-start-a-dao}
## DAO に参加する/DAO を立ち上げる {#join-start-a-dao}

### 分散型自律組織(DAO)への参加 {#join-a-dao}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ lang: ja

#### ブロックの作成 {#pow-block-creation}

バリデータがブロックを作成します。 各スロットでランダムに 1 つのバリデータがブロック提案者に選ばれます。 コンセンサスクライアントは、ペアの実行クライアントから「実行ペイロード」としてトランザクションの束 (バンドル) を要求します。 これをコンセンサスデータで包んでブロックを形成し、イーサリアムのネットワーク上の他のノードに送ります。 このブロック生成により、ETH で報酬を受け取ることができます。 1 つのスロットに複数の候補ブロックが存在する場合や、ノードが異なる時間にブロックの情報を得た場合、フォーク・チョイス・アルゴリズムがアテステーションの重みが最も大きいチェーンを形成するブロックを選択します(ここでの重みとは、アテステーションしたバリデータの数を彼らが保有している ETH 残高で加重したもの)
マイナーは、処理済みのトランザクションで構成される新規ブロックを作成するために競争します。 この競争の勝者は、新規ブロックをネットワークの他のユーザーと共有し、新たにミントされたイーサを獲得します。 数学的パズルを最も速く解いたユーザーが勝者になります。 これにより、現行のブロックとその前のブロックとの間に暗号的なリンクが発生します。 このパズルを解く作業こそ、「プルーフ・オブ・ワーク」なのです。 次に、マイニングに最も多くの作業を要した一連のブロックを選択するというフォーク選択ルールに従って、正規チェーンが決定されます

#### セキュリティ {#pow-security}

Expand All @@ -50,7 +50,7 @@ lang: ja

#### ブロックの作成 {#pos-block-creation}

プルーフ・オブ・ステークは、システムに参加するために ETH をステーキングしたバリデータによって行われます。 ランダムに選択された 1 つのバリデータが、新しいブロックを作成し、ネットワークと共有し、報酬を獲得します。 苛烈な計算を行うのではなく、ネットワークに ETH をステーキングが必要になり、 これは健全なネットワークの行動を奨励するものです
ブロックは、バリデータが作成します。 各スロットにつき 1 名のバリデータが、ブロック提案者として無作為に選出されます。 バリデータのコンセンサス・クライアントは、対応する実行クライアントに対して、バンドル化されたトランザクションを「実行ペイロード」として要求します。 次に、このバンドルをコンセンサス・データでラップしてブロックを生成し、イーサリアム・ネットワークの他のノードに送信します。 このブロック生成作業に対しては、イーサによる報酬が発生します。 特定のスロットにつき複数の候補ブロックが存在したり、各ノードがブロックについて情報を得た時間が異なっていたなどのまれなケースでは、フォーク選択アルゴリズムにより、アテステーションの加重が最大になるチェーンを形成できるブロックが選択されます(この加重は、アテステーションを行うバリデータの数と、彼らのイーサ残高により決定されます)

#### セキュリティ {#pos-security}

Expand Down

Large diffs are not rendered by default.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
---
title: アテステーション
description: イーサリアムのプルーフ・オブ・ステークにおけるアテステーションについての説明
lang: ja
---

バリデータは、各エポックにおいて、アテステーションを作成、署名し、ブロードキャストする必要があります。 このページでは、アテステーションがどのような内容を持つか、およびどのように処理され、コンセンサスを実現するクライアント間でどのようにやりとりされるかについての概要を説明します。

## アテステーションとは何か? {#what-is-an-attestation}

バリデータは、[エポック](/glossary/#epoch) (6.4 分) ごとに、ネットワークに対するアテステーションを提案します。 アテステーションは、当該エポックにおける特定のスロットのみを対象とします。 アテステーションとは、チェーンに対するバリデータの意見を支持する投票を行うことです。具体的には、最新の正当化されたブロックと、現在のエポックにおける最初のブロック(それぞれ、`ソース``ターゲット`のチェックポイントと呼ぶ)を対象とします。 この情報は、参加するすべてのバリデータを対象として結合されるため、ネットワークがブロックチェーンの状態についてコンセンサスに達することが可能になります。

アテステーションには、以下の構成要素が含まれます:

- `aggregation_bits`:バリデータ委員会における当該バリデータのインデックスにポジションがマッピングされたバリデータのビットリスト。この値(0 または 1)は、当該バリデータが当該`データ`を署名したか否か(つまり、当該バリデータがアクティブであり、ブロック提案者に同意するか否か)を示します。
- `data`:当該アテステーションに関する詳細情報(以下の定義を参照)。
- `signature`:個々のバリデータの署名を集約した BLS 署名。

アテステーションを行うバリデータはまず、`データ<./code>を構築する必要があります。 この<code>データ`には、以下の情報が含まれます:

- `slot`:当該のアテステーションが参照するスロット番号。
- `index`:特定のスロットにおいて、当該バリデータが所属する委員会を特定する番号。
- `beacon_block_root`:当該バリデータが、(フォーク選択アルゴリズムを適用した結果として)チェーンの先頭にあると認識するブロックのルートハッシュ。
- `source`:ファイナリティ投票の一部であり、当該バリデータがどのブロックを最も最近正当化されたブロックとして認識するかを示す。
- `target`:ファイナリティ投票の一部であり、当該バリデータがどのブロックを現在のエポックにおける最初のブロックとして認識するかを示します。

`data`が構築されると、バリデータは、自分が参加したことを示すために、自身のバリデータ・インデックスに対応した`aggregation_bits`のビットを 0 から 1 に変更することができます。

バリデータは最後に、このアテステーションに署名し、ネットワークに送信します。

### アテステーションの集約 {#aggregated-attestation}

このデータを各バリデータに提供する場合、ネットワークに対する負担が大きくなります。 このため、各バリデータからのアテステーションは、より広汎に送信する前にサブネット内で集約されます。 具体的には、各バリデータの署名を集約することで、送信されるアテステーションに当該コンセンサスの`データ`と、この`データ`に同意するすべてのバリデータの署名を結合した単一の署名が含まれるようにします。 これは、`aggregation_bits`を用いて確認することができます。aggregation_bits は、各バリデータが所属する委員会におけるインデックス(バリデータの ID は`データ`に含まれています)であり、個々の署名に対してクエリを実行するために使用できるからです。

エポックごとに、各サブネットから 1 名のバリデータが`アグリゲータ`に選定されます。 アグリゲータは、ゴシップネットワーク上において、自身のアテステーションと同等の`データ`を持つすべてのアテステーションを収集します。 データが一致するアテステーションを送信したすべてのユーザーは、`aggregatoin_bits`に記録されます。 アグリゲータは次に、この集約されたアテステーションをより広汎なネットワークに送信します。

バリデータがブロック提案者に選定されると、当該の新規ブロックにおける最新のスロットまで、各サブネットからのアテステーションを集約して、パッケージ化します。

### アテステーション追加のライフサイクル {#attestation-inclusion-lifecycle}

1. 生成
2. 伝播
3. 集約
4. 伝播
5. 追加

以下の図は、アテステーションのライフサイクルの概略を示したものです。

![アテステーションのライフサイクル](./attestation_schematic.png)

## 報酬 {#rewards}

バリデータは、アテステーションを提出することで報酬を得ます。 アテステーション報酬は、`ベース報酬`および`追加の遅延`という 2 つの変数により決定されます。 報酬は、追加の遅延が 1 に等しい場合に最も高額になります。

`アテステーション報酬=7/8 x ベース報酬 x (1/追加の遅延)`

### ベース報酬 {#base-reward}

ベース報酬は、アテステーションを行うバリデータの数と、彼らの有効なステーク済みイーサ残高により計算されます。

`base reward = validator effective balance x 2^6 / SQRT(Effective balance of all active validators)`

#### 追加の遅延 {#inclusion-delay}

各バリデータがチェーンの先頭(`ブロック n`)で投票した時点では、`ブロック n+1`はまだ提案されていません。 このため、追加されるアテステーションは当然**1 ブロック後**になり、`ブロック n`がチェーンの先頭である時点で投票したすべてのバリデータのアテステーションは`ブロック n+1`に含まれることになるため、**追加の遅延**は「1」になります。 アテステーション報酬は、ベース報酬に追加遅延の値の逆数を掛け合わせて算出されるため、追加の遅延が「2」スロットに倍増した場合、アテステーション報酬は 2 分の 1 になります。

### アテステーションで発生しうるシナリオ {#attestation-scenarios}

#### 投票を行うバリデータが欠席する場合 {#missing-voting-validator}

バリデータがアテステーションを提出できるのは、最長で 1 エポックの期間です。 エポック 0 でアテステーションを提出しなかった場合、エポック 1 で提出できますが、追加遅延が発生します。

#### アグリゲータが欠席する場合 {#missing-aggregator}

エポックごとに、合計 16 名のアグリゲータが存在します。 さらに、**256 件のエポックを対象とする 2 つのサブネット**を講読するランダムなバリデータが存在し、アグリゲータが欠席する際のバックアップとして機能します。

#### ブロック提案者が欠席する場合 {#missing-block-proposer}

運が良ければ、アグリゲータがブロック提案者になる場合もあります。 ブロック提案者が欠席したためにアテステーションが追加されなかった場合、次のブロック提案者がこの集約済みのアテステーションを継承して、次のブロックに追加します。 ただし、**追加の遅延**の値が 1 増えます。

## 参考文献 {#further-reading}

- [Vitalik のコンセンサス仕様(注釈付)におけるアテステーションの説明](https://github.com/ethereum/annotated-spec/blob/master/phase0/beacon-chain.md#attestationdata)
- [eth2book.info におけるアテステーションの説明](https://eth2book.info/altair/part3/containers/dependencies#attestationdata)

_役に立つコミュニティリソースをご存知の場合は、 このページを編集して追加してください。_
Loading

0 comments on commit 04ce0b4

Please sign in to comment.