Pourquoi écrire en français
Je publie en anglais sur le Universal Trust Adapter (UTA) depuis des semaines. Mais une part significative des développeurs qui me contactent sont francophones — France, Belgique, Suisse, Québec, Afrique francophone. Cet article corrige le manque de documentation en français.
Le problème
Quand un agent IA invoque un outil — un MCP server, une API interne, un microservice — il n'existe pas de façon canonique de répondre à trois questions fondamentales :
- Qui a émis la crédential de cet outil ?
- Jusqu'à quand est-elle valide ?
- Quel est son scope — que peut-elle et que ne peut-elle pas faire ?
Si vous venez du monde OAuth, cela vous parle. Si vous venez du X.509, pareil. Si vous venez du W3C Verifiable Credentials, idem. Le problème est que chaque standard répond à la question différemment, et les agents IA ne savent pas quel standard utiliser.
La solution : UTA
Universal Trust Adapter — https://github.com/alicelabs-llc/universal-trust-adapter
UTA est un vérificateur universel qui accepte 8 formats de crédentials :
| # | Format | Origine |
|---|---|---|
| 1 | ATC v3 (Agent Trust Card) | Proposition d'AliceLabs |
| 2 | JWT (avec x5c chain) |
IETF RFC 7519 |
| 3 | W3C Verifiable Credentials | W3C VC Data Model |
| 4 | A2A (Agent-to-Agent) cards | Google A2A Protocol |
| 5 | EAT-AI (Entity Attestation Tokens) | IETF RATS |
| 6 | ZTA (Zero Trust Agent) cards | Variante ZTA |
| 7 | MCP Server Cards | Anthropic MCP |
| 8 | X.509 certificates | ITU-T |
Et les traite via un pipeline de 12 étapes :
PARSER → DETECT → SCHEMA → CRYPTO → ISSUER → KEY_BINDING
→ POP → PROVENANCE → LIFECYCLE → EVIDENCE → POLICY → DECISION
Comment l'utiliser
Option A : API publique
curl -X POST https://www.marketnow.site/api/trust?action=verify \
-H "Content-Type: application/json" \
-d '{"card": "...votre JWT ou VC ici..."}'
Option B : Package NPM
npm install @marketnow/trust-core
import { verify } from '@marketnow/trust-core';
const result = await verify(card);
if (result.decision === 'PERMIT') {
// l'outil est de confiance, exécutez
} else {
console.log(result.failed_stage);
}
Benchmarks réels
- 6 744 vérifications par seconde sur un seul cœur
- 480+ tests en Node.js
- 16 tests en Python (adapter)
- 23 tests de propriété (conformance suite)
Pourquoi cela compte en francophonie
La francophonie tech est vive — Paris, Montréal, Bruxelles, Genève, Tunis, Dakar. Les startups francophones construisent des agents IA pour la finance, la santé, l'éducation. Dans tous ces secteurs, la confiance entre agents n'est pas optionnelle.
UTA est conçu pour cela : une bibliothèque petite, rapide, sans dépendances lourdes, intégrable en une après-midi.
Ce que UTA NE résout PAS
Honnêtement :
- Reputation layer : UTA vérifie la cryptographie et l'émetteur, mais ne résout pas "cet émetteur est-il de confiance ?". Cela nécessite un reputation graph séparé.
- EAT-AI et ZTA sont en beta — les formats sont implémentés mais l'adoption est faible.
- Policy engine : l'étape POLICY accepte n'importe quelle politique que vous implémentez, mais UTA n'apporte pas de politiques prédéfinies.
Prochaines étapes
- Lisez le README
- Testez l'API : https://www.marketnow.site/api/trust?action=formats
- Si vous voulez contribuer — traductions, adapters dans d'autres langages, cas d'usage — ouvrez un issue
Conclusion
La confiance entre agents n'est pas un problème technique de cryptographie. C'est un problème d'interopérabilité des standards. UTA n'invente pas un nouveau standard — il connecte ceux qui existent.
Si vous êtes développeur francophone travaillant sur des agents IA, c'est le moment de contribuer à la couche de confiance. Nous mettons l'infrastructure ; vous mettez les cas d'usage.
Repo : alicelabs-llc/universal-trust-adapter · API : marketnow.site/api/trust · NPM : @marketnow/trust-core
Top comments (0)