PD-41-SPECIFICATION-REVIEW
Type : Non testable Référence : PD-41-specification.md §5 (N2/N3) + §7 (CA5, CA6) + §9 (H3) + §10 (pt.3) Description : Les artefacts contractuels (ReKey/KFrag, Capsule, CFrag/ReEncryptedData) sont exigés et dits « conformes au format contractuel », mais aucun schéma/encodage/structure normative n’est défini ni référencé. Impact : Impossible d’implémenter ou d’auditer la conformité des entrées/sorties ; tout résultat pourra être contesté faute de base contractuelle. Gravité : Bloquant
Type : Non testable Référence : PD-41-specification.md §4 (Invariant 6) + §10 (pt.6) Description : L’obligation de lier artefacts à un contexte/identifiants (« si requis ») ne précise ni champs, ni règles, ni politique anti-réutilisation. Impact : Inapplicabilité et in-auditabilité de la règle ; risque de réutilisation ou de relay d’artefacts sans moyen contractuel de détection. Gravité : Majeur
Type : Non testable Référence : PD-41-specification.md §4 (Invariant 7) + §6 (E7) + §7 (CA10) + §8 (S6) Description : Les limites de taille sont obligatoires mais aucune valeur (par champ/payload) n’est fixée. Impact : Tests de frontière impossibles et risque DoS contestable ; non-conformité indétectable faute de seuils normés. Gravité : Majeur
Type : Ambiguïté Référence : PD-41-specification.md §6 (E3, E5, E6) + §7 (CA7) ; PD-41-tests.md (TC-ERR-03, TC-ERR-05, TC-ERR-06) Description : Plusieurs cas d’erreur exigent des rejets mais aucun code d’erreur normé/stable n’est défini pour paramètres invalides, capsule/ciphertext invalide, ou erreur Umbral générique, alors que la stabilité des codes est contractuelle. Impact : Comportement et verdicts invérifiables ; risque de divergences entre implémentations/tests et contestations contractuelles. Gravité : Majeur
Type : Non testable Référence : PD-41-specification.md §4 (Invariant 8) + §7 (CA8) + §8 (S7) + §10 (pt.9) Description : L’interdiction de loguer des secrets est posée mais aucune granularité d’audit (champs autorisés/interdits, traces minimales) n’est définie. Impact : Contrôle et audit des logs subjectifs ; risque de faux positifs/négatifs et de non-conformité non détectable. Gravité : Majeur
Type : Non testable Référence : PD-41-specification.md §6 (E6) + §7 (CA11) ; PD-41-tests.md (TC-ERR-06) Description : L’exigence de rejet fail-closed en cas d’erreur interne Umbral n’est associée à aucun scénario reproductible ou condition contractuelle pour provoquer cette erreur. Impact : Impossibilité de prouver la conformité au fail-closed sur erreurs cryptographiques ; comportement effectif non vérifiable. Gravité : Mineur
Type : Incohérence Spec↔Tests Référence : PD-41-specification.md §6 (E8) ; PD-41-tests.md (absence de test) Description : Le rejet « Non autorisé » est listé comme cas d’erreur, mais aucun scénario ou critère d’acceptation ne valide ce comportement. Impact : Chemin d’erreur non vérifié ; risque d’acceptation contractuelle d’un service qui n’applique pas le contrôle d’accès attendu. Gravité : Majeur
Type : Incohérence Spec↔Tests Référence : PD-41-tests.md (TC-NOM-01) vs PD-41-specification.md §5 (N1), §7 (CA12) Description : Le test exige la stabilité des valeurs readiness/health sur N appels successifs, exigence absente de la spécification qui ne prescrit que la présence des champs. Impact : Risque de non-conformité test perçue alors que le comportement n’est pas contractuel ; divergence d’interprétation en audit. Gravité : Mineur
Type : Incohérence Spec↔Tests Référence : PD-41-tests.md (TC-NEG-02) vs PD-41-specification.md §4 (Invariant 7), §2 (Hors périmètre) Description : Le test négatif attend un comportement face au flood DoS (rejet/limitation), alors que la spec ne prévoit que des limites de taille et exclut d’autres politiques (rate limiting) du périmètre. Impact : Couverture de test hors périmètre pouvant conduire à des rejets de conformité non justifiés contractuellement. Gravité : Mineur