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:
- a folder called
foo.png
gets added - the
foo.png
file lives in the root of this folder (encrypted with a generated key) - 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:
- 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?
- 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.
- 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?