I made a Whimsical diagram describing the FIL address creation and how co-signing works.
'Step 1: App Signup / Login
Users login with a Fission account or sign up for a new one.
We generate a new FIL address for them with BLS.
Stored in Fission WNFS and encrypted, which syncs to IPFS.
- Device linking for access on other devices
- Account Recovery for catastrophic restore
Future: export the BLS fragment so it can be imported into any other Fission account / connected to the Co-Signer.
Step 2: File / Storage Deal Management
Upload some files / select files from their existing WNFS storage.
Create a Backup, submit it for a Storage Deal.
(Various core backup app activities)
Step 3: Send funds from Local
Submit a transaction to send funds from local to pay for storage deals.
Local key is combined with co-signer key to approve transfer of funds from local address to Lotus instance.
Lotus Single Key
Right now, Lotus has a single key for the instance. So, we can’t flow through transactions from the user directly to the Filecoin blockchain: you’re always sending funds to a Lotus instance, which then pays on your behalf for storage deals.