diff --git a/doc/ClientDataStorage-Specs.md b/doc/ClientDataStorage-Specs.md index b23d1ca..1ccfa86 100644 --- a/doc/ClientDataStorage-Specs.md +++ b/doc/ClientDataStorage-Specs.md @@ -63,20 +63,6 @@ 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 @@ -141,15 +127,6 @@ 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 @@ -653,15 +630,6 @@ 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 @@ -691,7 +659,8 @@ pseudo-code: "ip": "", "port": "", "timestamp": 0, - "sender": false + "sender": false, + "validation_status": "pending|ok|ko" }], }] @@ -1082,9 +1051,507 @@ pseudo-code: pseudo-code: +```json +[ + "public": ```json [ { + "hash": "", + "item": { + "uuid": "", + "version": 0, + "item_type": "", + "pagination_number_per_request_pcd": 0, + "metadata_contract_public": { + "metadata": { + "tag_list": [ + "" + ], + "zone_list": [ + "" + ], + "label_list": [ + "" + ], + "ref_list": [ + "" + ], + "data_list": [ + {} + ], + "amount": { + "timestamp": 0, + "change_source_list": [ + "" + ], + "amount_cent": 0, + "amount_unit": "", + "amount_unit_ref": "" + }, + "number": { + "fixed_state": true, + "number": 0, + "number_unit": "" + }, + "render_template_list": [ + {} + ], + "legal_text_list": [ + "" + ], + "key_list": [ + "" + ] + } + }, + "metadata_role_confidential": { + "metadata": { + "tag_list": [ + "" + ], + "zone_list": [ + "" + ], + "label_list": [ + "" + ], + "ref_list": [ + "" + ], + "data_list": [ + {} + ], + "amount": { + "timestamp": 0, + "change_source_list": [ + "" + ], + "amount_cent": 0, + "amount_unit": "", + "amount_unit_ref": "" + }, + "number": { + "fixed_state": true, + "number": 0, + "number_unit": "" + }, + "render_template_list": [ + {} + ], + "legal_text_list": [ + "" + ], + "key_list": [ + "" + ] + } + } + }, + "item_process_public_attribute_group": { + "roles_group": { + "role_peer": { + "item_name": "", + "role": { + "item": { + "uuid": "", + "version": 0, + "item_type": "", + "pagination_number_per_request_pcd": 0, + "metadata_contract_public": { + "metadata": { + "tag_list": [ + "" + ], + "zone_list": [ + "" + ], + "label_list": [ + "" + ], + "ref_list": [ + "" + ], + "data_list": [ + {} + ], + "amount": { + "timestamp": 0, + "change_source_list": [ + "" + ], + "amount_cent": 0, + "amount_unit": "", + "amount_unit_ref": "" + }, + "number": { + "fixed_state": true, + "number": 0, + "number_unit": "" + }, + "render_template_list": [ + {} + ], + "legal_text_list": [ + "" + ], + "key_list": [ + "" + ] + } + }, + "metadata_role_confidential": { + "metadata": { + "tag_list": [ + "" + ], + "zone_list": [ + "" + ], + "label_list": [ + "" + ], + "ref_list": [ + "" + ], + "data_list": [ + {} + ], + "amount": { + "timestamp": 0, + "change_source_list": [ + "" + ], + "amount_cent": 0, + "amount_unit": "", + "amount_unit_ref": "" + }, + "number": { + "fixed_state": true, + "number": 0, + "number_unit": "" + }, + "render_template_list": [ + {} + ], + "legal_text_list": [ + "" + ], + "key_list": [ + "" + ] + } + } + }, + "sp_output_salt_enc": "", + "required_2fa": true, + "validation_timeout": 0, + "condition_prd_address_set_list": [ + { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + } + ], + "condition_publish": [ + { + "request_prd_type": "", + "request_pcd_data_size_max_unit": "", + "request_pcd_data_size_max_total": 0, + "request_pcd_number_min": 0, + "request_pcd_number_max": 0, + "request_pcd_amount_max_total": { + "timestamp": 0, + "change_source_list": [ + "" + ], + "amount_cent": 0, + "amount_unit": "", + "amount_unit_ref": "" + }, + "request_prd_waiting_timeout": 0, + "request_pcd_waiting_timeout": 0 + } + ], + "condition_cap_list": [ + { + "request_prd_type": "", + "transaction_mode": { + "value": { + "timestamp": 0, + "change_source_list": [ + "" + ], + "amount_cent": 0, + "amount_unit": "", + "amount_unit_ref": "" + }, + "hash_ok_list": [""], + "hash_ko_list": [""], + "hash_none_list": [""], + "from_list": [""], + "from_type": "", + "from_method": "", + "to_list": [""], + "to_type": "", + "to_method": "" + }, + "payment_proof_validation": { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + } + } + ], + "condition_payment_list": [ + { + "request_prd_type": "", + "transaction_mode": { + "value": "", + "hash_ok_list": [""], + "hash_ko_list": [""], + "hash_none_list": [""], + "from_list": [""], + "from_type": "", + "from_method": "", + "to_list": [""], + "to_type": "", + "to_method": "" + }, + "payment_proof_validation": { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + }, + "condition_deposit_list": [{ + "request_prd_type": "", + "transaction_mode": { + "value": "", + "hash_ok_list": [""], + "hash_ko_list": [""], + "hash_none_list": [""], + "from_list": [""], + "from_type": "", + "from_method": "", + "to_list": [""], + "to_type": "", + "to_method": "" + }, + "payment_proof_validation": { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + } + }] + } + ], + "condition_commitment_list": [ + { + "request_prd_type": "", + "transaction_mode": { + "value": "", + "hash_ok_list": [""], + "hash_ko_list": [""], + "hash_none_list": [""], + "from_list": [""], + "from_type": "", + "from_method": "", + "to_list": [""], + "to_type": "", + "to_method": "" + }, + "payment_proof_validation": { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + } + } + ], + "condition_attribute_encryption_list": [ + { + "payment_proof_validation": { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + } + } + ], + "condition_orchestration": [ + { + "request_prd_type": "", + "role_ok": "", + "role_ko": "", + "payment_proof_validation": { + "request_prd_type": "", + "from_role": "", + "request_prd_sp_address_list": [""], + "request_prd_sp_address_required_list": [""], + "request_prd_sp_address_quota": 0, + "request_prd_value_ok_list": [""], + "request_prd_value_ko_list": [""], + "request_prd_value_none_list": [""], + "request_prd_value_auto_ok": true, + "request_prd_value_auto_ko": true, + "request_prd_value_auto_none": true, + "request_prd_sp_address_value_min": 0, + "request_prd_sp_address_value_min_ok": true, + "request_prd_sp_adddress_value_ok_min_per": 0, + "request_prd_sp_address_value_ok_max": 0, + "request_prd_sp_adderss_value_ko_max_per": 0, + "request_prd_sp_address_value_ko_max": 0, + "request_prd_sp_address_value_none_max": 0, + "request_prd_sp_adderss_value_none_max_per": 0, + "request_prd_sp_address_score_min": 0, + "request_prd_sp_address_score_min_min_required": 0, + "request_prd_sp_address_score_min_min_ok": true, + "request_prd_sp_address_score_min_min_per": 0 + } + } + ], + "role_succession": "", + "role_resolve": "", + "role_renew": "" + } + }, + "role_member": { + "item_name": "", + "role": {} + }, + "role_process": { + "item_name": "", + "role": {} + }, + "role_artefact_list": [ + { + "item_name": "", + "role": {} + } + ] + } + } + } +], + "private": { "hash_public": "", "item": { "metadata_private": { diff --git a/doc/diagrams/.$WalletCreate.drawio.bkp b/doc/diagrams/.$WalletCreate.drawio.bkp index ea34fc0..bf2f396 100644 --- a/doc/diagrams/.$WalletCreate.drawio.bkp +++ b/doc/diagrams/.$WalletCreate.drawio.bkp @@ -1,11 +1,11 @@ - + - + - + @@ -22,7 +22,7 @@ - + @@ -121,19 +121,23 @@ - + - + + + + - + - + + @@ -144,7 +148,8 @@ - + + @@ -173,11 +178,12 @@ - + - + + @@ -258,8 +264,8 @@ - - + + @@ -444,70 +450,76 @@ - + - + + + + + + - + - + - + - - + + - + - + - + - + - + - + - + - + - - + + + - + - + - - + + - + @@ -556,53 +568,54 @@ - + - + - - + + + - + - + - - + + - + - + - - + + - + - + - + - + - + @@ -758,23 +771,29 @@ - + - + - + - + + + + + + + diff --git a/doc/diagrams/.$WalletRecover.drawio.bkp b/doc/diagrams/.$WalletRecover.drawio.bkp index 40fa5c5..1fb86b2 100644 --- a/doc/diagrams/.$WalletRecover.drawio.bkp +++ b/doc/diagrams/.$WalletRecover.drawio.bkp @@ -1,11 +1,11 @@ - + - + - + @@ -17,7 +17,7 @@ - + @@ -26,7 +26,7 @@ - + @@ -39,10 +39,10 @@ - - + + - + @@ -51,58 +51,58 @@ - + - + - - + + - + - - + + - + - - + + - + - - + + - + - + @@ -302,7 +302,7 @@ - + @@ -314,90 +314,82 @@ - - - - - - - - - - - + - - + + - - + + - + - - + + - - - + + + - - - + + + - - + + - - - + + + - - + + - - + + - + - + - + + + @@ -421,38 +413,35 @@ - + - - - - + - + - + - + - + - + - + @@ -483,33 +472,31 @@ - - + + - + - + - - + - - - + + @@ -789,29 +776,16 @@ - + - + - - - - - - - - - - - + - - - - + @@ -828,16 +802,22 @@ - + - + - + + + + + + + diff --git a/doc/diagrams/.$WalletRecover.png.bkp b/doc/diagrams/.$WalletRecover.png.bkp new file mode 100644 index 0000000..f414c35 Binary files /dev/null and b/doc/diagrams/.$WalletRecover.png.bkp differ diff --git a/doc/diagrams/WalletCreate.drawio b/doc/diagrams/WalletCreate.drawio index af5f5e7..896bde4 100644 --- a/doc/diagrams/WalletCreate.drawio +++ b/doc/diagrams/WalletCreate.drawio @@ -1,11 +1,11 @@ - + - + - + @@ -450,70 +450,76 @@ - + - + + + + + + - + - + - + - - + + - + - + - + - + - + - + - + - + - - + + + - + - + - - + + - + @@ -562,53 +568,54 @@ - + - + - - + + + - + - - + + - + - + - - + + - + - + - + - + - + @@ -746,45 +753,27 @@ - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + diff --git a/doc/diagrams/WalletCreate.png b/doc/diagrams/WalletCreate.png index 794c90c..c97361a 100644 Binary files a/doc/diagrams/WalletCreate.png and b/doc/diagrams/WalletCreate.png differ diff --git a/doc/diagrams/WalletRecover.drawio b/doc/diagrams/WalletRecover.drawio index 82bf177..784df3c 100644 --- a/doc/diagrams/WalletRecover.drawio +++ b/doc/diagrams/WalletRecover.drawio @@ -1,11 +1,11 @@ - + - + - + @@ -17,7 +17,7 @@ - + @@ -26,7 +26,7 @@ - + @@ -39,10 +39,10 @@ - - + + - + @@ -51,58 +51,58 @@ - + - + - - + + - + - - + + - + - - + + - + - - + + - + - + @@ -302,7 +302,7 @@ - + @@ -314,90 +314,82 @@ - - - - - - - - - - - + - - + + - - + + - + - - + + - - - + + + - - - + + + - - + + - - - + + + - - + + - - + + - + - + - + + + @@ -421,38 +413,35 @@ - + - - - - + - + - + - + - + - + - + @@ -483,33 +472,31 @@ - - + + - + - + - - + - - - + + @@ -517,78 +504,78 @@ - + - + - + - - + + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - + - + @@ -650,14 +637,14 @@ - + - + - - + + @@ -669,13 +656,13 @@ - - + + - + @@ -684,16 +671,16 @@ - + - + - + - + @@ -789,61 +776,48 @@ - + - + - - - - - - - - - - - + - - - - + - + - + - + - + - + - + - + - + - + - - + + diff --git a/doc/diagrams/WalletRecover.png b/doc/diagrams/WalletRecover.png index 2b5e776..ed94bd3 100644 Binary files a/doc/diagrams/WalletRecover.png and b/doc/diagrams/WalletRecover.png differ