diff options
author | drebs <drebs@riseup.net> | 2017-11-02 11:15:08 -0200 |
---|---|---|
committer | drebs <drebs@riseup.net> | 2017-11-02 11:15:08 -0200 |
commit | baffd85151332a77e1660528ead69af5c04d662a (patch) | |
tree | fbde60cf3b4d89a316bde4381a0fb33d540baeba /docs/reference/blobs/client.rst | |
parent | ee198e3ba0b7b2df3b07c6f73056af90a5d46fab (diff) |
[doc] split blobs doc in many pages
Diffstat (limited to 'docs/reference/blobs/client.rst')
-rw-r--r-- | docs/reference/blobs/client.rst | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/docs/reference/blobs/client.rst b/docs/reference/blobs/client.rst new file mode 100644 index 00000000..75c3d997 --- /dev/null +++ b/docs/reference/blobs/client.rst @@ -0,0 +1,21 @@ +Client-side blobs +================= + +On the client-side, blobs can be managed using the BlobManager API. The +BlobManager is responsible for managing storage of blobs both in local and +remote storages + +All data is stored locally in the ``blobs`` table of a SQLCipher database +called ``{uuid}_blobs.db`` that lies in the same directory as the Soledad +Client's JSON documents database. Both databases are encrypted with the same +symmetric secret. All actions performed locally are mirrored remotelly using +the :ref:`http-blobs-api`. + +The BlobManager supports *namespaces* and *flags* and can list local and remote +blobs, possibly filtering by flags and ordering by date (increasingly or +decreasingly). It has helper methods to send or fetch all missing blobs, thus +aiding in synchronization of local and remote data. + +When uploading, the content of the blob is encrypted with a symmetric secret +prior to being sent to the server. When downloading, the content of the blob is +decrypted accordingly. |