# 技術に関するよくある質問

## バリデータ（検証者）とユニークノードリスト

<!--#{ using h4s for questions to keep them out of the right side nav (too cluttered when they display) and to provide appropriate text size for questions. #}-->
#### トランザクション（取引）のバリデータはどのようなサービスを提供するのですか?

バリデータは、トランザクションがプロトコル要件を満たしていて、結果として「有効」であるかどうかを判断します。バリデータが提供する独自の機能は、順序付けされた単位にトランザクションをグループ化し、二重支払いを防ぐことを目的としてその順序に同意することです。

コンセンサスプロセスの詳細は、[コンセンサス](consensus.html)と[Ripple Labs Tech Talk: Understanding Consensus](https://ripple.com/insights/ripple-labs-tech-talk-consensus-within-the-ripple-protocol/)を参照してください。


#### バリデータの実行にはいくらかかりますか?

バリデータを実行するのに手数料やXRPは必要ありません。メールサーバーを稼働するための電気代相当です。


#### ユニークノードリスト（UNL）とは何ですか?

特定の参加者が、互いに共謀して自身をだますような企てを行わないものとして信頼するトランザクションバリデータから構成されるリストです。


#### どのUNLを選択すればよいですか?

誰でもバリデータになりえるため、信頼できるセットを選択する責任はネットワーク参加者側にあります。現在、Rippleではデフォルトかつ推奨するリストを提供しています。これは、Rippleおよび第三者によって運用されているバリデータの履歴を見て、弊社が更新しているものです。最終的には、バリデータの品質に関して公表されているデータに基づいてネットワークの参加者自身が独自にリストを選択できるようになることで、Ripple自体がこのプロセスから身を引くようになると意図しています。


#### RippleがそのUNLの採用を推奨しているなら、それは集中型システムを形成することにならないのですか?

いいえ。XRP Ledgerネットワークはオプトイン方式です。各参加者は直接的または間接的に自身のUNLを選択することができます。万が一、Rippleが活動を停止したり、Rippleが悪意を持って行動したりした場合、参加者は自身のUNLを変更してXRP Ledgerを引き続き使用することができます。


#### Rippleによって運用されないバリデータにとってインセンティブとなるものは何ですか?

バリデータを運用することの主なインセンティブは、ネットワークの安定した運用と合理的な進化を維持し、保護することです。XRP Ledgerの進化はバリデータによって決定されるため、XRP Ledgerを使用するかこれに依存するビジネスには、ネットワークの信頼性と安定性が確保されるというインセンティブが内在することになります。

XRP Ledgerサーバーを運用してネットワークに参加している場合、バリデータを運用するための費用や労力は最小限に抑えられます。つまり、Bitcoinにおけるマイニング報酬といった、追加のインセンティブは不要であるということです。Rippleでは、バリデータの運用報酬としてXRPを支払うことはしないため、そのようなインセンティブによってバリデータの行動が歪められることはありません。


#### 金融機関は、特定の制度上の基準や要件を満たすのに役立つトランザクションバリデータを設定できますか?

いいえ。トランザクション選択のためにカスタマイズされたバリデータポリシーを金融機関が設定することはできません。バリデータは既存のプロトコルに従う、従わないのいずれかを選択します。ソフトウェアは、プロトコルルールに従わない場合は機能しません。そのため、金融機関が社内の専門知識なしにカスタム実装を求めることはお勧めできません。


#### ネットワーク内の20%を超えるノードが過半数と一致しない場合はどうなりますか? レジャー（台帳）の最終バージョンはどのように選択されますか?

コンセンサスを目的に新しく作られたUNLリストで継続するために、ネットワークが一時的に停止して再構成される場合があります。この一時的な処理の遅れは、むしろ二重支出のリスクを回避します。

レジャーの正式な最終バージョンを決定する過程で、一時的な内部バージョンが複数存在する可能性があります。分散型システムでは、すべてのノードが同じ順序でトランザクションを受け取るわけではないため、そのような内部バージョンが発生します。従来のBitcoinにおける類似の振る舞いとしては、2つのブロックがほぼ同時にマイニングされたために2つのサーバーがそれぞれ異なる最長チェーンを参照してしまう状況があります。

しかし、正式なレジャーバージョンは常に1つしかありません。他のバージョンは無関係で、何の影響も与えません。


#### XRP Ledgerでは正式なバリデータのオンボーディングプロセスを使用していますか?

いいえ。XRP Ledgerは、中央権限のないシステムであるため、正式なバリデータのオンボーディングプロセスのようなものは存在しません。

推奨事項やベストプラクティスについては、[バリデータとしての`rippled`の実行](run-rippled-as-a-validator.html)を参照してください。


## XRPの役割


#### RippleはなぜXRPを多く保有しているのですか?

RippleはXRPを保有することで、XRP Ledgerを可能な限り有用なものにするインセンティブを持つことになります。XRPは、Ledgerのネイティブ資産として存在し、スパム対策や、ユーザーにとって有益な場合にブリッジ通貨として使われます。それ以外の場合、トランザクションでXRPを使用するかどうかは完全にユーザーの自由です。


#### XRP Ledgerでは大量のトランザクションが行われている場合にどう対応しますか?

XRP Ledgerは、スパム対策として、需要に基づいてトランザクションコストを動的に設定するように設計されています。潜在的なXRPの操作による影響は、時価総額とトランザクション量の増加に伴うネットワークサイズの拡大によって最小限に抑えられます。


#### マネーロンダリングや疑わしい経済活動に対して、Rippleではどのような標準操作手順が実施されていますか?

Rippleは、XRP Ledgerネットワーク全体でAML(Anti-Money Laundering)フラグを監視および報告するとともに、必要に応じてFinCEN(Financial Crimes Enforcement Network )に疑わしい活動を報告することをコミットしています。


## セキュリティー上の懸念


#### サードパーティーにより提供されたコードをマスターコードベースに受け入れる前に、Rippleではどのような確認プロセスを行っていますか?

コード提供プロセスは、開発者がRippleの`rippled`リポジトリーに対してプルリクエストを出すことから始まります。このプルリクエストがあると、自動化された単体テストと統合テスト、およびそのプルリクエストによって変更されるコードについて専門知識を持つ開発者によりコードレビューが行われます。

プルリクエストが自動テストに合格し、レビュー担当者から承認されると、[リポジトリの信頼できる保守担当者](https://opensource.guide/best-practices/)によって、次のベータ版に含められるようにステージングされます。

#### RippleはXRP LedgerまたはXRP Ledgerネットワークを所有または管理していますか?

いいえ、RippleはXRP LedgerとXRP Ledgerネットワークを所有も管理もしていません。

Rippleは、コアとなるXRP Ledgerサーバー（[`rippled`](https://github.com/ripple/rippled)）のリファレンス実装を公開し、オープンソースコードベースに貢献しているエンジニアチームを雇用しています。Rippleはまた、利用可能なソフトウェアのプリコンパイル済みバイナリーパッケージも定期的に発行しています。必要に応じて、誰でも自由に[ソースからソフトウェアをダウンロードしてコンパイル](install-rippled.html)できます。

XRP Ledgerと通信するためにRippleのXRP Ledgerソフトウェアを使用する必要はありません。`rippled`はオープンソースソフトウェアであり、[ISCライセンス](https://github.com/ripple/rippled/blob/develop/LICENSE)の条件に従う限り、誰でも使用、拡張、および変更できます。ISCライセンスは、ソフトウェアの拡張方法と適応方法を厳密に制限する他のオープンソースライセンスと比較して非常に柔軟です。

#### Rippleでは、ソフトウェアを安全にダウンロードする方法を提供していますか?

`rippled`ソースコードは<https://github.com/ripple/rippled>から入手できます。ここでは、`master`、`release`、および`develop`の各ブランチのヒントに、`rippled`開発者が署名したバージョン設定コミットが常に含まれています。XRP Ledgerは、CentOS、RedHat Enterprise Linux、Fedora、Ubuntu、およびDebian Linux用のビルド済みバイナリーパッケージも提供します。これらのパッケージは不正開封防止が施されており、その真正性を確認できるようにRippleによってデジタル署名されています。最後に、リリースノートは安全なWebサイトで公開されており、リポジトリーのコミットIDと公開されているパッケージの暗号ハッシュ値が含まれています。


#### Rippleは検証用のコードベースとユーザーソフトウェア用のコードベースを区別していますか?

はい。ripple-libを含むXRP Ledger用のクライアントソフトウェアには、`rippled`（検証）とは異なるコードベースおよびリポジトリーがあります。


## 関連項目

- [`rippled`コードベース](https://github.com/ripple/rippled)
- ユーザーソフトウェアのコードベース: 
      - [ripple-lib](https://github.com/ripple/ripple-lib)
      - [ripplecharts-frontend](https://github.com/ripple/ripplecharts-frontend)
- [Ripple GitHub Organization](https://github.com/ripple/)
