cleaning (doc)
This commit is contained in:
parent
49c557ef40
commit
9da174013b
@ -13,7 +13,7 @@ Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
|
||||
* 4. [Portée](#Porte)
|
||||
* 5. [Documents de référence](#Documentsderfrence)
|
||||
* 6. [Définitions](#Dfinitions)
|
||||
* 7. [Principes d'une `Envelope` rie](#PrincipesduneEnveloperie)
|
||||
* 7. [Principes de messagerie](#Principesdemessagerie)
|
||||
* 8. [Encryption](#Encryption)
|
||||
* 9. [Fonction des Pcd](#FonctiondesPcd)
|
||||
* 9.1. [Schéma des flux](#Schmadesflux)
|
||||
@ -25,7 +25,7 @@ Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
|
||||
* 10.3. [Réception](#Rception-1)
|
||||
* 11. [PrdList - Demande de Listes](#PrdList-DemandedeListes)
|
||||
* 11.1. [Schéma des flux](#Schmadesflux-1)
|
||||
* 12. [PrdMessage - Envoi d'une `Envelope`](#PrdMessage-EnvoiduneEnvelope)
|
||||
* 12. [PrdMessage - Envoi d'un message](#PrdMessage-Envoidunmessage)
|
||||
* 12.1. [Schéma des flux](#Schmadesflux-1)
|
||||
* 13. [PrdUpdate - Mises à Jour de Pcd](#PrdUpdate-MisesJourdePcd)
|
||||
* 13.1. [Schéma des flux](#Schmadesflux-1)
|
||||
@ -75,11 +75,11 @@ Voir [_Doc_references.md](_Doc_references.md).
|
||||
|
||||
* **pre-id**: Pré-identifiant des `User`, constitué du hash de la partie 1 de la `KeyRecover`.
|
||||
|
||||
## 7. <a name='PrincipesduneEnveloperie'></a>Principes de messagerie
|
||||
## 7. <a name='Principesdemessagerie'></a>Principes de messagerie
|
||||
|
||||
Les `Pcd` sont envoyés à tous les participants connectés sans attente de retour spécifique et ne sont pas associés à une `transaction SP`.
|
||||
|
||||
Les `Prd` sont toujours accompagnés d'une `transaction SP`, transmise dans l'attribut `raw_transaction_list` d'un `PrdMessage` associé (à l'exception des `PrdMessage` eux-mêmes).
|
||||
Les `Prd` sont toujours accompagnés d'une `transaction SP`, transmise dans l'attribut `raw_transaction_list` d'une `Envelope`.
|
||||
|
||||
Les `Prd` sont des demandes d'actions ou des réponses à ces demandes, interagissant de la manière suivante :
|
||||
|
||||
@ -371,7 +371,7 @@ Pour simplifier, les `PrdConfirm` n'ont pas été inclus dans le schéma.
|
||||
|
||||

|
||||
|
||||
## 12. <a name='PrdMessage-EnvoiduneEnvelope'></a>PrdMessage - Envoi d'un message
|
||||
## 12. <a name='PrdMessage-Envoidunmessage'></a>PrdMessage - Envoi d'un message
|
||||
|
||||
Le `PrdMessage` facilite l'envoi d'un message sécurisé entre `User`.
|
||||
|
||||
|
@ -15,8 +15,6 @@ Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
|
||||
* 6. [ Fonction](#Fonction)
|
||||
* 7. [ Structure des outputs](#Structuredesoutputs)
|
||||
* 8. [Envoi de la transaction SP](#EnvoidelatransactionSP)
|
||||
* 8.1. [Dans un `PrdMessage`](#DansunPrdMessage)
|
||||
* 8.2. [Dans un `Envelope` du `PrdMessage`](#DansunEnvelopeduPrdMessage)
|
||||
* 9. [ En réception les transactions silent Payments SP sont relayées par les relais en temps réel](#EnrceptionlestransactionssilentPaymentsSPsontrelayesparlesrelaisentempsrel)
|
||||
|
||||
<!-- vscode-markdown-toc-config
|
||||
@ -37,7 +35,7 @@ Voir [_Doc_references.md](_Doc_references.md).
|
||||
|
||||
La transaction SP à plusieurs objectifs :
|
||||
|
||||
1. Permettre l'horodatage de l'empreinte des `Prd` sur la side chain (`PrdMessage` sans `Envelope` confidentiel).
|
||||
1. Permettre l'horodatage de l'empreinte des `Prd` sur la side chain.
|
||||
2. Permettre le partage de la `keyConfidential` pour les `Prd` afin de déchiffrer les données confidentielles, sur d'autres relais que ceux qui ont reçu le `Prd`.
|
||||
|
||||
La clé `KeyConfidential` d'une`transaction SP` est utilisée pour chiffrer les `Prd`.Cette clé est échangée avec le destinataire via un Diffie-Hellman (cf. [Specs-Security.md](Specs-Security.md)) dans la transaction.
|
||||
@ -56,7 +54,7 @@ Une fois le `Prd` finalisé, une transaction SP est réalisée, dans cette trans
|
||||
|
||||
0. L'output 0 est toujours un paiment au destinataire
|
||||
1. L'output 1 c'est toujours l'op_return avec un tableau de hashs en clair selon un tableau de hashs en JSON avec les index suivants :
|
||||
1.1. Le hash de l'`Envelope` de type `Envelope` correspondant
|
||||
1.1. Le hash de l'`Envelope`
|
||||
1.2. Le hash du `Prd`
|
||||
1.3. Le hash du process
|
||||
1.4. Le hash de la valeur de la signature (attribut `sig_value` du Prd)
|
||||
@ -72,20 +70,7 @@ Pour des raison de confidentialité, le `Role` associé à `item_name` du `Prd`
|
||||
|
||||
## 8. <a name='EnvoidelatransactionSP'></a>Envoi de la transaction SP
|
||||
|
||||
Afin d'améliorer la rélisience du broadcast des transactions, la transaction est envoyée à la fois :
|
||||
|
||||
1. Dans un `PrdMessage` à un Member du rôle `Member` du `Process` concerné et
|
||||
2. Dans le `Envelope` du `PrdMessage` sur les relais
|
||||
|
||||
### 8.1. <a name='DansunPrdMessage'></a>Dans un `PrdMessage`
|
||||
|
||||
Dans l'attribut `raw_transaction_list` du `PrdMessage` associé à la transaction SP.
|
||||
La transaction sera broadcastée par les noeuds de signet du Member du `Role` `Member` du `Process` concerné qui a reçu cette `Envelope` , il devra alors avoir un noeud de signet pour le broadcast.
|
||||
|
||||
### 8.2. <a name='DansunEnvelopeduPrdMessage'></a>Dans un `Envelope` du `PrdMessage`
|
||||
|
||||
Dans l'attribut `raw_transaction_list` de l'`Envelope` associé à la transaction SP.
|
||||
La transaction sera broadcastée par les noeuds de signet des relais.
|
||||
La transaction est envoyée dans le `Envelope` sur les relais, et aux utilisateurs pouvant relayer les transactions.
|
||||
|
||||
## 9. <a name='EnrceptionlestransactionssilentPaymentsSPsontrelayesparlesrelaisentempsrel'></a> En réception les transactions silent Payments SP sont relayées par les relais en temps réel
|
||||
|
||||
|
@ -11,18 +11,18 @@ Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
|
||||
* 2. [Table des matières](#Tabledesmatires)
|
||||
* 3. [Documents de référence](#Documentsderfrence)
|
||||
* 4. [Choix des formats de données](#Choixdesformatsdedonnes)
|
||||
* 4.1. [Strings](#Strings)
|
||||
* 4.2. [Hexadécimales](#Hexadcimales)
|
||||
* 4.3. [Tableaux de bytes](#Tableauxdebytes)
|
||||
* 4.1. [ Strings](#Strings)
|
||||
* 4.2. [ Hexadécimales](#Hexadcimales)
|
||||
* 4.3. [ Tableaux de bytes](#Tableauxdebytes)
|
||||
* 4.3.1. [8 Bytes (64 bits)](#Bytes64bits)
|
||||
* 4.3.2. [16 Bytes (128 bits)](#Bytes128bits)
|
||||
* 4.3.3. [32 Bytes (256 bits)](#32Bytes256bits)
|
||||
* 4.3.4. [64 Bytes (512 bits)](#64Bytes512bits)
|
||||
* 4.3.5. [Précautions générales pour la manipulation des tableaux de bytes](#Prcautionsgnralespourlamanipulationdestableauxdebytes)
|
||||
* 4.4. [Format Base64](#FormatBase64)
|
||||
* 4.5. [Différence entre Bytes et Bits](#DiffrenceentreBytesetBits)
|
||||
* 4.3.3. [ 32 Bytes (256 bits)](#32Bytes256bits)
|
||||
* 4.3.4. [ 64 Bytes (512 bits)](#64Bytes512bits)
|
||||
* 4.3.5. [ Précautions générales pour la manipulation des tableaux de bytes](#Prcautionsgnralespourlamanipulationdestableauxdebytes)
|
||||
* 4.4. [ Format Base64](#FormatBase64)
|
||||
* 4.5. [ Différence entre Bytes et Bits](#DiffrenceentreBytesetBits)
|
||||
* 4.6. [Little Endian et Big Endian](#LittleEndianetBigEndian)
|
||||
* 4.7. [Conversions de données](#Conversionsdedonnes)
|
||||
* 4.7. [ Conversions de données](#Conversionsdedonnes)
|
||||
* 4.7.1. [Conversion entre Strings et Hexadécimales](#ConversionentreStringsetHexadcimales)
|
||||
* 4.7.2. [Conversion entre Tableaux de Bytes et Format Base64](#ConversionentreTableauxdeBytesetFormatBase64)
|
||||
* 4.7.3. [Conversion entre Bytes et Bits](#ConversionentreBytesetBits)
|
||||
@ -31,7 +31,7 @@ Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
|
||||
* 5. [Recommandations entre l'usage de HashMap ou d'un Vec (en Rust)](#RecommandationsentrelusagedeHashMapoudunVecenRust)
|
||||
* 5.1. [Utilisez un Vec si](#UtilisezunVecsi)
|
||||
* 5.2. [Utilisez un HashMap si](#UtilisezunHashMapsi)
|
||||
* 5.3. [Recommandations Générales](#RecommandationsGnrales)
|
||||
* 5.3. [ Recommandations Générales](#RecommandationsGnrales)
|
||||
* 6. [Gestion des erreurs](#Gestiondeserreurs)
|
||||
* 7. [Journalisation et monitoring](#Journalisationetmonitoring)
|
||||
* 8. [Tests](#Tests)
|
||||
|
@ -41,9 +41,9 @@ Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
|
||||
* 6. [Encryption](#Encryption)
|
||||
* 6.1. [KeyEncryption](#KeyEncryption)
|
||||
* 6.2. [Aes256GcmIv96Bit](#Aes256GcmIv96Bit)
|
||||
* 7. [Envelope](#Envelope)
|
||||
* 7.1. [Message](#Message)
|
||||
* 7.2. [EnvelopeConnect](#EnvelopeConnect)
|
||||
* 7. [7. Enveloppes](#Enveloppes)
|
||||
* 7.1. [7.1. Enveloppe](#Enveloppe)
|
||||
* 7.2. [7.2. EnveloppesConnect](#EnveloppesConnect)
|
||||
* 7.3. [EnvelopeGeneric](#EnvelopeGeneric)
|
||||
* 7.4. [Pow](#Pow)
|
||||
* 7.5. [Process](#Process-1)
|
||||
@ -691,9 +691,9 @@ Pseudo-code:
|
||||
}
|
||||
```
|
||||
|
||||
## 7. Enveloppes
|
||||
## 7. <a name='Enveloppes'></a>7. Enveloppes
|
||||
|
||||
### 7.1. Enveloppe
|
||||
### 7.1. <a name='Enveloppe'></a>7.1. Enveloppe
|
||||
|
||||
| Attribute Name | Type | Option |
|
||||
| -------------- | -------------------- | ------ |
|
||||
@ -709,7 +709,7 @@ Pseudo-code:
|
||||
}
|
||||
```
|
||||
|
||||
### 7.2. EnveloppesConnect
|
||||
### 7.2. <a name='EnveloppesConnect'></a>7.2. EnveloppesConnect
|
||||
|
||||
| Attribute Name | Type | Option |
|
||||
| -------------- | -------------------- | ------ |
|
||||
@ -1371,14 +1371,12 @@ Pseudo-code:
|
||||
| Attribute Name | Type | Option |
|
||||
| ---------------------- | ----------------- | ------ |
|
||||
| `request_prd` | ```Prd``` | |
|
||||
| `raw_transaction_list` | ```Vec<String>``` | Yes |
|
||||
|
||||
Pseudo-code:
|
||||
|
||||
```json
|
||||
{
|
||||
"request_prd": Prd,
|
||||
"raw_transaction_list": []
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,21 +0,0 @@
|
||||
Questions PCD-PRD Specs:
|
||||
1 - PrdResponse:
|
||||
Réponse aux autres types de Prd (à l'exception de PrdConfirm, et PrdMessage).
|
||||
ou
|
||||
Répond à tous les autres types de Prd (à l'exception des PrdConfirm, PrdResponse eux-mêmes)
|
||||
|
||||
=> Réponse aux autres types de Prd (à l'exception de PrdConfirm, et PrdMessage).
|
||||
|
||||
2 - Expliquer les champs sur Notification User (tableau)?
|
||||
|
||||
=> C’est lorsque l’IHM doit recevoir un ev ent pour lui signaler soit l’envoi d’un Prd soit la réception
|
||||
|
||||
3 -Info sur les Tx Sp : Toujours dans le PrdMessage?
|
||||
|
||||
=> 2 utilisation :
|
||||
- Un message => pas de Tx SP
|
||||
- L’envoi une Tx Sp à relayer => toujours dans un PrdMessage (en plus de l’enveloppe ‘Message’ du Prd). Je comprend l’ambiguité :) je réfléchi à renomer « Message » en « Envelope» qu’en pensez vous ?
|
||||
|
||||
4- Receive prdUpdate: column "PrdResponse reply waiting" (yes, other members)
|
||||
|
||||
=> Lorsque l’on reçoit un PRDUpdate on va y répondre si on un gestionnaire concerné, mais on va aussi attendre toutes les réponses de tous les gestionnaires (qu’on soit gestionnaire ou pas) afin de valider ou non la nouvelle version du PCD associé.
|
Loading…
x
Reference in New Issue
Block a user