Description
KVService is a Zero-Trust Key-Value storage space for any user who has an elliptic curve-based asymmetric key pair (aka Avatar.
It is designed as a git-like patch chain, so there is a possibility to implement a revert function, which allows the user to undo a specific change he/she has accidentally made before.
- This
revert action should also be a link in the patch chain, and should be signed by the user’s Avatar.
- When a
revert is done, the entire KV state from the beginning of the KVChain should be updated.
Have a look at ProofService’s Proof Chain to help you understand this chain structure.
Expected outcomes
Modify model/kv_chains (the place to store the whole chain), model/kv (snapshot of a chain’s final status) and /controller to add a action field with possible values create and revert .
And correctly handles action: revert request.
Don’t forget to write unit tests.
Skills required
- Rust
- Basic knowledge of database
Mentor
Nyk Ma @nykma
Expected size of project
175h
Level
Easy
Description
KVService is a Zero-Trust Key-Value storage space for any user who has an elliptic curve-based asymmetric key pair (aka Avatar.
It is designed as a
git-like patch chain, so there is a possibility to implement arevertfunction, which allows the user to undo a specific change he/she has accidentally made before.revertaction should also be a link in the patch chain, and should be signed by the user’s Avatar.revertis done, the entireKVstate from the beginning of theKVChainshould be updated.Have a look at ProofService’s Proof Chain to help you understand this chain structure.
Expected outcomes
Modify
model/kv_chains(the place to store the whole chain),model/kv(snapshot of a chain’s final status) and/controllerto add aactionfield with possible valuescreateandrevert.And correctly handles
action: revertrequest.Don’t forget to write unit tests.
Skills required
Mentor
Nyk Ma @nykma
Expected size of project
175h
Level
Easy