verida / blockchain-contracts

Smart contracts, part of the protocol powering the Verida Network
https://www.verida.network
Apache License 2.0
7 stars 2 forks source link

[name-registry] Support registering an application #158

Closed tahpot closed 4 months ago

tahpot commented 5 months ago

Add a new method registerApp(did: string, ownerName: string, appName: string, metadata: string[]). This registers an application as being owned by a given did and associates a domain name with it.

For example; Register the Verida: Vault application context to be controlled by a Verida did with metadata:

{
  domain: 'verida.network',
  icon: 'https://assets.verida.network/icon/png'
}

Requirements:

Add a new method getApp(ownerName: string, appName: string). This returns the did and metadata.

Requirements:

Add a new method deregisterApp(did: string, ownerName: string, appName: string). This de-registers an application.

Requirements:

Add a new method updateApp(did: string, ownerName: string, appName: string, domain: string, metadata: string). This updates the metadata for a registered application.

Requirements:

-The updateApp() request must be signed by the owner did. Throws invalid request signature