Définition role & process updated (doc)

This commit is contained in:
NicolasCantu 2024-04-04 13:12:51 +02:00
parent 36ccee863f
commit b4b5c8bbdb
8 changed files with 1300 additions and 17 deletions

View File

@ -1,38 +1,38 @@
# Auth - Specifications # Auth - Specifications
## 1. <a name='Autheursvalidationsdatesversionschangesandhistory'></a>Autheurs, validations, dates, versions, changement and historique ## 1. <a name='Autheursvalidationsdatesversionschangementandhistorique'></a>Autheurs, validations, dates, versions, changement and historique
Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc) Cf. [Git SDK COMMON](https://git.4nk.com/4nk/sdk_common/doc)
## 2. <a name='Tabledesmatires'></a>Table des matières ## 2. <a name='Tabledesmatires'></a>Table des matières
<!-- vscode-markdown-toc --> <!-- vscode-markdown-toc -->
* 1. [Autheurs, validations, dates, versions, changement and historique](#Autheursvalidationsdatesversionschangesandhistory) * 1. [Autheurs, validations, dates, versions, changement and historique](#Autheursvalidationsdatesversionschangementandhistorique)
* 2. [Table des matières](#Tabledesmatires) * 2. [Table des matières](#Tabledesmatires)
* 3. [Objectif](#Objectif) * 3. [Objectif](#Objectif)
* 4. [Portée](#Porte) * 4. [Portée](#Porte)
* 5. [Documents de référence](#Documentsderfrence) * 5. [Documents de référence](#Documentsderfrence)
* 6. [Schématisation des processus](#Schmatisationdesprocessus) * 6. [Schématisation des processus](#Schmatisationdesprocessus)
* 6.1. [Création d'une identité](#Crationduneidentit) * 6.1. [Création d'une identité](#Crationduneidentit)
* 6.2. [Onboarding](#Onboarding) * 6.2. [Onboarding](#Onboarding)
* 6.3. [Connexion avec une identité créée (`recover`)](#Connexionavecuneidentitcrerecover) * 6.3. [Connexion avec une identité créée (`recover`)](#Connexionavecuneidentitcrerecover)
* 6.4. [Extension de l'entropie du mot de passe (PBKDF2)](#ExtensiondelentropiedumotdepassePBKDF2) * 6.4. [Extension de l'entropie du mot de passe (PBKDF2)](#ExtensiondelentropiedumotdepassePBKDF2)
* 6.5. [Chiffrement AES quantique résistant (AES-GCM-256)](#ChiffrementAESquantiquersistantAES-GCM-256) * 6.5. [Chiffrement AES quantique résistant (AES-GCM-256)](#ChiffrementAESquantiquersistantAES-GCM-256)
* 6.6. [Génération des clés privées](#Gnrationdesclsprives) * 6.6. [Génération des clés privées](#Gnrationdesclsprives)
* 7. [Authentification des utilisateurs](#Authentificationdesutilisateurs) * 7. [Authentification des utilisateurs](#Authentificationdesutilisateurs)
* 8. [Connexion via des tiers](#Connexionviadestiers) * 8. [Connexion via des tiers](#Connexionviadestiers)
* 9. [Fonctionnalité de récupération de mot de passe](#Fonctionnalitdercuprationdemotdepasse) * 9. [Fonctionnalité de récupération de mot de passe](#Fonctionnalitdercuprationdemotdepasse)
* 10. [Gestion de session basée sur un cache](#Gestiondesessionbasesuruncache) * 10. [Gestion de session basée sur un cache](#Gestiondesessionbasesuruncache)
* 11. [Wallet](#Wallet) * 11. [Wallet](#Wallet)
* 11.1. [Récupération des jetons de faucet](#Rcuprationdesjetonsdefaucet) * 11.1. [Récupération des jetons de faucet](#Rcuprationdesjetonsdefaucet)
* 12. [Gestion des clés de l'identité (aussi les clés des transactions SP)](#GestiondesclsdelidentitaussilesclsdestransactionsSP) * 12. [Gestion des clés de l'identité (aussi les clés des transactions SP)](#GestiondesclsdelidentitaussilesclsdestransactionsSP)
* 12.1. [Génération des clés privées (création des identités numériques)](#Gnrationdesclsprivescrationdesidentitsnumriques) * 12.1. [Génération des clés privées (création des identités numériques)](#Gnrationdesclsprivescrationdesidentitsnumriques)
* 12.1.1. [Gestion de la clé servant à l'ID `spend_recover`](#GestiondelaclservantlIDspend_recover) * 12.1.1. [Gestion de la clé servant à l'ID `spend_recover`](#GestiondelaclservantlIDspend_recover)
* 12.1.2. [Backup de `Part2Enc`](#BackupdePart2Enc) * 12.1.2. [Backup de `Part2Enc`](#BackupdePart2Enc)
* 12.1.3. [Onboarding](#Onboarding-1) * 12.1.3. [Onboarding](#Onboarding-1)
* 12.2. [Member complété des champs du process sélectionné et mise à jour de la liste des membres du process](#Membercompltdeschampsduprocessslectionnetmisejourdelalistedesmembresduprocess) * 12.2. [Member complété des champs du process sélectionné et mise à jour de la liste des membres du process](#Membercompltdeschampsduprocessslectionnetmisejourdelalistedesmembresduprocess)
* 12.3. [Process complété de l'address SP de l'utilisateur et mise à jour de la liste des version du process](#ProcesscompltdeladdressSPdelutilisateuretmisejourdelalistedesversionduprocess) * 12.3. [Process complété de l'address SP de l'utilisateur et mise à jour de la liste des version du process](#ProcesscompltdeladdressSPdelutilisateuretmisejourdelalistedesversionduprocess)
* 12.4. [Réception des Pcd et PrdResponse en tenant compte des mises à jours (réception des clés de déchiffrement du role choisi dans le process sélectionné)](#RceptiondesPcdetPrdResponseentenantcomptedesmisesjoursrceptiondesclsdedchiffrementdurolechoisidansleprocessslectionn) * 12.4. [Réception des Pcd et PrdResponse en tenant compte des mises à jours (réception des clés de déchiffrement du role choisi dans le process sélectionné)](#RceptiondesPcdetPrdResponseentenantcomptedesmisesjoursrceptiondesclsdedchiffrementdurolechoisidansleprocessslectionn)
* 13. [Clés de révocation (`revoke`)](#Clsdervocationrevoke) * 13. [Clés de révocation (`revoke`)](#Clsdervocationrevoke)
* 14. [Clés de third parties](#Clsdethirdparties) * 14. [Clés de third parties](#Clsdethirdparties)
* 15. [Connexions avec une identité crée (`recover`)](#Connexionsavecuneidentitcrerecover) * 15. [Connexions avec une identité crée (`recover`)](#Connexionsavecuneidentitcrerecover)

View File

@ -103,6 +103,11 @@ Cadre HML commun aux pages des relais :
* **Conteneur Principal** : Un div conteneur avec un identifiant unique (id="containerId") sert de point d'ancrage pour l'injection de contenu dynamique ou d'interfaces utilisateur spécifiques à l'application. * **Conteneur Principal** : Un div conteneur avec un identifiant unique (id="containerId") sert de point d'ancrage pour l'injection de contenu dynamique ou d'interfaces utilisateur spécifiques à l'application.
* **Intégration des composants WASM dans l'interface utilisateur**: Un module permet d'intégrer un wrapper js avec le Wasm pour une interaction fluide avec les relais via le WebAssembly. * **Intégration des composants WASM dans l'interface utilisateur**: Un module permet d'intégrer un wrapper js avec le Wasm pour une interaction fluide avec les relais via le WebAssembly.
# Règles sur l'affichage des pages
### 6.2. <a name='Pagedecrationduneidentitnumriquecreate'></a>Page de création d'une identité numérique (create) ### 6.2. <a name='Pagedecrationduneidentitnumriquecreate'></a>Page de création d'une identité numérique (create)
#### 6.2.1. <a name='PagedeslectiondelProcessetdesmembresenchargederenvoyerlesshardsdelaclrecover'></a>Page de sélection de `Process` et des membres en charge de renvoyer les shards de la clé `recover` #### 6.2.1. <a name='PagedeslectiondelProcessetdesmembresenchargederenvoyerlesshardsdelaclrecover'></a>Page de sélection de `Process` et des membres en charge de renvoyer les shards de la clé `recover`

View File

@ -60,7 +60,9 @@ Voir [_Doc_references.md](_Doc_references.md).
* **Relay**: Un serveur web socket qui relaie en peer to peer les messages entre les autres pairs du réseau de relais et avec les clients connectés. * **Relay**: Un serveur web socket qui relaie en peer to peer les messages entre les autres pairs du réseau de relais et avec les clients connectés.
* **Process**: Contrat off-chain définissant des conditions d'affichage, légales, de validation cryptographique et de rémunération des signatures. * **Process**: Contrat off-chain définissant des conditions d'affichage, légales, de validation cryptographique et de rémunération des signatures au global et par `Role`.
*
* **Role**: Un `Role` décrit le type d'`Item` dans les listes (`PCD`) versionnées et gérées par ces `membre` identifiés par leur adresse silent payment. Le `Role` décrit aussi les conditions des conditions d'affichage, légales, de validation et chiffrement de ces listes. Parmi ces conditions, certaines actions peuvent requièrir d'autres `Item` de type `Payment`, `Commit` ou `Deposit` pour être validées; dans ces cas, ces objets sont eux même soumis à règle du `Role` correspondant.
* **Utilisateur**: Client connecté pouvant être un navigateur, une application mobile, un logiciel, ou un IoT, utilisé par un humain ou une machine. * **Utilisateur**: Client connecté pouvant être un navigateur, une application mobile, un logiciel, ou un IoT, utilisé par un humain ou une machine.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 700 KiB

File diff suppressed because one or more lines are too long