Allow Makers to deeplink to Helium to sign transactions
cokes518 opened this issue · 0 comments
For improved security best practices, we should remove the part of the onboarding flow where users enter their 12 words into a maker app, and instead, have the maker app request a helium wallet to sign transactions with the user's private key.
The onboarding flow for the maker app would start with linking a wallet address with the maker app with CTA to link from a supported Helium wallet app, or download a supported Helium wallet app.
Users will be asked to approve/link to the maker app from a Helium wallet app. The two apps are now linked together and can sign transactions on behalf of the maker app.
Transactions we'll support in this starter app:
add_gateway
transfer_hotspot_v2
assert_location
Example flow (once linked):
user adds a Hotspot (maker app) > partial transaction deep linked to Helium app > user confirms transaction on Helium app > passes back partial transaction back to maker app > maker app submits transaction to the blockchain using the maker's desired API endpoint, hitting their desired onboarding server.
user updates a Hotspot location (maker app) > partial transaction deep linked to Helium app > user confirms transaction on Helium app > passes back partial transaction back to maker app > maker app submits transaction to the blockchain using the maker's desired API endpoint
User imitates transfer_hotspot_v2 transaction (maker app) > partial transaction deep linked to Helium app > user confirms transaction on Helium app > passes back partial transaction back to maker app > maker app submits transaction to the blockchain using the maker's desired API endpoint