Closed DylanVerstraete closed 8 months ago
tfchain activation script: https://gist.github.com/DylanVerstraete/8b1a4439721ab078e722fb09abc3e8a1
The Threebot-Deployer implemented in https://github.com/threefoldtech/threebot-deployer
The story is pending on the flist, right now the website uses an ubuntu flist.
i'll move that to web_proxy project
We want to have a deployer app that can deploy a web3 proxy (threebot) for a user.
Components:
Key management
The threebot will be controlled with an ethereum wallet, in this case it will be Metamask extension. Authentication to the threebot will be controlled with this metamask wallet. When the Threebot is created, the public key a wallet in metamask will be passed for future verficiation. When a user want's to interact with the Threebot (Modify state) he needs to sign a random message that is generated on the server
authenticate(message, signature)
and sent this back to the server.Additional keys
Both keys will be generated before the Threebot is created. The tfchain key will be used to create the threebot deployment. We need the following flow before we can deploy a Threebot:
When this flow is completed, the deployer can use the tfchain to deploy the Threebot. Once deployed, the user will have 1 hour to fund the tfchain address with additional tokens until his contract is put into grace state (automically done by the billing)
Deployment variables to deploy a Threebot:
ETH_PUBLIC_KEY
TFCHAIN_KEY
SSH_KEY
To do:
ETH_PUBLIC_KEY
andTFCHAIN_KEY
andSSH_KEY
ETH_PUBLIC_KEY
environment variable if no key is passed in the requestETH_PUBLIC_KEY
, this then allows the user to modify state (need to indentify which state calls these are)