[論文レビュー] Homomorphic Payment Addresses and the Pay-to-Contract Protocol
本稿では、顧客と商人の取引のための新しい支払いプロトコルを提案する。このプロトコルは、署名済みまたは暗号化された通信の必要性を排除し、商人の公開鍵と契約識別子を用いて顧客が同型暗号方式に基づく決定論的支払いアドレスを生成可能にする。プロトコルは資金と受領証の原子的交換を保証し、商人のインフラが侵害されてもセキュリティが維持される。これは、ビットコインのパブリックブロックチェーンにおけるElGamal型暗号方式の同型性を利用している。
We propose an electronic payment protocol for typical customer-merchant relations which does not require a trusted (signed) payment descriptor to be sent from the merchant to the customer. Instead, the destination "account" number for the payment is solely created on the customer side. This eliminates the need for any encrypted or authenticated communication in the protocol and is secure even if the merchant's online infrastructure is compromised. Moreover, the payment transaction itself serves as a timestamped receipt for the customer. It proves what has been paid for and who received the funds, again without relying on any merchant signatures. In particular, funds and receipt are exchanged in a single atomic action. The asymmetric nature of the customer-merchant relation is crucial. The protocol is specifically designed with bitcoin in mind as the underlying payment system. Thereby, it has the useful benefit that all transactions are public. However, the only essential requirement on the payment system is that "accounts" are arbitrary user-created keypairs of a cryptosystem whose keypairs enjoy a homomorphic property. All ElGamal-type cryptosystems have this feature. For use with bitcoin we propose the design of a deterministic bitcoin wallet whose addresses can be indexed by clear text strings.
研究の動機と目的
- 標準的なビットコイン支払いプロトコルにおけるセキュリティ脆弱性、すなわち、商人サーバーが侵害された場合に支払いアドレスを改ざんして支払いを再配分できるという問題を解決すること。
- 取引セットアップ中に顧客と商人の間で認証済みまたは暗号化された通信に依存しないようにすること。
- 支払い取引自体が、支払額と受領者を証明する暗号的に検証可能な受領証として機能すること。
- 商人が擬似匿名性を保ち、インフラを顧客から隠すことができること。これには、シグナリングに分散型ファイルシステムを用いる。
- ビットコインに実用的な拡張を設計し、ラベル付きで決定論的なウォレットと公開鍵基盤を用いた安全な商人の擬似名を可能にすること。
提案手法
- 顧客は、商人の公開鍵と契約識別子に基づく同型鍵ペア構成を用いて、秘密鍵を暴露せずに決定論的にアドレスを生成する。
- プロトコルは、ElGamal型暗号方式の同型性を利用し、顧客が特定の契約または商品に関連付けられた支払いアドレスを計算可能にする。
- 一方向のシグナリングメカニズムを用い、商人は支払い取引から導出された鍵を用いて分散型ファイルシステムから契約を取得し、オフラインでの受領が可能になる。
- 支払い取引には2つの出力が含まれる:1つは顧客が導出したアドレスへ、もう1つは商人のアドレスへ。これにより、資金と受領証の原子的移転が実現される。
- プロトコルは、トランザクションの署名に信頼できるパスデバイス(例:ハードウェアウォレット)を仮定しており、顧客のメインデバイスが侵害されても秘密鍵が安全であることを保証する。
- システムはビットコインとの統合を可能にし、ラベル付きで決定論的なアドレスをサポートするウォレット機能の拡張と、PKIまたはワールド・オブ・トラストを用いた商人の擬似名の検証を可能にする。
実験結果
リサーチクエスチョン
- RQ1顧客が商人からの認証済みまたは暗号化された通信を一切必要とせずに、支払いアドレスを生成できるような支払いプロトコルを設計できるか?
- RQ2どのようにすれば、支払い取引が同時に暗号的に検証可能な受領証として機能し、受領者と支払い目的の両方を証明できるか?
- RQ3商人が侵害されても支払いを再配分したり、偽の受領証を偽造したりできないようにするために必要な暗号的性質は何か?
- RQ4商人が完全に匿名であり、インフラをすべて顧客から隠しながらも、安全で追跡可能な取引を可能にできるか?
- RQ5決定論的でラベル付きのウォレットと安全な商人の擬似名をサポートするために、ビットコインクライアントにどのような変更が必要か?
主な発見
- プロトコルは、商人の公開鍵と契約識別子から決定論的に導出されるアドレス生成に依存することで、顧客と商人の間の署名済みまたは暗号化された通信の必要性を完全に排除した。
- 支払い取引自体がタイムスタンプ付きで暗号的に束縛された受領証として機能し、商人の署名が不要でも、受領者と支払い目的の両方を証明できる。
- 商人のオンラインインフラが完全に侵害されても、支払いアドレスが顧客が同型鍵ペアの性質を用いて単独で計算しているため、資金の再配分は不可能である。
- プロトコルは商人の真正な擬似匿名性を実現でき、商人は分散型ファイルシステムを介して運用し、すべてのインフラを顧客から隠すことができる。
- プロトコルはビットコインと互換性があり、ラベル付きで決定論的なウォレットのサポートや、PKIまたはワールド・オブ・トラストを用いた商人の擬似名認証メカニズムの導入といった、既存システムのわずかな拡張のみを要する。
- プロトコルのセキュリティは、ElGamal型暗号方式の同型性に基づくが、これはsecp256k1上でのECDSAにも存在するため、プロトコルはビットコインとネイティブに互換性を持つ。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。