contract-validation-metamask.uml 993 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. @startuml
  2. title "Contract Vefication with MetaMask"
  3. boundary User_Page as userpage
  4. participant Frontend_Server as fe
  5. participant Backend_Server as be
  6. database db
  7. participant MetaMask as mt
  8. participant Ethereum_Net as eth
  9. autonumber
  10. fe->be: send contract addr
  11. be->db: find if contract addr exists
  12. note over db #99FF99
  13. <b>contract-creator</b>
  14. <b>ownership</b>
  15. scaned and saved
  16. During sync-block
  17. end note
  18. db->be: contract creator's addr
  19. be->fe: creators addr \nif contract addr exists
  20. note over fe
  21. (1) creator's addr
  22. (2) message to sign
  23. end note
  24. fe->mt: metamask call
  25. /'6'/
  26. mt->eth: request sinature by private key
  27. note over mt
  28. (1) metamask login
  29. (2) get Ether Signature
  30. end note
  31. mt->eth: request sinature by private key
  32. eth->mt : Ether Signature
  33. mt->fe: Message Signature Hash
  34. note over fe
  35. (1) Creator's addr
  36. (2) signed message
  37. (3) Message Signature Hash
  38. end note
  39. fe->be: Signature validation
  40. note over be
  41. Ether Sign Validation
  42. end note
  43. be->fe: validation OK.
  44. @enduml