diff --git a/doc/PRD-PCD-Specs.md b/doc/PRD-PCD-Specs.md index 9b6a454..ee97528 100644 --- a/doc/PRD-PCD-Specs.md +++ b/doc/PRD-PCD-Specs.md @@ -7,37 +7,37 @@ * 5.1. [`RequestPrdConfirm`](#RequestPrdConfirm) * 5.2. [`RequestPrdResponse`](#RequestPrdResponse) * 6. [Encryption](#Encryption) - * 6.1. [Création et envoi](#Crationetenvoi) - * 6.2. [Réception](#Rception) + * 6.1. [Création et envoi](#Crationetenvoi) + * 6.2. [Réception](#Rception) * 7. [Fonction des RequestPcd](#FonctiondesRequestPcd) - * 7.1. [Schéma des flux](#Schmadesflux) - * 7.2. [Création et envoi](#Crationetenvoi-1) - * 7.3. [Réception](#Rception-1) + * 7.1. [Schéma des flux](#Schmadesflux) + * 7.2. [Création et envoi](#Crationetenvoi-1) + * 7.3. [Réception](#Rception-1) * 8. [Fonction des`RequestPrd`](#FonctiondesRequestPrd) - * 8.1. [Schéma des flux](#Schmadesflux-1) - * 8.2. [Fonctionnalités optionnelles](#Fonctionnalitsoptionnelles) - * 8.3. [Création et envoi](#Crationetenvoi-1) - * 8.4. [Réception](#Rception-1) + * 8.1. [Schéma des flux](#Schmadesflux-1) + * 8.2. [Fonctionnalités optionnelles](#Fonctionnalitsoptionnelles) + * 8.3. [Création et envoi](#Crationetenvoi-1) + * 8.4. [Réception](#Rception-1) * 9. [RequestPrdList - Demande de Listes ( RequestPcd)](#RequestPrdList-DemandedeListesRequestPcd) - * 9.1. [Schéma des flux](#Schmadesflux-1) - * 9.2. [Création : Datas spécifiques](#Cration:Datasspcifiques) - * 9.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques) + * 9.1. [Schéma des flux](#Schmadesflux-1) + * 9.2. [Création : Datas spécifiques](#Cration:Datasspcifiques) + * 9.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques) * 10. [RequestPrdMessage - Envoi de Messages](#RequestPrdMessage-EnvoideMessages) - * 10.1. [Schéma des flux](#Schmadesflux-1) - * 10.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) - * 10.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) + * 10.1. [Schéma des flux](#Schmadesflux-1) + * 10.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) + * 10.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) * 11. [RequestPrdUpdate - Mises à Jour de RequestPcd](#RequestPrdUpdate-MisesJourdeRequestPcd) - * 11.1. [Schéma des flux](#Schmadesflux-1) - * 11.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) - * 11.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) + * 11.1. [Schéma des flux](#Schmadesflux-1) + * 11.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) + * 11.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) * 12. [RequestPrdConfirm - Confirmation de Réception](#RequestPrdConfirm-ConfirmationdeRception) - * 12.1. [Schéma des flux](#Schmadesflux-1) - * 12.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) - * 12.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) + * 12.1. [Schéma des flux](#Schmadesflux-1) + * 12.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) + * 12.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) * 13. [RequestPrdResponse - Répondre à une Demande](#RequestPrdResponse-RpondreuneDemande) - * 13.1. [Schéma des flux](#Schmadesflux-1) - * 13.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) - * 13.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) + * 13.1. [Schéma des flux](#Schmadesflux-1) + * 13.2. [Création : Datas spécifiques](#Cration:Datasspcifiques-1) + * 13.3. [Réception : Datas spécifiques](#Rception:Datasspcifiques-1) * 14. [Exemples de Code](#ExemplesdeCode) * 15. [Todo](#Todo) @@ -331,6 +331,9 @@ Il permet la communication : Les `RequestPrdMessage` peuvent répondre aux autres `RequestPrdMessage`, sauf en cas d'envoi de `raw_transaction_list` (dans le cas d'utilisation pour transférer la `transaction SP` depuis un autre `RequestPrd`). +Workflow : +![PRDMessageFlows](diagrams/PRDMessageFlows.png "PRDMessageFlows") + ### 10.1. Schéma des flux Pour simplifier, les `RequestPrdConfirm` n'ont pas été inclus dans le schéma. Exemple d'un `RequestPrdMessage` avec `raw_transaction_list` vide, et son cas correspondant où le `RequestPrdMessage` contient une `raw_transaction_list` non vide. @@ -388,6 +391,10 @@ Les `RequestPrdList`, `RequestPrdUpdate`, `RequestPrdMessage`, `RequestPrdRespon `code_confirm_enc_by_shared_secret` : Un code de confirmation chiffré qui valide l'authenticité et l'intégrité de la réponse, assurant que la confirmation est sécurisée et provient de la source attendue. Dans ce cas, un output spécifique chiffré par la clé `KeyConfidential` précise ce code, lequel doit être confirmé dans le `RequestPrdConfirm`. +Worflow: + +Voir les diagrammes `PRDUpdateFlows`, `PRDUpdateFlows` et `PRDMessageFlows`. + ### 12.1. Schéma des flux ![RequestPrdConfirm](diagrams/PRDConfirm.png "RequestPrdConfirm") @@ -410,6 +417,10 @@ Les `RequestPrdResponse` sont utilisés pour répondre aux `RequestPrdList`, `Re C'est également le moyen par lequel demander des moyens de paiement, de dépôt, ou de preuve, puis de partager le payload de ces actions. +Workflow: + +Voir les diagrammes `PRDUpdateFlows` et `PRDUpdateFlows`. + ### 13.1. Schéma des flux Pour simplifier, les `RequestPrdConfirm` n'ont pas été représentés dans le schéma. diff --git a/doc/diagrams/.$PRDMessageFlows.drawio.bkp b/doc/diagrams/.$PRDMessageFlows.drawio.bkp new file mode 100644 index 0000000..69f0502 --- /dev/null +++ b/doc/diagrams/.$PRDMessageFlows.drawio.bkp @@ -0,0 +1,257 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/diagrams/.$PRDUpdateFlows.drawio.bkp b/doc/diagrams/.$PRDUpdateFlows.drawio.bkp index 36abdfd..43c81f3 100644 --- a/doc/diagrams/.$PRDUpdateFlows.drawio.bkp +++ b/doc/diagrams/.$PRDUpdateFlows.drawio.bkp @@ -1,9 +1,20 @@ - + - + + + + + + + + + + + + @@ -13,13 +24,10 @@ - + - - - - + @@ -39,13 +47,10 @@ - - - - + @@ -82,10 +87,10 @@ - + - + @@ -187,10 +192,10 @@ - + - + @@ -250,18 +255,7 @@ - - - - - - - - - - - - + @@ -271,10 +265,10 @@ - + - + @@ -284,25 +278,25 @@ - + - + - + - + - + - + - + @@ -313,9 +307,15 @@ - + + + + + + + diff --git a/doc/diagrams/PRDMessageFlows.drawio b/doc/diagrams/PRDMessageFlows.drawio new file mode 100644 index 0000000..367112b --- /dev/null +++ b/doc/diagrams/PRDMessageFlows.drawio @@ -0,0 +1,254 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/diagrams/PRDMessageFlows.png b/doc/diagrams/PRDMessageFlows.png new file mode 100644 index 0000000..95e0fe7 Binary files /dev/null and b/doc/diagrams/PRDMessageFlows.png differ diff --git a/doc/diagrams/PRDUpdateFlows.drawio b/doc/diagrams/PRDUpdateFlows.drawio index 90d1768..dedf6ef 100644 --- a/doc/diagrams/PRDUpdateFlows.drawio +++ b/doc/diagrams/PRDUpdateFlows.drawio @@ -1,9 +1,20 @@ - + - + + + + + + + + + + + + @@ -13,13 +24,10 @@ - + - - - - + @@ -39,9 +47,6 @@ - - - @@ -85,8 +90,10 @@ - - + + + + @@ -250,17 +257,6 @@ - - - - - - - - - - - @@ -319,6 +315,9 @@ + + + diff --git a/doc/diagrams/PRDUpdateFlows.png b/doc/diagrams/PRDUpdateFlows.png index 6dc9f61..a3c2bc8 100644 Binary files a/doc/diagrams/PRDUpdateFlows.png and b/doc/diagrams/PRDUpdateFlows.png differ