PayJoin 隱私保護技術

理解 PayJoin(P2EP)隱私保護協議,如何打破交易圖分析。

PayJoin 深入解析

PayJoin(又稱 P2EP)是比特幣隱私保護的重要創新,透過讓支付方與接收方共同構建交易,打破傳統區塊鏈分析的假設。本篇文章全面介紹 PayJoin 的原理、實現與生態。

傳統比特幣交易的隱私問題

輸入與輸出分析

比特幣區塊鏈分析的核心假設:

這使得分析師能夠:

範例攻擊

傳統交易:
輸入:1.5 BTC(地址A)
輸出:1.0 BTC(地址B)
      0.49 BTC(找零地址A)

分析結論:
- 地址A 和找零地址屬於同一所有者
- 地址B 收到 1.0 BTC

PayJoin 的核心思想

基本原理

PayJoin(Pay to EndPoint)讓交易的輸入來自支付方與接收方雙方:

PayJoin 交易:
輸入:支付方 0.5 BTC + 接收方 0.5 BTC(假裝是支付方的輸入)
輸出:0.8 BTC(支付給接收方)
      0.19 BTC(找零給支付方)
      0.01 BTC(手續費)

關鍵洞察

區塊鏈分析師無法區分:

這打破了傳統分析的黃金假設。

技術實現

協議流程

步驟 1:發起請求

支付方 → 接收方:
{
  "p2ep": "v1",
  "outputs": [
    { "amount": 800000, "address": "bc1q..." } // 支付金額
  ],
  "change": "bc1q..." // 找零地址
}

步驟 2:接收方回應

接收方添加自己的 UTXO 到交易中:

接收方 → 支付方:
{
  "unsigned_tx": "...",
  "inputs": [
    { "txid": "...", "vout": 0, "amount": 500000 }
  ]
}

步驟 3:雙方簽名

簽名機制

BIP-79 定義了 PayJoin 協議:

P2EP 需要:
1. 支付方的輸出(目標金額)
2. 接收方的輸入(貢獻金額)
3. 支付方的找零輸出
4. 接收方可能有的找零輸出

隱私保障

打破假設

PayJoin 實現了傳統交易無法做到的事:

  1. 輸入所有權混淆
  1. 金額混淆

匿名集

PayJoin 的匿名集包含:

實現類型

1. 離線 PayJoin

最簡單的實現方式:

  1. 接收方離線提供輸入
  2. 支付方構建並簽名交易
  3. 接收方上線後補充簽名

2. 線上 PayJoin

即時協商模式:

3. 雙重 PayJoin

擴展版本:

錢包支持

主流錢包

錢包PayJoin 支持說明
JoinMarket原生支持比特幣隱私領域先驅
Sparrow Wallet原生支持桌面錢包首選
BlueWallet有限支持行動錢包
BTC Pay Server原生支持商家支付解決方案

JoinMarket

比特幣隱私領域的成熟項目:

Sparrow Wallet

面向比特幣愛好者的桌面錢包:

使用場景

1. 商家收款

商家使用 PayJoin 接收付款:

2. 個人轉帳

個人之間的隱私轉帳:

3. 自我資金混合

將自己不同來源的比特幣混合:

批評與局限性

1. 接收方參與需求

2. 交易大小

3. 檢測可能性

4. 交互複雜

與其他隱私技術比較

特性PayJoinCoinJoin閃電網路
隱私機制輸入混淆輸出混淆路由混淆
即時性
費用中等中等
實現難度
接受度

未來發展

BIP 演進

PayJoin 協議持續演進:

普及障礙

潛力

結語

PayJoin 代表了比特幣隱私保護的另一條路徑。與 CoinJoin 需要眾多參與者不同,PayJoin 只需要交易雙方即可實現有意義的隱私提升。雖然採用率仍然較低,但其技術價值與長期潛力不容忽視。對於重視比特幣隱私的用戶與商家,PayJoin 是值得考慮的工具。

本文包含

延伸閱讀與來源

這篇文章對您有幫助嗎?

評論

發表評論

注意:由於這是靜態網站,您的評論將儲存在本地瀏覽器中,不會公開顯示。

目前尚無評論,成為第一個發表評論的人吧!