It’s currently impossible to conduct operations on user data when the user is not currently accessing the web application (‘off-client’?). Technically, an application could interact with user data whenever they want by configuring a multi-reader account which the user shares data with, but that’s not ideal at all – the application with read-privileges could easily abuse the user’s data.
One solution to said problem is what I’d describe as an “exposed” microservice cloud, or a cloud of publicly-visible and community-monitored microservices that are granted privileges to user data.
How this would look in practice:
- App developer writes code that A) parses through a list of users currently allowing data operations by the app and then B) performs other functions with that data (e.g. sends out emails, performs anonymous analytics-related processing, etc)
- App developer deploys the code to a trusted microservice provider that offers visibility into the microservice logic
- Community approves the microservice logic (e.g. “Yes, the logic maintains the privacy of the user’s data”)
- Blockstack app requests privilege from the user and the magic happens.