Travel Rule Protocol (TRP)

Protocol details

Open Source

Yes

Decentralized

Yes

Data transport protocol

RESTful API, HTTPS. TLS 1.3 used to secure all protocol traffic.

Blockchain based

No

VASP authentication method

Direct, Certificate Authority. Clients authenticated using a X.509 certificate.

Overview

The Travel Rule Protocol Working Group (TRPWG) is a global, open, independent, non-profit industry body of more than 25 leading VASPs across more than ten FATF member jurisdictions. TRPWG was founded by and the first draft version of the TRP protocol was created by Standard Chartered, ING and BitGo.

The TRPWG is behind the TRP which is built on on popular technologies, like LNURL, to allow fast and safe transaction information between parties. TRP is REST-based with an HTTP standard.

The TRP specifications are available on the OpenVASP association public GitLab organisation. The further development of the standard as well as its extensions happen through GitLab merge requests and issues, the OpenVASP Slack, and the weekly call of the TRP working group.

TRP is a closed loop system that requires individual VASPs to agree to communicate with each other via mTLS / X.509 certificates. As such, it requires bilater communication between VASPs before a transaction is processed. TRP is also dependent on LNURLs which have yet to be implemented on a wide scale.

Registration & set-up process

  • VASPs are authenticated using X.509 certificates, thus VASPs must acquire such a certificate and are free to choose a Certificate Authority (CA) of their choice.

  • Beyond that, VASPs mush expose a number of or RESTful endpoints, exact details to be confirmed.

  • In addition, and entirely optional, zero or more extensions can be supported. VASPs are expected to agree on a bilateral basis on which extensions they will use.

TRP appears to be dependent on LNURLs for identifying who owns an address. It is not clear at this point if the protocol will support other "address discovery" mechanisms.

Transfer workflow(s)

trp data share
Sequence diagram text file

To generate or update the diagram above, paste the following into https://sequencediagram.org/

title Travel Rule Protocol (TRP) workflow

recipient->bVASP:I would like to receive funds
bVASP->bVASP:Generates LNURL
bVASP->recipient:Gives LNURL to recipient
recipient->sender:Gives LNURL to sender
sender->oVASP:Submits withdrawal request (LNURL, recipient info)
oVASP->oVASP:Decode LNURL and risk checks
oVASP->bVASP:Send IVMS
bVASP->bVASP:Risk checks
bVASP->oVASP:Approve/Reject transfer
oVASP->oVASP:Screen destination address
oVASP->on-chain:on-chain transfer
oVASP->bVASP:Post data about on-chain transfer

For more information, see the Veriscope documentation on end-to-end flow.