Provenance Attesto 3
AttestoMark Image
AttestoMark Image incorpore un localisateur opaque propre à chaque asset dans un nouveau PNG ou JPEG. Le Local Vault du tenant le résout dans un registre local chiffré. L'original est conservé. Cette fonction ajoute un signal de provenance; elle ne détermine ni l'auteur, ni l'origine, ni la propriété, ni la conformité juridique.
Périmètre
Ce guide documente le provider d'image Class S de production de Local Vault. Il couvre le contrat figé ATTESTO-MARK-IMAGE-001/0.1, les comportements locaux d'embed et de détection, la rotation des clés, les limites opérationnelles et la baseline de robustesse exacte du Sprint 7. AttestoMark Image est une capacité de Local Vault, pas une API de watermarking côté navigateur.
Architecture
- Local Vault crée un mark record aléatoire et dérive un localisateur HMAC de 61 bits sous l'epoch de clé tenant active.
- Le provider Class S sans réseau exécute Adobe TrustMark Rust
0.2.2, modèle Q, BCH5, force0.95. - Le provider voit une image limitée et le localisateur opaque. Il ne reçoit jamais les credentials tenant, plateforme ou les clés du registre.
- Local Vault détecte indépendamment le résultat, finalise le record chiffré et crée une relation d'asset
marked_from. - Seules l'evidence normalisée et les commitments de capsule randomisés peuvent quitter Local Vault.
Les modèles ONNX d'encodage et de décodage sont installés au build du conteneur. Leur taille et leur digest SHA-256 sont vérifiés au build puis avant le chargement runtime. Le téléchargement runtime et l'accès réseau du provider sont désactivés.
Cycle d'incorporation
- Valider le media type, la taille encodée, les dimensions décodées et le nombre de pixels.
- Hasher l'original inchangé et réserver un record de registre chiffré sans collision.
- Écrire le signal dans un nouveau fichier de sortie; l'entrée n'est jamais modifiée sur place.
- Effectuer une détection keyed indépendante sur la sortie terminée.
- Finaliser le record uniquement si le localisateur détecté correspond exactement à la réservation.
- Lier digest original, digest marqué, identité du provider, key epoch, media types et relation
marked_fromà l'evidence de provenance locale.
Une erreur provider, un timeout, une sortie malformed, une erreur registry, un digest mismatch ou un échec de détection indépendante supprime la sortie incomplète et annule la réservation. Aucun de ces chemins ne peut déclarer embedded.
Détection keyed
La détection vérifie d'abord l'image exacte. Sans signal valide, le provider essaie des crops centrés bornés à 3%, 5% et 10% d'inset pour récupérer le profil screenshot-like documenté. Un signal brut ne suffit pas: Local Vault doit résoudre et déchiffrer le record keyed, puis recalculer le localisateur depuis le mark id et le digest de l'asset original. Une payload inconnue vaut not_observed; une evidence malformed ou incohérente avec le registre vaut invalid.
Les outils TrustMark publics peuvent récupérer les 61 bits opaques. Ils ne contiennent aucun tenant, nom de fichier, asset id, capsule id, source id ou mark id. Ils n'ont de sens Attesto qu'avec la clé tenant et le registre Local Vault chiffré.
Formats et limites
| Propriété | Valeur de production |
|---|---|
| Entrée et sortie | image/png ou image/jpeg; la sortie conserve le media type d'entrée. |
| Dimensions minimales | 256 par 256 pixels. |
| Taille encodée maximale | 256 MiB. |
| Taille décodée maximale | 40 000 000 pixels et 20 000 pixels par dimension. |
| Alpha PNG | Copié inchangé depuis l'original après l'incorporation RGB. |
| Sortie JPEG | Qualité 95. |
| Isolation provider | Sandbox Class S sans réseau, deadline CPU de 30 secondes, espace d'adressage borné à 3 GiB. |
Clés et registre
La dérivation du localisateur, la recherche registry et le chiffrement registry utilisent trois clés de 256 bits séparées. Les états sont active, verify_only et revoked. L'embed utilise une epoch active. La détection peut consulter un ensemble borné d'epochs active/verify-only; les epochs revoked échouent fermées. Une epoch est limitée à 1 000 000 de records. Local Vault contrôle les collisions et impose une rotation à épuisement.
Les localisateurs bruts et digests déterministes d'assets ne sont pas des index en clair. Les records sont chiffrés avec AES-256-GCM et la recherche keyed utilise un digest HMAC distinct. Sauvegardez ensemble les key epochs et le registre chiffré; perdre l'un empêche une détection historique significative.
Evidence et confidentialité
L'evidence normalisée publique contient l'état, le scheme, le provider, le modèle, le code d'erreur éventuel et la relation d'asset. Le localisateur brut, le score du modèle, le mark id, le plaintext registry et les détails internes du détecteur sont des données locales C1. Ils sont exclus des envelopes plateforme, logs, métriques, bundles frontend et rapports de release. La soumission de capsule transporte des commitments randomisés et non des identifiants déterministes de contenu.
Robustesse mesurée
Le corpus figé du Sprint 7 comprend huit images de test déterministes de 768 par 512 et 64 cas. Le conteneur de production a réussi 8/8 détections exactes, 8/8 recompressions JPEG qualité 85, 8/8 redimensionnements à 75%, 8/8 crops modérés, 8/8 ajustements de couleur, 8/8 suppressions de métadonnées, 8/8 recompressions screenshot-like et 8/8 contrôles de faux positif avec une clé non correspondante. Le PSNR minimal mesuré est de 45,665 dB. Le p95 mesuré est de 645,513 ms pour embed et 516,107 ms pour detect sur l'hôte de release consigné.
Ces chiffres décrivent uniquement ce corpus, ces transformations, cette version du provider, ces modèles et cet environnement de release. Ils ne constituent pas un taux de survie universel et doivent être remesurés si l'une de ces entrées change.
Exploitation
- Conserver le binaire provider, les modèles, la sandbox, le manifest, la base registry et les répertoires de clés sur un stockage persistant protégé avec les propriétaires et modes prescrits.
- Exécuter les contrôles provider doctor de Local Vault et le vrai canary du cycle image après installation, mise à jour, restauration ou rotation de clé.
- Alerter sur les codes model-integrity, model-load, embed, detect, output, registry-tamper, collision et epoch-exhaustion.
- Ne jamais remplacer les modèles ou le binaire provider indépendamment d'une release Attesto versionnée.
- Conserver l'original séparément; la sortie marquée est un nouvel asset node, jamais un remplacement présenté comme l'original.
Modes d'échec
| Résultat | Signification | Action opérateur |
|---|---|---|
embedded | La détection keyed indépendante correspond au record local finalisé. | Conserver les deux assets et le cycle registry chiffré. |
detected | Le localisateur est résolu sous une key epoch éligible et les contrôles du record réussissent. | L'utiliser comme un signal dans le dossier de provenance complet. |
not_observed | Aucun signal AttestoMark Image localement significatif n'est résolu. | Ne pas en déduire une origine humaine ni une absence de modification. |
invalid | L'evidence candidate contredit le registre ou le schéma fermé. | Conserver l'asset et enquêter comme evidence contradictoire. |
| Code d'erreur sûr | Le provider ou Local Vault échoue avant un résultat fiable. | Échouer fermé, conserver des logs sans données privées et réparer la dépendance nommée. |
Limite des claims
Un résultat réussi prouve que ce Local Vault a résolu un localisateur keyed incorporé par le provider épinglé et l'a lié à son mark record chiffré et à sa capsule de provenance. Il ne prouve pas à lui seul qui a créé l'image, si une IA a été utilisée, si le contenu est vrai, qui le possède ou si une obligation légale est satisfaite. L'absence ne prouve pas une création humaine. Les signaux copiés sont une evidence contradictoire à évaluer avec les receipts, C2PA, source bindings, relations d'assets, policies et le Proof of Evolution plus large.
