Skip to content

ucpi/ucpikms-v1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐”๐‚๐๐ˆ๐ƒ๐Š๐Œ๐’-๐ฎ๐œ๐ฉ๐ข ๐๐ž๐œ๐ž๐ง๐ญ๐ซ๐š๐ฅ๐ข๐ณ๐ž๐ ๐ค๐ฆ๐ฌ ๐›๐ฎ๐ข๐ฅ๐ ๐จ๐ง ๐ฌ๐ž๐œ๐ซ๐ž๐ญ ๐›๐ฅ๐จ๐œ๐ค๐œ๐ก๐š๐ข๐ง
#๐—ณ๐—ฒ๐—ฎ๐˜๐˜‚๐—ฟ๐—ฒ๐˜€
web3 alternative for key management
fully decentralized kms
no root access
controled by user
login and signup by google
can be used for encrypting and decrypting data
#๐—›๐—ผ๐˜„ ๐—ถ๐˜ ๐˜„๐—ผ๐—ฟ๐—ธ๐˜€?
(First time user signup)
1)user authenticate him/her on frontend
2)ID token is received(in form of JWT)
3)temporary private/public pair generated
4)faucet supplies some scrt so that user can interact with secret blockchain
5)new secret smartcontract is intialized and mapped to users email address
6)this mapping of address is saved to main ucpi mapping for future reference
7)a new private key is generated and stored in smartcontract along with hash of jwt
8)jwt is send to different nodes which verify the jwt and votes it yes if it is true and no if is wrong
9)if more than 50% votes are for yes private key is saved

(login if user has alredy signup)
1)user authenticate him/her on frontend
2)ID token is received(in form of JWT)
3)temporary private/public pair generated
4)faucet supplies some scrt so that user can interact with secret blockchain
5)ucpi mapping gives the address of the email address as it will be saved on ucpi smartcontract
6)hash of JWT is send and mapped from temp address and send to smartcontract of user.
8)jwt is send to different nodes which verify the jwt and votes it yes if it is true and no if is wrong
9)if more than 50% votes are for yes private key is retrived in the frontend

#๐‡๐จ๐ฐ ๐ญ๐จ ๐ ๐ž๐ญ ๐ฌ๐ญ๐š๐ซ๐ญ๐ž๐?
๐—ฆ๐—˜๐—ง๐—จ๐—ฃ ๐—ก๐—ข๐——๐—˜๐—ฆ
nodes setup for ucpidkms

๐’๐„๐“๐”๐ ๐‘๐„๐€๐‚๐“ ๐€๐๐
1)clone this repository
2)replace the localhost:4200,localhost:4300,localhost:4400 with your node address
3)replace the process.env.REACT_APP_CLIENT_ID by your google client id
4)npm i --force
5)npm start

About

decentralized kms (build on secret network) using web2 auth methods

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published