From 4afc7704d59429458567dbe7eae1d584f9a16c13 Mon Sep 17 00:00:00 2001 From: tequ Date: Sun, 26 Mar 2023 13:38:48 +0900 Subject: [PATCH] [JA] update authorized-trustlines --- .../tokens/authorized-trust-lines.ja.md | 74 ++++++++++++------- .../concepts/tokens/authorized-trust-lines.md | 2 +- dactyl-config.yml | 2 +- 3 files changed, 49 insertions(+), 29 deletions(-) diff --git a/content/concepts/tokens/authorized-trust-lines.ja.md b/content/concepts/tokens/authorized-trust-lines.ja.md index 65ba7b9400..4a47a4fa9a 100644 --- a/content/concepts/tokens/authorized-trust-lines.ja.md +++ b/content/concepts/tokens/authorized-trust-lines.ja.md @@ -1,40 +1,45 @@ --- html: authorized-trust-lines.html parent: tokens.html -blurb: 通貨発行者が自己の発行済み通貨を保有できる人を制限できる、Authorized Trust Lineについて説明します。 +blurb: 認可トラストラインとは、トークンを保有できる人を制限するための設定です。 labels: - トークン - セキュリティ --- -# Authorized Trust Lines +# 認可トラストライン -XRP LedgerのAuthorized Trust Lines機能により、通貨イシュアーは自身の(XRP以外の)発行済み通貨を保有できるユーザーを制限できます。これにより、不明なXRP Ledgerアドレスは発行済み通貨を保有できなくなります。Authorized Trust Lines機能は発行済み通貨にのみ適用され、XRPには影響しません。 +XRP Ledgerの認可トラストライン機能により、発行者は、発行者が許可したアカウントのみが保有できるトークンを作成することができます。。認可トラストライン機能はトークンにのみ適用され、XRPには影響しません。 -Authorized Trust Lines機能を使用するには、発行アドレスでRequireAuthフラグを有効にします。その後、発行アドレスは他のアドレスからのトラストラインを承認する[TrustSetトランザクション][]を送信できます。RequireAuthが有効であるときに発行アドレスから発行された資金を他のアドレスが保有できるのは、発行アドレスへのトラストラインが承認されている場合だけです。 +認可トラストライン機能を使用するには、発行アドレスで**RequireAuth**フラグを有効にします。その後、他のアカウントは、あなたがそのアカウントのトラストラインをあなたの発行アカウントに承認した場合にのみ、あなたが発行したトークンを保持することができます。 -トラストラインを承認するトランザクションには発行アドレスによる署名が必要ですが、これにより発行アドレスが危険にさらされる可能性が高くなります。RequireAuthが有効であるXRP Ledgerへの資金の送金プロセスは次のようになります。 +発行アドレスから[TrustSetトランザクション][]を送信し、自分のアカウントと認可するアカウントとの間のトラストラインを設定することで、トラストラインを認可することができます。トラストラインを認可した後、その認可を取り消すことはできません。(ただし、必要に応じてトラストラインを[凍結](freezes.html)することは可能です)。 -1. 発行ゲートウェイがその発行アドレスを顧客に公開します。 -2. 顧客のXRP Ledgerアドレスからゲートウェイの発行アドレスへのトラストラインを作成するために顧客は[TrustSetトランザクション][]を送信します。これは、ゲートウェイが発行した特定通貨を特定の限度額まで保有することを顧客が望んでいることを意味します。 -3. ゲートウェイの発行アドレスは、顧客のトラストラインを承認するTrustSetトランザクションを送信します。 +トラストラインを認可するためのトランザクションは、発行アドレスの署名が必要であり、残念ながらそのアドレスのリスクエクスポージャーが増加することを意味します。 -**ヒント:** 発行ゲートウェイは、顧客がトラストラインの作成を完了する前に、そのトラストラインを事前に承認できます(ステップ3)。これにより限度額がゼロのトラストラインが作成されます。顧客のTrustSetトランザクション(ステップ2)により、事前承認されたトラストラインに限度額が設定されます。_([TrustSetAuth Amendment][]が必要です。)_ +**注意:** Require Authを有効にできるのは、アカウントにトラストラインがなく、XRP LedgerにOffersがない場合だけなので、トークンの発行前に使用するかどうかを決定する必要があります。 -## RequireAuth設定 +## ステーブルコインの発行 -`RequireAuth`設定をすることで、発行アドレスが当該通貨に関してその取引相手とのトラストラインを具体的に承認している場合を除き、すべての取引相手はアドレスから発行された残高を保有できなくなります。 +XRP Ledger上のステーブルコインと認可トラストラインの使用により、新規顧客の獲得プロセスは以下のようなものになります。 -用心として、発行ゲートウェイが[運用アドレスとスタンバイアドレス](issuing-and-operational-addresses.html)に対して`RequireAuth`を常に有効にし、これらのアドレスへのトラストラインを一切承認しないことが推奨されます。これにより、運用アドレスとスタンバイアドレスがXRP Ledgerで誤って通貨を発行することを防止できます。これは純粋な予防措置であり、発行アドレスにより作成された発行済み通貨の残高を、これらのアドレスが意図したとおりに送金することを阻止するものではありません。 +1. 顧客は、ステーブルコイン発行会社のシステムに登録し、身元を証明する情報(「Know Your Customer」(KYC)情報とも呼ばれる)を送信します。 +2. 顧客とステーブルコイン発行者は、お互いのXRP Ledgerアドレスを提示し合います。 +3. 顧客は[TrustSetトランザクション][]を送信し、発行者のアドレスにトラストラインを作成し、正のリミットを設定します。 +4. 発行者はTrustSetトランザクションを送信し、顧客のトラストラインを認可します。 -Authorized Trust Lines機能を使用するには、イシュアーがその発行アドレスの`RequireAuth`も有効にする必要もあります。その後、発行アドレスは顧客からの[各トラストラインを承認する`TrustSet`トランザクションを送信する](#トラストラインの承認)必要があります。 +**ヒント:** 2つのTrustSetトランザクション(ステップ3および4)は、どちらの順序で発生しても構いません。発行者がトラストラインを先に認可した場合、これにより限度額が0に設定されたトラストラインが作成され、顧客のTrustSetトランザクションは、事前に認可されたトラストラインの限度額を設定することになります。([TrustSetAuth amendment][]によって追加されました。)_ +## 注意事項 -**注意:** アカウントが`RequireAuth`を有効にできるのは、アカウントがトラストラインを所有しておらず、またXRP Ledgerにオファーがない場合に限られます。したがってXRP Ledgerで取引を開始する前に、この設定を使用するかどうかを決定しておく必要があります。 +認可トラストラインを使用するつもりがない場合でも、[運用アカウントと予備アカウント](issuing-and-operational-addresses.html)のRequire Auth設定を有効にし、これらのアカウントにトラストラインを認可させないようにすることができます。これは、これらのアカウントが誤ってトークンを発行することを防止します(たとえば、ユーザーが誤って間違ったアドレスをトラストしてしまった場合など)。これはあくまで予防措置であり、運用アカウントと予備アカウントが意図したとおりに _発行者の_ トークンを転送することを止めるものではありません。 + +## 技術情報 + ### RequireAuthの有効化 -ローカルでホストされている`rippled`の[submitメソッド][]を使用して、RequireAuthフラグを有効にする[AccountSetトランザクション][]を送信する例を以下に示します。(このメソッドは、アドレスが発行アドレス、運用アドレス、スタンバイアドレスのいずれであっても同様に機能します。) +以下は、ローカルでホストされている`rippled`の[submitメソッド][]を使って、`asfRequireAuth`フラグを使ってRequire Authを有効にする[AccountSetトランザクション][]を送信する例です。(このメソッドは、アドレスが発行アドレス、運用アドレス、スタンバイアドレスのいずれであっても同様に機能します。) -要求: +リクエスト: ```json POST http://localhost:5005/ @@ -42,7 +47,7 @@ POST http://localhost:5005/ "method": "submit", "params": [ { - "secret": "sn3nxiW7v8KXzPzAqzyHXbSSKNuN9", + "secret": "s████████████████████████████", "tx_json": { "Account": "rUpy3eEg8rqjqfUoLeBnZkscbKbFsKXC3v", "Fee": "15000", @@ -62,17 +67,17 @@ POST http://localhost:5005/ アカウントのRequireAuth設定の有効化の状態を確認するには、[account_infoメソッド][]を使用してアカウントを調べます。`Flags`フィールド(`result.account_data`オブジェクト)の値を、[AccountRootレジャーオブジェクトのビット単位フラグ](accountroot.html)と比較します。 -`Flags`値と`lsfRequireAuth`フラグ値(0x00040000)のビット単位のANDの結果がゼロ以外の場合、アカウントではRequireAuthが有効になっています。結果がゼロの場合、アカウントではRequireAuthが無効になっています。 +`Flags`値と`lsfRequireAuth`フラグ値(`0x00040000`)のビット単位のANDの結果がゼロ以外の場合、アカウントではRequireAuthが有効になっています。結果がゼロの場合、アカウントではRequireAuthが無効になっています。 -## トラストラインの承認 +## トラストラインの認可 -Authorized Trust Lines機能を使用している場合、他のアカウントからのトラストラインを最初に承認しなければ、これらの他のアカウントはあなたが発行する残高を保有できません。複数の通貨を発行する場合には、各通貨のトラストラインを個別に承認する必要があります。 +認可トラストライン機能を使用している場合、他のアカウントからのトラストラインを認可しなければ、これらの他のアカウントはあなたが発行する残高を保有できません。複数のトークンを発行する場合には、各通貨のトラストラインを個別に認可する必要があります。 -トラストラインを承認するには、`LimitAmount`の`issuer`として信頼するユーザーを指定して、発行アドレスから[TrustSetトランザクション][]を送信します。`value`(信頼する額)を**0**のままにし、トランザクションの[tfSetfAuth](trustset.html#trustsetのフラグ)フラグを有効にします。 +トラストラインを認可するには、`LimitAmount`の`issuer`として信頼するユーザーを指定して、発行アドレスから[TrustSetトランザクション][]を送信します。`value`(信頼する額)を**0**のままにし、トランザクションの[tfSetfAuth](trustset.html#trustsetのフラグ)フラグを有効にします。 -ローカルでホストされている`rippled`の[submitメソッド][]を使用して、顧客アドレス(rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn)が発行アドレス(rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW)からのUSDのイシュアンスを保有することを承認するTrustSetトランザクションを送信する例を以下に示します。 +以下は、ローカルでホストされている`rippled`の[submitメソッド][]を使用して、顧客アドレス`rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn`がアドレス`rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW`で発行したUSDを持つことを認可するTrustSetトランザクションを送信する例です。 -要求: +リクエスト: ```json POST http://localhost:8088/ @@ -80,7 +85,7 @@ POST http://localhost:8088/ "method": "submit", "params": [ { - "secret": "sn3nxiW7v8KXzPzAqzyHXbSSKNuN9", + "secret": "s████████████████████████████", "tx_json": { "Account": "rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW", "Fee": "15000", @@ -100,11 +105,26 @@ POST http://localhost:8088/ {% include '_snippets/secret-key-warning.md' %} -## トラストラインの承認状況の確認 +## トラストラインの認可状況の確認 -トラストラインの承認状況を確認するには、[account_linesメソッド][]を使用してトラストラインを調べます。要求の`account`フィールドに顧客のアドレスを指定し、`peer`フィールドにイシュアーのアドレスを指定します。 +トラストラインの認可状況を確認するには、[account_linesメソッド][]を使用してトラストラインを調べます。レスポンスの`account`フィールドに顧客のアドレスを指定し、`peer`フィールドに発行者のアドレスを指定します。 -応答の`result.lines`配列で、必要とする通貨のトラストラインを表している`currency`フィールドを持つオブジェクトを見つけます。そのオブジェクトの`peer_authorized`フィールドに値`true`が設定されている場合は、イシュアー(要求の`peer`フィールドとして使用したアドレス)によりそのトラストラインが承認されています。 +応答の`result.lines`配列で、必要とする通貨のトラストラインを表している`currency`フィールドを持つオブジェクトを見つけます。そのオブジェクトの`peer_authorized`フィールドに値`true`が設定されている場合は、発行者(レスポンスの`peer`フィールドとして使用したアドレス)によりそのトラストラインが承認されています。 + +## 関連項目 + +- **コンセプト:** + - [Deposit Authorization](depositauth.html) + - [トークンの凍結](freezes.html) +- **チュートリアル:** + - [ステーブルコインを発行する](become-an-xrp-ledger-gateway.html) +- **リファレンス:** + - [account_linesメソッド][] + - [account_infoメソッド][] + - [AccountSetトランザクション][] + - [TrustSetトランザクション][] + - [AccountRootフラグ](accountroot.html#accountrootのフラグ) + - [RippleState (トラストライン) フラグ](ripplestate.html#ripplestateのフラグ) {% include '_snippets/rippled-api-links.md' %} diff --git a/content/concepts/tokens/authorized-trust-lines.md b/content/concepts/tokens/authorized-trust-lines.md index 409ea1ae28..47cb76e911 100644 --- a/content/concepts/tokens/authorized-trust-lines.md +++ b/content/concepts/tokens/authorized-trust-lines.md @@ -121,7 +121,7 @@ In the response's `result.lines` array, find the object whose `currency` field i - [Deposit Authorization](depositauth.html) - [Freezing Issued Currencies](freezes.html) - **Tutorials:** - - [Become an XRP Ledger Gateway](become-an-xrp-ledger-gateway.html) + - [Become a Stablecoin Issuer](become-an-xrp-ledger-gateway.html) - **References:** - [account_lines method][] - [account_info method][] diff --git a/dactyl-config.yml b/dactyl-config.yml index 30f482c29c..34205c2e18 100644 --- a/dactyl-config.yml +++ b/dactyl-config.yml @@ -154,7 +154,7 @@ targets: # Fix links from untranslated issue-a-fungible-token.html "xrp-ledger-toml.html#account-verification": "xrp-ledger-toml.html#アカウント検証" "offers.html#offers-and-trust": "offers.html#オファーとトラスト" - "authorized-trust-lines.html#authorizing-trust-lines": "authorized-trust-lines.html#トラストラインの承認" + "authorized-trust-lines.html#authorizing-trust-lines": "authorized-trust-lines.html#トラストラインの認可" # Fix links from untranslated freeze tutorials: "basic-data-types.html#account-sequence": "basic-data-types.html#アカウントシーケンス" "accountset.html#accountset-flags": "accountset.html#accountsetのフラグ"