Formal Modelling and Security Analysis of Bitcoin's Payment Protocol
Paolo Modesti, Siamak F. Shahandashti, Patrick McCorry, Feng Hao

TL;DR
This paper provides a formal security analysis of Bitcoin's Payment Protocol (BIP70), identifies vulnerabilities related to refund address authentication, and proposes a protocol revision to mitigate these security issues.
Contribution
It introduces the first formal model of the protocol, formalizes refund address security goals, and proposes a verified protocol revision to enhance security.
Findings
The original protocol is vulnerable to refund address authentication attacks.
The proposed revision supports verifiable evidence for merchants.
The revised protocol satisfies formal security goals against known and potential attacks.
Abstract
The Payment Protocol standard BIP70, specifying how payments in Bitcoin are performed by merchants and customers, is supported by the largest payment processors and most widely-used wallets. The protocol has been shown to be vulnerable to refund attacks due to lack of authentication of the refund addresses. In this paper, we give the first formal model of the protocol and formalise the refund address security goals for the protocol, namely refund address authentication and secrecy. The formal model utilises communication channels as abstractions conveying security goals on which the protocol modeller and verifier can rely. We analyse the Payment Protocol confirming that it is vulnerable to an attack violating the refund address authentication security goal. Moreover, we present a concrete protocol revision proposal supporting the merchant with publicly verifiable evidence that can…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
