12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- @startuml
- title "Crypto Wallet Process(1),(2)"
- boundary User_Page as up
- participant Frontend_Server as fe
- participant Backend_Server as be
- database Prod_database as db
- database Remote_database as udb
- participant Ethereum_Geth as geth
- autonumber
- note over up
- (1) GetBalance
- (/dangnn-wallet-balance)
- end note
- up->fe: Wallet Account Page
- fe->be: loggin user id
- be->db: find wallet record
- db->be: wallet accout addr
- note over be: Call Geth fuction
- be->geth: request account balance
- geth->be: accout balance
- be->fe: current accout balance
- fe->up: show account balance
- note over up:
- note over up:
- autonumber
- note over up
- (2) Create Wallet
- /dangnn-wallet-create
- end note
- up->fe: create wallet
- fe->be: loggin user id
- note over be: Call Geth Create Wallet
- be->geth: create wallet
- geth->be: private_key & account addr
- note over be
- (1) get encryption key
- (2) with DB connection string Hash
- end note
- be->udb: request AES-256 encryption key\n with SHA-256 Hash conn string
- udb->be: AES-256 encryption key
- note over be : encrypt Private_key\nwith AES encrypt key
- be->db: save encrypted private key & account addr
- db->be: save OK
- be->fe: request OK
- fe->up: show creation OK
- @enduml
|