> ## 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.

# 概述

> 了解 Helius Privacy 的工作原理，包括用户流程、转账中哪些信息保持公开或私密，以及具有可自定义策略的隐私环。

<span id="introduction-to-rings" />

## 简介

Solana 上的每笔交易都可公开读取：任何人都可以查看地址、余额和转账历史记录。
对于 Solana Privacy Rings，我们定义了两个隐私级别：

* **机密性** – 加密资产和金额
* **匿名性** – 加密资产、金额、发送方和接收方

<img src="https://mintcdn.com/helius/ITnDOhn5GRfQ1FQW/images/privacy/transaction-visibility-cards.svg?fit=max&auto=format&n=ITnDOhn5GRfQ1FQW&q=85&s=2569051cac1c7cba10d4ffabf254577c" alt="Confidential transfers hide the asset and amount. Anonymous transfers also hide the sender and recipient. The transaction hash remains public." width="880" height="248" data-path="images/privacy/transaction-visibility-cards.svg" />

## Solana Privacy Rings

隐私环是可编程的屏蔽池，包含加密的链上余额，并直接在 Solana 上执行。
不同类型的隐私环可以共存：

<CardGroup cols={2}>
  <Card title="Default Ring" icon="lock">
    * 机密
    * 自托管
    * 无需许可
    * 审计员不可见
  </Card>

  <Card title="Custom Enterprise Rings" icon="building" href="/docs/zh/privacy/integration/enterprise">
    * 机密或匿名
    * 自托管
    * 自定义合规规则
    * 审计员可见
  </Card>
</CardGroup>

对于大多数应用，我们建议使用无需许可且具有机密性的默认隐私环。

当你的应用需要自定义合规规则、审计员访问权限和控制机制时，请使用自定义隐私环。
自定义隐私环是定义转账权限和任何其他授权方的 Solana 程序，类似于 Token-2022。

默认隐私环为机密 DeFi 和其他应用提供基础。
独立的自定义隐私环可以使用现有应用，也可以创建自己的应用，同时定义仅适用于其隐私环内余额的策略、
审计员访问权限和授权方。
隐私环默认可互操作，并在 Solana 的机密 DeFi 生态系统中共享流动性。

<img src="https://mintcdn.com/helius/ITnDOhn5GRfQ1FQW/images/privacy/privacy-rings-workshop.png?fit=max&auto=format&n=ITnDOhn5GRfQ1FQW&q=85&s=c549ef2c514a89c73af25da87ac0a8cf" alt="Solana 上的公开余额和私密余额，其中一个无需许可的隐私环与自定义隐私环 1、自定义隐私环 2 和自定义隐私环 n 并列。" width="850" height="370" data-path="images/privacy/privacy-rings-workshop.png" />

## 主要特性

* **Solana 原生速度** – 简洁的 <Tooltip tip="Groth16 ZK-SNARKs let Solana verify private transactions without revealing their private data. Proofs are generated server-side using GPUs, or can be generated locally.">零知识证明</Tooltip> 可在几十毫秒内生成，从而保持用户熟悉的体验。可以将其视为又一次 RPC 调用。
* **链上执行** – 加密余额保留在 Solana 上。无需链下账本、侧链或中心化排序器。
* **加密任何资产** – 隐私环支持 SOL、SPL 代币和 Token-2022 代币。
* **自托管余额** – 私密交易始终需要所有者签名。
* **兼容智能账户** – 隐私环可以支持具有自身授权逻辑的智能账户。
* **Solana 可组合性** – 在单笔交易中与任何 Solana 程序组合。
* **可编程隐私** – 在 Solana 程序中创建私密托管。

## 用户流程与隐私保证

用户在私密钱包中持有加密余额。他们可以进入隐私环、在其中进行私密转账或退出隐私环，并在单笔交易中与其他 Solana 程序组合。

<img src="https://mintcdn.com/helius/df3Lmw7POmPkuUJN/images/privacy/privacy-rings-lifecycle.svg?fit=max&auto=format&n=df3Lmw7POmPkuUJN&q=85&s=54d057b2674ad3a194575858d35db167" alt="Public and fiat balances enter a Ring, tokens move between private balances, and users withdraw or off-ramp." width="1420" height="240" data-path="images/privacy/privacy-rings-lifecycle.svg" />

<span id="deposit-to-a-private-balance-what-is-private" />

用户可以像处理公开余额一样，将代币发送到 Solana 钱包地址。
任何人只需知道接收方的钱包地址，即可向任何私密钱包存入资金。

### 存入私密余额

用户可以通过两种方式存入私密余额：

1. 将法币余额入金为私密加密资产余额
2. 从公开加密资产余额存入私密加密资产余额

<Tabs>
  <Tab title="从法币余额进入">
    | 字段 | 可见性 |
    | - | - |
    | 资产 | 私密。已在链上加密。 |
    | 金额 | 私密。已在链上加密。 |
    | 发送方 | 入金服务提供商。在机密 Ring 中公开；在匿名 Ring 中私密。 |
    | 接收方 | 用户。在机密 Ring 中公开；在匿名 Ring 中私密。 |
    | 备注（可选） | 私密。已在链上加密。 |
    | 法币余额和付款 | 不在链上。法币付款通过入金服务提供商完成。 |

    与从公开余额存入资金不同，将资金转入私密余额可确保资产和金额保持私密。服务提供商会从其私密钱包转账到你的钱包。在机密 Ring 中，只有发送方和接收方地址是公开的。
  </Tab>

  <Tab title="从公共加密余额存款">
    | 字段 | 可见性 |
    | - | - |
    | 资产 | 公开。在公开存款中可见。 |
    | 金额 | 公开。在公开存款中可见。 |
    | 发送方 | 公开。源钱包地址在公开存款中可见。 |
    | 接收方 | 公开。目标钱包地址在公开存款中可见。 |
    | 备注（可选） | 公开。随公开存款一起发出。 |
    | 最终私有余额 | 私有。在链上加密。 |
  </Tab>
</Tabs>

<span id="private-transfer-what-is-private" />

### 在私密余额之间转账

用户可以通过两种方式进行私密转账：

1. 在同一隐私环中转账
2. 转账到另一个隐私环

<Tabs>
  <Tab title="Default Ring">
    | 字段 | 可见性 |
    | - | - |
    | 资产 | 私密。链上加密。 |
    | 金额 | 私密。链上加密。 |
    | 发送方 | 公开。Default Ring 是保密的。 |
    | 接收方 | 公开。Default Ring 是保密的。 |
    | 备注（可选） | 私密。链上加密。 |
  </Tab>

  <Tab title="Custom Rings">
    | 转账 | 资产 | 金额 | 发送方 | 接收方 | 备注（可选） |
    | - | - | - | - | - | - |
    | 在自定义保密 Ring 内 | 私密 | 私密 | 公开 | 公开 | 私密 |
    | 在自定义匿名 Ring 内 | 私密 | 私密 | 私密 | 私密 | 私密 |
    | Default Ring 转入或转出自定义保密 Ring | 私密 | 私密 | 公开 | 公开 | 私密 |
    | 从保密 Ring 转入自定义匿名 Ring | 私密 | 私密 | 公开 | 私密 | 私密 |
    | 从自定义匿名 Ring 转入保密 Ring | 私密 | 私密 | 私密 | 公开 | 私密 |

    中继器会提交来自匿名 Ring 的转账，因此公共账本不会泄露源私密钱包。自定义 Ring 的程序 ID 仍然公开。

    Ring 之间的转账必须遵循源 Ring 的策略。一笔交易可以合并 Default Ring 和一个自定义 Ring 中的余额。两个自定义 Ring 之间的转账会通过 Default Ring 路由。
  </Tab>
</Tabs>

<span id="withdraw-from-a-private-balance-what-is-private" />

### 提取到公开余额

用户可以通过两种方式从私密余额中提取：

1. 将私密加密资产出金为法币余额
2. 将私密加密资产提取到公开加密资产余额

<Tabs>
  <Tab title="提取到法币余额">
    | 字段 | 可见性 |
    | - | - |
    | 资产 | 私密。已在链上加密。 |
    | 金额 | 私密。已在链上加密。 |
    | 发送方 | 用户。在机密 Ring 中公开；在匿名 Ring 中私密。 |
    | 接收方 | 出金服务商。在机密 Ring 中公开；在匿名 Ring 中私密。 |
    | 备注（可选） | 私密。已在链上加密。 |
    | 法币付款 | 不在链上进行。法币付款通过出金服务商完成。 |

    与提现到公开余额不同，从私密余额出金时，资产和金额会保持私密。你将资产从自己的私密钱包转入服务商的私密钱包，服务商再向你支付法币。在机密 Ring 中，只有发送方和接收方地址是公开的。你剩余的私密余额仍会保持私密。
  </Tab>

  <Tab title="提取到公共加密余额">
    | 字段 | 可见性 |
    | - | - |
    | 资产 | 公开。可在公开提现中看到。 |
    | 金额 | 公开。可在公开提现中看到。 |
    | 发送方 | 在机密 Ring 中公开；在匿名 Ring 中私密。 |
    | 接收方 | 公开。目标钱包地址可在公开提现中看到。 |
    | 备注（可选） | 附加到加密输出时为私密。 |
    | 最终公开余额 | 公开。保存在接收方的公开账户中。 |
    | 剩余私密余额 | 私密。在链上加密。 |
  </Tab>
</Tabs>

## 可编程性与私密托管

Solana 程序可以使用私密托管构建机密 DeFi 应用。

* **私密托管** – ZK Solana 程序可以托管私密余额并定义释放条件
* **Solana 可组合性** – 在单笔交易中将私密交易与其他 Solana 程序组合
* **共享流动性** – 机密 DeFi 中的 ZK 程序可以共享流动性

**你可以构建的应用**

* **有条件的私密支付** – 托管加密资产，并按照时间表或在获得必要批准后释放资产，从而支持薪资发放、归属、里程碑付款和私密多签工作流。
* **兑换与交易** – 通过私密托管兑换封装代币、SOL、模因币、股票和 RWA，例如进行代币兑换或 OTC 交易。
* **质押与收益** – 构建私密收益型应用，例如质押池、代币化国库或其他收益金库。
* **借贷** – 在私密托管中持有抵押品，例如用于由代币化资产支持的稳定币贷款。

<img src="https://mintcdn.com/helius/ITnDOhn5GRfQ1FQW/images/privacy/programmability.svg?fit=max&auto=format&n=ITnDOhn5GRfQ1FQW&q=85&s=1ead5d736db986e9fedd4a0e51d5a730" alt="Private balances connected by transfer, swap, and lending, with yield and staking above them inside Helius Privacy Rings." style={{ width: "100%" }} width="1000" height="680" data-path="images/privacy/programmability.svg" />

## 高层级交易流程

<a id="overview" />

私密转账的行为与公开转账类似，并在单笔 Solana 交易中执行。

<Tabs>
  <Tab title="Private transfer">
    1. 用户的 SOL 或 SPL 余额在链上加密。
    2. 获取加密状态并在本地解密，或由受委托的提供商解密并提供已解密状态。
    3. 钱包设置金额和接收方，然后请求 ZK 证明。
    4. RPC 提供商默认生成并返回 ZK 证明。自定义隐私环还需要策略证明。
    5. 钱包构建 Solana 交易。系统会验证 ZK 证明，而不会泄露加密状态。调用的程序以及由谁签名和提交取决于隐私环：

    | | 无需许可的机密隐私环 | 自定义机密隐私环 | 自定义匿名隐私环 |
    | - | - | - | - |
    | 调用的程序 | Solana 隐私程序 | 自定义隐私环程序和 Solana 隐私程序 | 自定义隐私环程序和 Solana 隐私程序 |
    | 签名方 | 发送方签名。Gas 赞助方可以支付费用。 | 发送方签名。Gas 赞助方可以支付费用。 | 由中继方签名，因此发送方不会与交易关联。 |

    6. 应用通过 Solana 交易哈希跟踪状态。

    <Tabs sync={false}>
      <Tab title="Permissionless Confidential Ring">
        ```mermaid theme={"system"}
        %%{init: {
          'theme': 'base',
          'themeVariables': {
            'lineColor':           '#FF6B35',
            'primaryTextColor':    '#737373',
            'primaryBorderColor':  '#9CA3AF',
            'actorBkg':            '#FFFFFF',
            'actorBorder':         '#9CA3AF',
            'actorTextColor':      '#737373',
            'signalColor':         '#FF6B35',
            'signalTextColor':     '#737373',
            'labelBoxBkgColor':    '#FF6B351F',
            'labelBoxBorderColor': '#FF6B35',
            'noteBkgColor':        '#F5F5F5',
            'noteTextColor':       '#737373',
            'noteBorderColor':     '#9CA3AF'
          }
        }}%%
        sequenceDiagram
            participant Wallet
            participant RPC as RPC Provider
            participant Solana

            rect rgba(255, 107, 53, 0.06)
                Note left of Wallet: Local
                Wallet->>RPC: Fetch encrypted state
                RPC-->>Wallet: Encrypted state
                Note over Wallet: Decrypt locally
            end
            rect rgba(255, 107, 53, 0.06)
                Note left of Wallet: Delegated
                Wallet->>RPC: Get private balance
                Note over RPC: Decrypt and serve decrypted state
                RPC-->>Wallet: Decrypted state
            end

            Note over Wallet: Set amount and recipient
            Wallet->>RPC: Request ZK proof
            Note over RPC: Generate ZK proof
            RPC-->>Wallet: ZK proof
            Note over Wallet: Build transaction, sign

            Wallet->>RPC: Submit Transaction
            RPC->>Solana: Forward transaction
            Note over Solana: Verify signatures
            Note over Solana: CPI Solana Privacy Program
            Note over Solana: Verify ZK proof
            RPC-->>Wallet: Transaction signature
        ```
      </Tab>

      <Tab title="Custom Confidential Ring">
        ```mermaid theme={"system"}
        %%{init: {
          'theme': 'base',
          'themeVariables': {
            'lineColor':           '#FF6B35',
            'primaryTextColor':    '#737373',
            'primaryBorderColor':  '#9CA3AF',
            'actorBkg':            '#FFFFFF',
            'actorBorder':         '#9CA3AF',
            'actorTextColor':      '#737373',
            'signalColor':         '#FF6B35',
            'signalTextColor':     '#737373',
            'labelBoxBkgColor':    '#FF6B351F',
            'labelBoxBorderColor': '#FF6B35',
            'noteBkgColor':        '#F5F5F5',
            'noteTextColor':       '#737373',
            'noteBorderColor':     '#9CA3AF'
          }
        }}%%
        sequenceDiagram
            participant Wallet
            participant RPC as RPC Provider
            participant Solana

            rect rgba(255, 107, 53, 0.06)
                Note left of Wallet: Local
                Wallet->>RPC: Fetch encrypted state
                RPC-->>Wallet: Encrypted state
                Note over Wallet: Decrypt locally
            end
            rect rgba(255, 107, 53, 0.06)
                Note left of Wallet: Delegated
                Wallet->>RPC: Get private balance
                Note over RPC: Decrypt and serve decrypted state
                RPC-->>Wallet: Decrypted state
            end

            Note over Wallet: Set amount and recipient
            Wallet->>RPC: Request ZK proof
            Note over RPC: Generate ZK proof and policy proof
            RPC-->>Wallet: ZK proof and policy proof
            Note over Wallet: Build transaction, sign

            Wallet->>RPC: Submit Transaction
            RPC->>Solana: Forward transaction
            Note over Solana: Verify signatures
            Note over Solana: CPI Custom Ring Program
            Note over Solana: Verify policy ZK proof
            Note over Solana: CPI Solana Privacy Program
            Note over Solana: Verify SPP ZK proof
            RPC-->>Wallet: Transaction signature
        ```
      </Tab>

      <Tab title="Custom Anonymous Ring">
        ```mermaid theme={"system"}
        %%{init: {
          'theme': 'base',
          'themeVariables': {
            'lineColor':           '#FF6B35',
            'primaryTextColor':    '#737373',
            'primaryBorderColor':  '#9CA3AF',
            'actorBkg':            '#FFFFFF',
            'actorBorder':         '#9CA3AF',
            'actorTextColor':      '#737373',
            'signalColor':         '#FF6B35',
            'signalTextColor':     '#737373',
            'labelBoxBkgColor':    '#FF6B351F',
            'labelBoxBorderColor': '#FF6B35',
            'noteBkgColor':        '#F5F5F5',
            'noteTextColor':       '#737373',
            'noteBorderColor':     '#9CA3AF'
          }
        }}%%
        sequenceDiagram
            participant Wallet
            participant RPC as RPC Provider
            participant Relayer
            participant Solana

            rect rgba(255, 107, 53, 0.06)
                Note left of Wallet: Delegated
                Wallet->>RPC: Get private balance
                Note over RPC: Decrypt and serve decrypted state
                RPC-->>Wallet: Decrypted state
            end

            Note over Wallet: Set amount and recipient, sign
            Wallet->>RPC: Request ZK proof
            Note over RPC: Generate ZK proof and policy proof
            RPC-->>Wallet: ZK proof and policy proof
            Note over Wallet: Build transaction

            Wallet->>Relayer: Submit Transaction
            Relayer->>Solana: Forward transaction
            Note over Solana: Verify signatures
            Note over Solana: CPI Custom Ring Program
            Note over Solana: Verify policy ZK proof
            Note over Solana: CPI Solana Privacy Program
            Note over Solana: Verify SPP ZK proof
            Relayer-->>Wallet: Transaction signature
        ```
      </Tab>
    </Tabs>
  </Tab>

  <Tab title="Solana transfer">
    1. 用户的 SOL 或 SPL 余额在链上公开。
    2. 钱包读取公开状态、构建转账，然后由所有者签名。
    3. Solana 运行时验证签名并调用系统程序或代币程序，由相应程序更新公开余额。
    4. 应用通过 Solana 交易哈希跟踪状态。

    ```mermaid theme={"system"}
    %%{init: {
      'theme': 'base',
      'themeVariables': {
        'lineColor':           '#FF6B35',
        'primaryTextColor':    '#737373',
        'primaryBorderColor':  '#9CA3AF',
        'actorBkg':            '#FFFFFF',
        'actorBorder':         '#9CA3AF',
        'actorTextColor':      '#737373',
        'signalColor':         '#FF6B35',
        'signalTextColor':     '#737373',
        'labelBoxBkgColor':    '#FF6B351F',
        'labelBoxBorderColor': '#FF6B35',
        'noteBkgColor':        '#F5F5F5',
        'noteTextColor':       '#737373',
        'noteBorderColor':     '#9CA3AF'
      }
    }}%%
    sequenceDiagram
        participant Wallet
        participant RPC
        participant Solana

        Wallet->>RPC: Get public balance
        RPC-->>Wallet: Public state
        Note over Wallet: Build transfer, owner signs
        Wallet->>RPC: sendTransaction
        RPC->>Solana: Forward transaction
        Note over Solana: Verify signatures
        Note over Solana: CPI System / Token Program
        Note over Solana: Update balance
        RPC-->>Wallet: Transaction signature
    ```
  </Tab>
</Tabs>

<CardGroup cols={1}>
  <a href="https://www.helius.dev/privacy/demo" target="_blank" rel="noopener noreferrer" className="not-prose">
    <Card title="Launch Demo" icon="play">
      在 devnet 上试用机密转账和兑换。
    </Card>
  </a>
</CardGroup>

<span id="private-wallet" />

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

<span id="transfers-to-a-private-wallet" />

<span id="key-management" />

<span id="creating-a-shielded-keypair" />

<span id="integrating-a-shielded-keypair" />

<span id="decryption-modes-and-wallet-sync" />

<span id="local-decryption" />

<span id="delegated-decryption" />

<span id="indexer-serves-encrypted-state" />

<span id="private-wallet-balance" />

<span id="private-solana-token-accounts" />

<span id="on-concurrency" />

<span id="on-proof-generation-time" />

<span id="terms" />

<span id="custom-rings-are-programmable" />

## 了解更多

<CardGroup cols={2}>
  <Card title="Architecture" icon="diagram-project" href="/docs/zh/privacy/concepts/architecture">
    钱包、RPC 服务和 Solana 程序如何交互。
  </Card>

  <Card title="Private State and UTXOs" icon="database" href="/docs/zh/privacy/concepts/utxo">
    私密余额的存储和支出方式。
  </Card>

  <Card title="Encryption and Privacy Guarantees" icon="key" href="/docs/zh/privacy/concepts/encryption">
    资产的加密方式以及屏蔽密钥对的作用。
  </Card>

  <Card title="Custom Enterprise Rings" icon="building" href="/docs/zh/privacy/integration/enterprise">
    如何配置具有审计员和合规控制机制的自定义隐私环。
  </Card>
</CardGroup>

## 没找到您要找的？

<Callout type="info">
  联系我们！[Telegram](https://t.me/tilo_light) | [电子邮件](mailto:sales@helius.xyz) | [联系](https://www.helius.dev/contact)
</Callout>


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