> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 暗号化とプライバシーの保証

> プライベートトランザクションで公開される情報と暗号化される情報、およびシールドキーペアがプライベート残高を暗号化・復号する仕組みについて説明します。

<a id="private-wallet" />

<a id="shielded-keypair" />

<a id="creation-of-a-private-wallet" />

## プライバシーの保証

プライベートトランザクションの各当事者には、必要な情報だけが表示されます。
この例では、Alice が Bob に支払い、その後 Bob が Charlie に支払います。どちらもプライベート送金です。

<Tabs>
  <Tab title="Default Ring">
    Default Ring は、パーミッションレスな機密リングです。
    送信者と受信者のアドレスはオンチェーンで公開されます。資産と金額は暗号化されます。
    トランザクションを復号できるのは送信者と受信者だけで、それぞれが自身の閲覧キーを使用します。各自が復号できるのは、自身の残高だけです。

    <img src="https://mintcdn.com/helius/ITnDOhn5GRfQ1FQW/images/privacy/who-sees-what-confidential.svg?fit=max&auto=format&n=ITnDOhn5GRfQ1FQW&q=85&s=345de01ce5c5b51451c72f28fb852433" alt="Alice が機密リングで Bob に支払い、その後 Bob が Charlie に支払います。各当事者のビューには、その当事者が復号できる金額が表示されます。アドレスは全員に公開されます。" width="960" height="586" data-path="images/privacy/who-sees-what-confidential.svg" />

    | 当事者 | 見える情報 | 見えない情報 |
    | - | - | - |
    | Alice | Bob への自身の支払い。Bob が Charlie に支払ったこと。 | Bob から Charlie への支払いの資産と金額 |
    | Bob | Alice から自身への支払い。自身から Charlie への支払い。 | Alice の残高 |
    | Charlie | Bob から自身への支払い。Alice が Bob に支払ったこと。 | Alice から Bob への支払いの資産と金額 |
    | RPC と Solana | 送信者と受信者のアドレス、コミットメント、暗号文 | すべての資産と金額 |
  </Tab>

  <Tab title="Custom Rings">
    カスタムリングでは、以下のことが可能です。

    * 機密または匿名として設定する
    * コンプライアンス制御をカスタマイズする
    * そのリングの残高を復号できる監査者を指定する

    <Tabs>
      <Tab title="Confidential Custom Ring">
        送信者と受信者のアドレスはオンチェーンで公開されます。資産と金額は暗号化されます。

        <img src="https://mintcdn.com/helius/ITnDOhn5GRfQ1FQW/images/privacy/who-sees-what-confidential.svg?fit=max&auto=format&n=ITnDOhn5GRfQ1FQW&q=85&s=345de01ce5c5b51451c72f28fb852433" alt="Alice が機密リングで Bob に支払い、その後 Bob が Charlie に支払います。各当事者のビューには、その当事者が復号できる金額が表示されます。アドレスは全員に公開されます。" width="960" height="586" data-path="images/privacy/who-sees-what-confidential.svg" />

        | 当事者 | 見える情報 | 見えない情報 |
        | - | - | - |
        | Alice | Bob への自身の支払い。Bob が Charlie に支払ったこと。 | Bob から Charlie への支払いの資産と金額 |
        | Bob | Alice から自身への支払い。自身から Charlie への支払い。 | Alice の残高 |
        | Charlie | Bob から自身への支払い。Alice が Bob に支払ったこと。 | Alice から Bob への支払いの資産と金額 |
        | リング監査者 | ポリシーで定義されたリングのアクティビティ | リング外のアクティビティ |
        | RPC と Solana | 送信者と受信者のアドレス、コミットメント、暗号文 | すべての資産と金額 |
      </Tab>

      <Tab title="Anonymous Custom Ring">
        リレイヤーがトランザクションを送信します。送信者と受信者はオンチェーンでは表示されません。どのプライベートウォレットが支払いを送信したかを確認できるのは、受信者だけです。

        <img src="https://mintcdn.com/helius/ITnDOhn5GRfQ1FQW/images/privacy/who-sees-what-anonymous.svg?fit=max&auto=format&n=ITnDOhn5GRfQ1FQW&q=85&s=8c2c1ee021abe1117743b0ee1de56363" alt="Alice が匿名リングで Bob に支払い、その後 Bob が Charlie に支払います。各当事者のビューには、自身の取引相手と金額だけが表示されます。" width="960" height="510" data-path="images/privacy/who-sees-what-anonymous.svg" />

        | 当事者 | 見える情報 | 見えない情報 |
        | - | - | - |
        | Alice | Bob への自身の支払い | Bob から Charlie への支払い、または Charlie の存在 |
        | Bob | Alice から自身への支払い（送信元のプライベートウォレットを含む）。自身から Charlie への支払い。 | Alice の残高 |
        | Charlie | Bob から自身への支払い（送信元のプライベートウォレットを含む） | Alice、または Alice から Bob への支払い |
        | リング監査者 | ポリシーで定義されたリングのアクティビティ | リング外のアクティビティ |
        | RPC と Solana | リレイヤー、コミットメント、暗号文 | 送信者、受信者、資産、金額 |
      </Tab>
    </Tabs>
  </Tab>
</Tabs>

<Info>
  この例はプライベート送金をモデル化したものです。入金と出金では、より多くの情報がオンチェーンで公開されます。

  * 公開残高からの入金では、送金元、資産、金額が公開されます。
  * 出金では、送金先、資産、金額が公開されます。

  [各フローで非公開に保たれる情報](/docs/ja/privacy/concepts/overview#非公開残高への入金)を参照してください。
</Info>

## 暗号化

プライベートウォレットは、署名用の Solana キーペア、ヌリファイアキー、暗号化用の閲覧キーで構成されます。これらのキーを合わせてシールドキーペアと呼びます。シールドキーペアは、トランザクションの署名、暗号化、復号を行います。

* **署名キー：** トランザクションに署名するための、ウォレットの Ed25519 Solana キーペアです。匿名カスタムリングでは、代わりにプライベートウォレットの P-256 キーが署名します。
* **閲覧キー：** トランザクションの暗号化と復号に使用する P-256 キーペアです。
* **ヌリファイアキー：** プライベート残高の二重使用を防ぐヌリファイアの導出に使用するキーです。

シールドアドレスは、シールドキーペアの公開キーです。送金はこのアドレスを宛先として暗号化されます。

```
ShieldedAddress = (signing_pk, nullifier_pk, viewing_pk)
```

トランザクションの暗号化方法については、仕様の [ViewingKey](https://github.com/helius-labs/zolana/blob/a3ddedda42b40d4951ae8fcdde2500374c4f2125/docs/spec.md#viewingkey) と [AES キーの導出](https://github.com/helius-labs/zolana/blob/a3ddedda42b40d4951ae8fcdde2500374c4f2125/docs/spec.md#aes-key-derivation)を参照してください。

### シールドキーペアの統合

ウォレットは、ネイティブの[ウォレット統合](/docs/ja/privacy/integration/wallet)を通じて、シールドキーペアを自身で保持できます。
[組み込みプライバシーウォレット](/docs/ja/privacy/integration/embedded-wallet)では、代わりにウォレットプロバイダーがシールドキーペアを保持し、そのキー操作を実行します。

| キー管理 | シールドキーペアの保持者 | 操作の実行場所 |
| - | - | - |
| ネイティブ[ウォレット統合](/docs/ja/privacy/integration/wallet) | ウォレット | デバイス上 |
| [組み込みプライバシーウォレット](/docs/ja/privacy/integration/embedded-wallet) | ウォレットプロバイダー | ウォレットプロバイダーのインフラストラクチャ内 |

### 復号モード

所有者は閲覧キーを使用して自身のプライベート残高を復号します。

機密リング（Default Ring と機密カスタムリング）は、ローカル復号と委任復号をサポートします。
匿名リング（カスタムリングのみ）は、委任復号だけをサポートします。

| モード | 復号の実行場所 | 閲覧アクセスを持つ主体 | ウォレット側のトレードオフ | 使用対象 |
| - | - | - | - | - |
| ローカル | ウォレット内 | ウォレットのみ | プライバシーは最も高いものの、ローカル状態と同期ライフサイクルが必要 | 機密リング：Default Ring と機密カスタムリング |
| 委任 | 認可された RPC プロバイダー | ウォレット + プロバイダー | ローカルでの同期作業は減るものの、プロバイダーが残高と履歴を閲覧可能 | すべてのリング。匿名カスタムリングでは唯一のモード |

#### ローカル復号

ローカル復号モードでは、ウォレットが残高と履歴をローカルで復号し、同期します。
ローカル復号では、閲覧キーがデバイス上に保持されます。

#### 委任復号

委任復号モードでは、ウォレットと選択したプロバイダーが閲覧キーを共有します。
これにより、プロバイダーは残高と履歴を復号できますが、資金を使用する権限は付与されません。
また、プロバイダーに過去のアクティビティの同期を許可する場合、ウォレットは以前の閲覧キーも共有できます。

監査者のアクセスは、委任復号とは別です。
監査者にはポリシーで定義されたリングの可視性が付与されます。一方、委任先プロバイダーにはウォレット単位の同期アクセスが付与されます。

#### 選択的開示

所有者は閲覧キーを共有して、読み取りアクセスを付与できます。たとえば、コンプライアンス対応の監査者や委任復号プロバイダーと共有できます。

* 単一のトランザクションを開示する場合、送信者はそのトランザクションだけを復号できるトランザクション閲覧キーを共有します。
* カスタムリングでは、別の監査者キーを設定することもできます。このキーは、ポリシーで定義されたリングのアクティビティを復号します。詳細については、[カスタムエンタープライズリング](/docs/ja/privacy/integration/enterprise)を参照してください。

## 詳細情報

<CardGroup cols={2}>
  <Card title="Overview" icon="book" href="/docs/ja/privacy/concepts/overview">
    リング、プライバシーの保証、トランザクションフローについて説明します。
  </Card>

  <Card title="Architecture" icon="diagram-project" href="/docs/ja/privacy/concepts/architecture">
    ウォレット、RPC サービス、Solana プログラムがどのように連携するかを説明します。
  </Card>

  <Card title="Private State and UTXOs" icon="database" href="/docs/ja/privacy/concepts/utxo">
    プライベート残高がどのように保存され、使用されるかを説明します。
  </Card>

  <Card title="Custom Enterprise Rings" icon="building" href="/docs/ja/privacy/integration/enterprise">
    カスタムリングの設定方法について説明します。
  </Card>
</CardGroup>

## お探しの情報が見つかりませんでしたか？

<Callout type="info">
  ぜひご連絡ください！[Telegram](https://t.me/tilo_light) | [E-Mail](mailto:sales@helius.xyz) | [Typeform](https://form.typeform.com/to/LPFASU8a)
</Callout>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.