-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Secret Keeper Application #745
Secret Keeper Application #745
Conversation
@chenchanglew Can you please rebase your PR as we merged the fix for the broken GH actions |
e345811
to
c9880d4
Compare
Secret Keeper has 5 functions. InitSecretKeeper: - This function will initialize the key "AUTH_LIST_KEY" with value ["Alice", "Bob"] and key "SECRET_KEY" with value "DefaultSecret". - This function should only be called once when the application started. - Of course a malicious user can call this function to reset the value, but this we will assume this is not what an attacker would want to achieve. RevealSecret: - This function allow users that in the Authlist ("AUTH_LIST_KEY") able to reveal the value of secret stored under key "SECRET_KEY". LockSecret: - This function allow users that in the Authlist ("AUTH_LIST_KEY") able to store a new value of secret under key "SECRET_KEY". - The old value will be replaced. AddUser: - This function allow users that in the Authlist ("AUTH_LIST_KEY") able to add a new user to the Authlist. - Then the new user can now perform the following four functions (RevealSecret, LockSecret, AddUser, RemoveUser) RemoveUser: - This function allow users that in the Authlist ("AUTH_LIST_KEY") able to add remove an existing user off the Authlist. - Then the removed user can no longer able to perform the following four functions (RevealSecret, LockSecret, AddUser, RemoveUser) Example using fpc-simple-client: ./fpcclient invoke initSecretKeeper ./fpcclient query revealSecret Alice ./fpcclient invoke lockSecret Bob NewSecret ./fpcclient query revealSecret Alice ./fpcclient invoke removeUser Alice Bob ./fpcclient query revealSecret Alice ./fpcclient query revealSecret Bob // (will failed) ./fpcclient invoke addUser Alice Bob ./fpcclient query revealSecret Bob // (will success) -------- * implement secret keeper demo * debug * create unit test mock rollback attack --------- Co-authored-by: Chen Chang Lew <lew@stromness.zrl.ch.ibm.com> Co-authored-by: tester <tester@fpc> Signed-off-by: chenchanglew <chelew@student.ethz.ch> Signed-off-by: chenchanglew <lewchenchang@gmail.com>
17fca80
to
f45665c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about adding a readme file in the chaincode secret-keeper folder with a description on what it does and how to use it.
Thanks @chenchanglew, the added README looks good to me. @munapower could you please check this PR? Thanks |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor changes to readme to make it easier to follow.
58e4f79
to
3d78b59
Compare
Signed-off-by: chenchanglew <lewchenchang@gmail.com>
Signed-off-by: chenchanglew <lewchenchang@gmail.com>
3d78b59
to
840dbf1
Compare
All the comments has been resolved |
What this PR does / why we need it:
Create a new demo application ~ Secret Keeper
Secret Keeper has 5 functions.
InitSecretKeeper:
Example using fpc-simple-client:
./fpcclient invoke initSecretKeeper
./fpcclient query revealSecret Alice
./fpcclient invoke lockSecret Bob NewSecret
./fpcclient query revealSecret Alice
./fpcclient invoke removeUser Alice Bob
./fpcclient query revealSecret Alice
./fpcclient query revealSecret Bob // (will failed) ./fpcclient invoke addUser Alice Bob
./fpcclient query revealSecret Bob // (will success)
Which issue(s) this PR fixes:
This is just create a new application for ppc example
Special notes for your reviewer: