Dapp

Core Functionalities

The application contract enables the following actions by the applications built upon RADIAN. The application performs the following functionalities:

  1. Registration of Application

  2. Set up fees for the application

  3. Set up a receiver address for receiving the fee paid to the application

  4. Give permission to profiles to use the application (See Profile Contract)

Registration of Application

The Application Contract is permissionless. Anybody with a wallet address can sign a transaction to register as an application. After registering as an application, the registered address can be used to authorize any content to be used in the application.

Application Level Fees

A registered application can set up an application-level fee. The fee types are listed below:

  1. Fixed Fee: Fee involved in invoking contract functions sent from the dApp

  2. Tip Fee: Percentage of tip paid to the dApp

  3. Trade Fee: Percentage of NFT transaction fee paid to the dApp

Receiver Address

The receiver address is the address that an application would like to use for receiving fees specified above.

Permission and Censorship

This part of the application contract works within our censorship policy. User data is represented as a CID hash (as in IPFS) or a transaction hash (as in Arweave). Our censorship policy gives power to the application to censor what can or cannot be seen in their application using the permission tag on the hash. The application can either directly sign a transaction or indirectly sign a message that enables the user to set a flag on their content hash. The frontend that subscribes to the application censorship scheme then can censor data in the frontend.

Such an approach does not disable data publishing by the user, it only disables the display of the data within the application itself. As there could be numerous applications that are built on the RADIAN infrastructure, users can usually find a couple of applications that are willing to display their content (even if it is extremely offensive).

Even in the case that no applications are willing to display this content, it can still be viewed by users who choose to apply none of the application censoring schemes. Such a setup lets writers have unlimited freedom to post any data, and readers have unlimited freedom to read any data. Applications are only the tools that facilitate the reading and writing of the data, with a small fee attached.

The writer is responsible for the creation of the data.

The application is responsible for the distribution of the data.

The reader is responsible for choosing the application/filtering system that feeds them content to read.

This is what we call freedom of speech.

Last updated