PayJoin 隱私保護技術

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

PayJoin 隱私保護技術

概述

PayJoin(原名 P2EP,Pay-to-Endpoint Payment)是一種比特幣隱私增強協議,由開發者 Ádám Gibson 與 Gregory Maxwell 於 2019 年提出。與 CoinJoin 不同,PayJoin 不需要將多個參與者的輸出等額化,而是透過讓支付方與接收方共同構造交易,打破區塊鏈分析中的輸入與輸出關聯假設。

技術原理

傳統交易的可追蹤性

在傳統比特幣交易中,存在一個基本假設:輸入屬於同一個所有者。區塊鏈分析公司利用這個假設進行資金追蹤:

典型分析假設:
輸入 A → 輸出 A'
輸入 B → 輸出 B'
假設:輸入 A 和輸入 B 來自同一個錢包

PayJoin 的破解方式

PayJoin 讓這個假設失效。核心思路是:

  1. 支付方提供輸入
  2. 接收方也提供輸入(或作為共同簽名者)
  3. 輸出包含支付金額 + 找零

這樣外部觀察者看到的交易包含來自不同所有者的輸入,使得輸入輸出對應分析失效。

交易結構示例

傳統交易(可追蹤):

輸入:1.5 BTC(Alice)
輸出:0.5 BTC(Bob)+ 1.0 BTC(Alice 找零)

PayJoin 交易(難以追蹤):

輸入:1.5 BTC(Alice)+ 0.3 BTC(Bob)
輸出:0.8 BTC(Bob)+ 1.0 BTC(Alice 找零)

分析者無法判斷哪個輸出屬於哪個輸入。

協議流程

基礎流程

  1. 協商階段
  1. 創建提議
  1. 添加輸入
  1. 完成簽名

PSBT 實現

PayJoin 通常使用 Partially Signed Bitcoin Transactions (PSBT):

Alice(支付方):
- 輸入:UTXO_A(價值 0.05 BTC)
- 輸出:0.02 BTC 給 Bob

Bob(接收方):
- 添加輸入:UTXO_B(價值 0.1 BTC)
- 調整輸出:0.09 BTC 給自己(0.02 + 0.07 找零)

最終交易:

實現要求

錢包支持

支持 PayJoin 的錢包:

兼容性

隱私分析

有效性

PayJoin 打破的是「同一交易中所有輸入屬於同一所有者」的假設:

局限性

  1. 需要接收方配合:必須使用支持 PayJoin 的錢包
  2. 金額敏感:大額 PayJoin 仍可能引起注意
  3. 無法隱藏廣播 IP:仍需配合 Tor 使用

與 CoinJoin 的比較

特性CoinJoinPayJoin
參與者數量多方(通常 5-100+)雙方(支付方 + 接收方)
交易金額通常等額可變
實現難度較高較低
隱私保護較強適中
日常使用不便較方便

使用場景

推薦使用

不適用場景

安全考量

雙重支付防護

PayJoin 協議必須防止:

解決方案:

費用結構

PayJoin 交易的特點:

總結

PayJoin 是一種實用且有效的比特幣隱私技術。它不需要大量的參與者,可以在日常支付中自然使用。配合其他隱私工具(Tor、CoinJoin),可以構建更完整的隱私保護方案。隨著更多錢包支持 PayJoin,這種技術有望成為比特幣隱私的標準配置。

本文包含

延伸閱讀與來源

這篇文章對您有幫助嗎?

評論

發表評論

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

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