OpenZeppelin
Skip to content

Introducing the Transaction Permission Layer (TPL) Protocol

By Demi Brener and Connor Spelliscy

The fear, uncertainty, and doubt in crypto have slowed the pace of innovation in the space.

Current blockchain protocols lack an effective governance mechanism that ensures transactions comply with rules. Such rules may be imposed internally by stakeholders in the crypto ecosystem or externally by the relevant regulatory frameworks governing blockchain transactions.

The adoption of a governance mechanism that enables compliance with all sets of rules would allow for efficient and decentralized transactions, while also encouraging the broader adoption of crypto. This would create conditions under which transformative blockchain technologies can thrive and even replace existing cumbersome and inefficient systems.

Our Proposed Solution

We propose an on-chain protocol called the Transaction Permission Layer (the “TPL”) that will allow blockchain projects to control the ways in which their native digital assets are transferred. The TPL protocol will do this by imposing a set of requirements as prerequisites to executing transactions and validating whether proposed token transfers are compliant with these requirements prior to execution.
The TPL protocol enables the creation of digital jurisdictions with rules that are administered and regulated on-chain by a collective of crypto stakeholders (a “Governance Collective”). Each Governance Collective is formed around a common interest in ensuring that transactions within the digital jurisdiction comply with stipulated requirements. Governance Collectives could set any requirements that are able to be validated and recorded in an on-chain registry.

For example, a Governance Collective could require that transactions only occur between parties who: (i) are part of a project’s Slack group, (ii) are US accredited investors, (iii) have satisfied KYC/AML requirements, or (iv) will not hold more than $10,000 USD worth of a particular token if a proposed transaction is completed. The stakeholders that form part of a Governance Collective may include wallets, exchanges, operating systems, law firms, advocacy groups, etc.

The Governance Collectives authorize organizations (“Certificate Validators”) which certify the details of parties participating in digital jurisdiction (“Participants”) and ensure that transfers only occur between compliant Participants. Certificate Validators could be any trusted organization (including the project developers themselves) providing validation services to Participants in exchange for a fee (e.g., Verisign) or for free (e.g., Lets Encrypt).

A successful Governance Collective will be composed of a group of trustworthy parties that maximize value for Participants by designing their digital jurisdiction to act consistently with the requirements set by the Governance Authority, and select and audit capable Certificate Validators.

Use Case Example: Excluding North American Investors

ABC crypto project chooses to operate within the boundaries of a digital jurisdiction of the TPL protocol

  • The digital jurisdiction chosen by ABC does not permit sales of tokens to North American investors (“Example Jurisdiction”)
  • The Governance Collective that created the Example Jurisdiction chooses Certificate Validators that screen registrants to determine their nationality and associated public key
  • These Certificate Validators put this information on-chain

Alice wants to buy an ABC token

  • When Alice attempts to buy an ABC token, the TPL protocol queries the on-chain list of Participants to determine whether or not she is a North American investor
  • If Alice is not registered with any of the Certificate Validators and/or she is a North American investor, then the transaction fails
  • If Alice is registered with a Certificate Validator and she is not a North American investor, then the transaction proceeds

The chart below illustrates the approval of a transaction within a Governance Collective’s jurisdiction.

Benefits of the TPL Protocol

By using the TPL protocol, a project can require that the buyers of its digital assets meet the requirements set out by one or more Governance Collectives. Prior to automatically permitting a token transfer, the TPL protocol ensures that Participants meet these requirements by querying the information provided on-chain by the relevant Certificate Validators.

Any wallet, operating system or exchange (either traditional or decentralized) can choose to adhere to this protocol throughout the ongoing relationship between Participants, rather than solely at the initial stage of token distribution. This would enable parties to transact continuously in a manner compliant with the rules of the digital jurisdiction.

We believe that the TPL protocol will provide two major benefits to the blockchain community: (i) improving the pace of the development of blockchain technology by providing for an efficient and rational method of regulating the distribution and transfer of tokens; and (ii) creating digital jurisdictions tailored to the needs of different stakeholders.

We’ve continued to build out the TPL protocol as we receive input from the crypto community. If you’d like to learn more about the TPL protocol, please see our previous post, framework proposal, and proof of concept for smart contracts implementing TPL protocol.

Project Development Roadmap

  1. June 2018 — Gather community interest for incorporating TPL into OpenZeppelin to allow any developer to easily introduce TPL protocol-based rules within its digital asset
  2. June 2018 — Launch first demo Dapp to show the community how Participants can easily be verified and participate in permissioned transactions from their browser, using existing tools
  3. June/July 2018 — Publish update on progress
  4. August 2018 — Form the first Governance Collectives based on the issues that are most important to the crypto community

If you’re interested in participating in a Governance Collective, becoming a Certificate Validator, contributing to the development of the TPL protocol, or have ideas on how the TPL protocol could be used to benefit the crypto community, we’d love to hear from you here.

Thanks to Wenchi Hu, Nick Grossman, Robbie Bent, Adon Moss, Zac Skeith, Santiago Palladino, Alejandro Machado, Tekin Salimi, Michael Partridge and Billy Rennekamp for feedback and conversations which contributed to this post.