Skip to content
Snippets Groups Projects
Select Git revision
  • 5aa9cbb23261a80aa0a35839750d20ac4528fbb0
  • master default protected
  • patch-1
  • issue_4
  • issue_780
  • gitlab_migration_1
  • dev
  • rml8
  • v1.3.2
  • v1.3.1
  • v1.3.0
  • v1.2.10
  • v1.2.9
  • v1.2.8
  • v1.2.7
  • v1.2.6
  • v1.2.5
  • v1.2.4
  • v1.2.3
  • v1.test.3
  • v1.test.2
  • v1.test.1
  • v1.2.2
  • v1.2.1
  • v1.2.0
  • v1.1.9
  • v1.1.8
  • v1.1.7
28 results

github.sh

Blame
  • Forked from clients / Cesium-grp / Cesium
    Source project has a limited visibility.
    lib.rs 45.01 KiB
    // Copyright 2021-2023 Axiom-Team
    //
    // This file is part of Duniter-v2S.
    //
    // Duniter-v2S is free software: you can redistribute it and/or modify
    // it under the terms of the GNU Affero General Public License as published by
    // the Free Software Foundation, version 3 of the License.
    //
    // Duniter-v2S is distributed in the hope that it will be useful,
    // but WITHOUT ANY WARRANTY; without even the implied warranty of
    // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    // GNU Affero General Public License for more details.
    //
    // You should have received a copy of the GNU Affero General Public License
    // along with Duniter-v2S. If not, see <https://www.gnu.org/licenses/>.
    
    //! # Duniter Identity Pallet
    //!
    //! Duniter features a built-in identity system that does not rely on external registrars, unlike the [Parity Identity Pallet](https://github.com/paritytech/substrate/tree/master/frame/identity).
    //!
    //! ## Duniter Identity Structure
    //!
    //! A Duniter identity comprises several key components:
    //!
    //! ### Name
    //!
    //! Each identity is declared with a name emitted during the confirmation event. Duniter maintains a hashed list of identity names to ensure uniqueness.
    //!
    //! ### Owner Key
    //!
    //! The owner key allows users to maintain a fixed identity while changing keys for security reasons, such as when a device with the keys might have been compromised. Changes are subject to frequency limits, and the old owner key can still revoke the identity for a given period.
    //!
    //! ### Status / Removable Date
    //!
    //! The status is a temporary value that allows pruning of identities before they become full members:
    //!   - **Unconfirmed**: Created by a member identity but not yet confirmed by the owner.
    //!   - **Unvalidated**: Confirmed by the owner, including assignment of a name.
    //!   - **Member**: Part of the main Web of Trust (WoT).
    //!   - **NotMember**: Not part of the main WoT.
    //!   - **Revoked**: Automatically or manually revoked.
    //!
    //! An identity that is not yet validated (e.g., not a member of the WoT) can be removed when its removable date is reached. The removable date of a validated identity is set to block zero.
    //!
    //! ### Next Certification
    //!
    //! The next certification specifies the block number from which the identity can issue its next certification, acting as a rate limit for certification issuance and identity creation.
    //!
    //! ### Revocation
    //!
    //! Revoking an identity essentially means deleting it from the system.
    //!
    //! Additional runtime-defined data may also be attached to identities, such the number of the first Universal Dividends (UD) it is eligible to.
    
    #![cfg_attr(not(feature = "std"), no_std)]
    #![allow(clippy::type_complexity)]
    
    pub mod traits;
    mod types;
    pub mod weights;
    
    #[cfg(test)]
    mod mock;
    
    #[cfg(test)]
    mod tests;
    
    pub mod benchmarking;
    
    pub use pallet::*;
    pub use types::*;