[#48] frostfsid: Update contract #40
1 changed files with 12 additions and 10 deletions
|
@ -8,16 +8,18 @@ FrostFSID contract does not produce notifications to process.
|
|||
|
||||
# Contract storage scheme
|
||||
|
||||
| Key | Value | Description |
|
||||
|---------------------------------------------------------------------------------|--------------------------------|----------------------------------------------------|
|
||||
| `o` + [ owner address ] | []byte{1} | contract owners that can invoke write methods |
|
||||
| `s` + [ subject address ] | Serialized Subject structure | subject into |
|
||||
| `a` + [ pk address ] + [ subject address ] | []byte{1} | link extra public keys for subject |
|
||||
| `n` + [ RIPEMD160 of namespace ] | Serialized Namespace structure | namespace info |
|
||||
| `N` + [ RIPEMD160 of namespace ] + [ subject address ] | []byte{1} | subject that belongs to the namespace |
|
||||
| `l` + [ RIPEMD160 of namespace ] + [ RIPEMD160 of subject name ] | Subject public key | subject name to public key index |
|
||||
| `g` + [ RIPEMD160 of namespace ] + [ RIPEMD160 of group ] | Serialized Group structure | group into |
|
||||
| `G` + [ RIPEMD160 of namespace ] + [ RIPEMD160 of group ] + [ subject address ] | []byte{1} | subject that belongs to the group |
|
||||
| Key | Value | Description |
|
||||
|------------------------------------------------------------------------------|--------------------------------|-----------------------------------------------|
|
||||
| `o` + [ owner address ] | []byte{1} | contract owners that can invoke write methods |
|
||||
|
||||
| `s` + [ subject address ] | Serialized Subject structure | subject into |
|
||||
| `a` + [ pk address ] + [ subject address ] | []byte{1} | link extra public keys for subject |
|
||||
| `n` + [ RIPEMD160 of namespace ] | Serialized Namespace structure | namespace info |
|
||||
fyrchik marked this conversation as resolved
Outdated
fyrchik
commented
Is there any reason we use RIPEMD instead of SHA256 which is also supported by the VM? Is there any reason we use RIPEMD instead of SHA256 which is also supported by the VM?
dkirillov
commented
specifically for this key there isn't any reason besides consistency and possibility reusing already computed ns hash for other keys (but currently as I see we don't do this) specifically for this key there isn't any reason besides consistency and possibility reusing already computed ns hash for other keys (but currently as I see we don't do this)
|
||||
| `N` + [ RIPEMD160 of namespace ] + [ subject address ] | []byte{1} | subject that belongs to the namespace |
|
||||
| `l` + [ RIPEMD160 of namespace ] + [ RIPEMD160 of subject name ] | Subject public key | subject name to public key index |
|
||||
| `g` + [ RIPEMD160 of namespace ] + [ 8 byte group id ] | Serialized Group structure | group into |
|
||||
| `G` + [ RIPEMD160 of namespace ] + [ 8 byte group id ] + [ subject address ] | []byte{1} | subject that belongs to the group |
|
||||
| `c` | Int | group id counter |
|
||||
| `m` + [ RIPEMD160 of namespace ] + [ RIPEMD160 of subject name ] | Serialized group id int | group name to group id index |
|
||||
|
||||
|
||||
*/
|
||||
|
|
Loading…
Reference in a new issue
What kind of "owners" can be here besides the committee?
In case of TO this can be CM or IAM. But we have not decided yet should it be someone besides the committee @alexvanin
We want to have external validators. They can validate email, phone number or any other claim user may have. It isn't committee work to validate and approve such things.
These validators can create multi-signed transaction and multiaddress can be added as owner. These owners managed by committee \ consensus.
In trusted networks, validator key addresses can be added as owner, for example IAM service instances.