🏦The Nota Registrar

The token escrower and Nota issuer

The Nota Registrar is the main contract that users and other dApps will interact with. It is responsible for the accounting of funds and Nota issuance as well as governing hook/token whitelisting. The protocol uses a singleton + hook architecture which comes with a number of benefits.

Features

  • Simple: Under 300 lines of code with most being getter functions

  • Extensible: Hooks will add new functionalities to the Nota Registrar over time

  • Non-upgradeable: Limited governance which only affects whitelisting (for now) new hooks/tokens and updating the contractURI

  • Frictionless: Singleton + hook reduces token approval friction and improves developer experience

  • Standard: The registrar uses ERC4096 for updating Nota data in a trustless manner

How It Works

The protocol escrows money and issues Notas while hooks are the rules for a Nota's escrow and ownership. This process of calling the registrar and activating a hook works for the main functions the registrar outlines: Writing, Transferring, Funding, Cashing, Approving, and tokenURI (WTFCAT is a short mnemonic) with each having a bytes argument for custom hook-specific arguments.

Why Use a Hook Architecture?

Hooks has become something of a Schelling point in crypto. The benefits for Denota protocol in particular are:

  • Extensibility- new hooks means new functionalities. This invites others to create and customize their escrows for their own specific needs which not only solves their problem but helps others take inspiration for their own.

  • Visibility- each hook that is added to the registrar is automatically visible to anyone also using the registrar. For developers this means better distribution for their creations and potentially increasing their revenue.

  • Root of Trust- since the token transferring and escrow ownership accounting is the most susceptible part of an escrow, developers that trust the registrar also inherit the security of it's code. It being rigorously audited gives developers higher security assurances from the get go.

  • Simplification- developers only have to think about writing the logic for their specific hook and not write accounting and escrowing logic from scratch. The registrar and accompanying hook templates give devs a framework to build off of.

  • Cheaper Audits- devs don't have to audit as many lines of code. We also make the auditing cheaper through subsidies.

  • Cheaper gas costs- the registrar has been maximally optimized for gas savings (while still preserving privacy) which would cost developers a great deal extra if they even optimize at all. In the end this is cheaper for end users which means developers

  • Easier querying- our subgraph works for any hook.

  • Better tooling- Our sdk

Last updated