54 个版本 (35 个主要版本)
37.0.0 | 2024 年 7 月 18 日 |
---|---|
36.0.0 | 2024 年 7 月 12 日 |
35.0.0 | 2024 年 6 月 24 日 |
34.0.0 | 2024 年 5 月 23 日 |
2.0.0-alpha.5 | 2020 年 3 月 24 日 |
#1384 in 神奇豆子
每月下载量 6,224 次
用于 60 个组件(直接使用 9 个)
2.5MB
40K SLoC
身份模块
概述
一个联邦命名系统,允许从指定源添加多个注册人。注册人可以为提供身份验证服务设置费用。任何人都可以提交一个身份提案进行固定存款,并要求任何数量的注册人进行审核(支付他们的费用)。注册人判决以一个 枚举
形式给出,允许复杂的、多层次的意见。
某些判决被标记为 粘性的,这意味着除非完全删除身份或由注册人删除,否则无法删除。判决可以代表为注册人预留的部分资金。
超级用户可以删除账户,并在此过程中削减存款。
所有账户也可能有有限数量的子账户,这些账户可以由所有者指定;根据定义,这些账户具有等效的所有权,每个账户都有一个单独的名称。
注册机构的数量应有限制,存款应足够大,以确保没有国家膨胀攻击可行。
界面
可调度函数
对于普通用户
set_identity
- 设置账户的相关身份;如果没有已占用,则保留一小笔存款。clear_identity
- 删除账户的相关身份;退还存款。request_judgement
- 向注册机构请求裁决,支付费用。cancel_request
- 取消之前的裁决请求。
对于具有子身份的普通用户
set_subs
- 设置身份的子账户。add_sub
- 向身份添加子身份。remove_sub
- 删除身份的子身份。rename_sub
- 重命名身份的子身份。quit_sub
- 删除身份的子身份(由子身份调用)。
对于注册机构
set_fee
- 设置注册机构提供裁决所需的费用。set_fields
- 设置注册机构在裁决中关心的字段。provide_judgement
- 向身份提供裁决。
对于超级用户
add_registrar
- 向系统添加新的注册机构。kill_identity
- 强制删除相关身份;存款将丢失。
许可证:Apache-2.0
依赖项
~18-33MB
~557K SLoC