What role does Blockstack Org serve in enforcing data storage best practices?

Suppose a library comes along that claims to be the easiest way to share data between two of your apps. The catch is, it’s rather opinionated about how data is stored so that the library knows where to search for things it needs.

For example, let’s imagine that when a file foo.png is saved:

  1. a folder called foo.png gets added
  2. the foo.png file lives in the root of this folder (encrypted with a generated key)
  3. derived public encryption keys for foo.png are stored under a subfolder called /public_keys

There are a few things to unpack with this theoretical:

  1. What implications does this have on data transportability and ownership, if without the application interface, the user may have no idea how to recover their file encryption key the app has generated?
  2. How might we improve Blockstack APIs to address advanced data storage patterns? Is there additional file structure we should consider? Gaia is highly unopinionated, but app folders exist, so we’re not completely neutral.
  3. To what extent should Blockstack act as a thought leader to give the stamp of approval for storage patterns, and should we more clearly define our role?