diff --git a/doc/ClientDataStorage-Specs.md b/doc/ClientDataStorage-Specs.md index e45298b..b23d1ca 100644 --- a/doc/ClientDataStorage-Specs.md +++ b/doc/ClientDataStorage-Specs.md @@ -63,6 +63,20 @@ pseudo-code: ### 4.2. Peers + +Le cache est constitué de 2 parties : + +1. `public` : + * Liste partagée des relais avec les relais (agrégée au fil des relais découverts par le partage des listes de relais dans les messages). + * L'historique des pings des relais (timestamp, valeur du ping, relais concerné). + * L'historique de message reçus ne satisfaisant pas à l'arbitrage (timestamp, hash du message, relais concerné). + * L'historique de message envoyés sans retour d'une transaction Silent Payment (SP). +2. `private` : + * Liste non partagée des relais (agrégée à partir de relais communiqués de façon confidentielle). + * L'historique des pings des relais (timestamp, valeur du ping, relais concerné). + * L'historique de message reçus ne satisfaisant pas à l'arbitrage (timestamp, hash du message, relais concerné). + * L'historique de message envoyés sans retour d'une transaction Silent Payment (SP). + pseudo-code: ```json @@ -127,6 +141,15 @@ pseudo-code: ### 4.3. Process + +1. `public` : + * Liste partagée des `ItemProcess` avec les relais (agrégée au fil des relais découverts par le partage des listes de `ItemProcess` dans les messages). + * Liste partagée des `ItemProcess` complets reçus depuis les mises à jour des parties prenantes. +2. `private` : + * Liste non partagée des `ItemProcess` (agrégée à partir de `ItemProcess` communiqués de façon confidentielle). + * Liste non partagée des `ItemProcess` complets reçus depuis les mises à jour des parties prenantes. + + pseudo-code: ```json @@ -630,6 +653,15 @@ pseudo-code: ### 4.4. Messages + +* MessageHashList: Hashs des objets `Message`. +* MessageConnectHashList: Hashs des objets `MessageConnect` (vide pour les clients). +* MessageDataEncHashList: Hashs de la donnée encryptée dans les objets `Message`. +* RequestPcdHashList: Hashs des `RequestPcd` une fois déchiffrés des objets Message `Message`, avec le hash du message correspondant (vide pour les relais) et état actuel de la collecte des `RequestPrd` correspondants. +* RequestPrdHashList: Hashs des `RequestPrd` une fois déchiffrés des objets Message `Message`, avec le hash du message correspondant et l'id de la transaction Silent Payment (SP) correspondante (vide pour les relais). +* TxFaucetIdList: Liste des `transaction SP` du faucet. +* TxSpIdList: Liste des `transaction SP` reçues. + pseudo-code: ```json @@ -1300,3 +1332,10 @@ pseudo-code: } ] ``` + +### Sockets + +Le cache contient une liste des sockets ouverts, répartie en 2 parties : + +* SocketClientList: liste des sockets ouverts en tant que clients. +* SocketServerList: liste des sockets ouverts parles clients.