usawa

Signed, immutable accounting.
Info | Log | Files | Refs | Submodules | LICENSE

store.texi (1359B)


      1 @anchor{store}
      2 @chapter Cache store
      3 
      4 Entries, assets and keys are kept in a cache store.
      5 
      6 It is a key-value store, the first byte expressing what type of data it holds.
      7 
      8 Data stored is serialized using the @url{https://github.com/aresch/rencode,rencode} format.
      9 
     10 The prefixes are:
     11 
     12 @table @code
     13 @item 0x00
     14 @emph{Cryptographic key information}, currently in this early development only contains private key, unencrypted.
     15 @item 0x01
     16 Reserved for @emph{ledger metadata}, currently unimplemented, as ledger state also can be loaded from XML.
     17 @item 0x02
     18 Reserved for @emph{ledger index}, currently inimplemented, to be used to refer to a ledger with a numeric value in the index, to save space by avoiding using topic as reference every time.
     19 @item 0x03 
     20 Reserved for @emph{ledger lock}, currently inimplemented, to be used in aiding atomic inserts if needed.
     21 @item 0x04
     22 @emph{Entry data}, everything needed to reconstruct a full entry element.
     23 @item 0x08
     24 Reserved for per-ledger @emph{unit index}.
     25 @item 0x10
     26 Asset (entry attachment) data, everything needed to reconstruct a full entry element @emph{except} the actual asset data (@xref{method, Lookup methods}).
     27 @end table
     28 
     29 The CLI tools provided use the @emph{valkey} store, thus expecting a valkey server to be running on an available host.
     30 
     31 
     32 @anchor{store_identity}
     33 @section Keys and store identities
     34 
     35 (todo)