Skip to content
Snippets Groups Projects
Benjamin Gallois's avatar
Benjamin Gallois authored
* check live tests

* cargo check benchmarks after rebase

* cargo check tests after rebase

* update metadata after rebase

* cargo check after rebase

* cargo fmt after rebase

* upgrade runtime to polkadot v1.6.0

upgrade node to polkadot v1.6.0

upgrade distance oracle to polkadot v1.6.0

upgrade end2end tests

upgrade xtask to polkadot v1.6.0

update repository paths to duniter polkadot v1.6.0

fix #131

optimize end2end test

fix review errors

update subxt branch

update test comment
93853b2d
History
Name Last commit Last update
..
src
Cargo.toml
README.md

Duniter identity pallet

Duniter has a builtin identity system that does not work with external registrar compared to parity identity pallet.

Duniter identity

A Duniter identity contains:

  • its owner key (that can change)
  • an optional old owner key with the date of the key change
  • a status that can be
    • unconfirmed (created by a member identity)
    • unvalidated (confirmed by owner = given a name)
    • member (of the main wot)
    • notmember (of the main wot)
    • revoked (automatically of manually)

It also contains:

  • the block number at which it can emit its next certification (TODO distinguish next certification and next identity creation)
  • the block number at which it can be removed from storage

It also contains attached data defined by the runtime that can be for example

  • the number of the first UD it is eligible to

Name

Each identity is declared with a name emited on confirmation event. Duniter keeps a list of identity names hash to ensure unicity.

Owner key

The idea of the owner key is to allow the user to keep a fixed identity while changing the keys for security reasons. For example when a device with the keys might have been compromised. There is a limit to the frequency of owner key change and the old owner key can still revoke the identity for a given period.

Status / removable date

The status is a temporary value allowing to prune identities before they become member. When an identity is not valiated (not member of the WoT for instance), it can be removed when the date is reached. The remove date of a validated identity is block zero.

Next certification

The next certification is a rate limit to the emission of certification (and then identity creation).

Revokation

Revoking an identity basically means deleting it.