DEV Community

Edison Flores
Edison Flores

Posted on

Universal Trust Adapter : le USB-C de la confiance entre agents IA (en français)

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 :

  1. Qui a émis la crédential de cet outil ?
  2. Jusqu'à quand est-elle valide ?
  3. 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 Adapterhttps://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
Enter fullscreen mode Exit fullscreen mode

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..."}'
Enter fullscreen mode Exit fullscreen mode

Option B : Package NPM

npm install @marketnow/trust-core
Enter fullscreen mode Exit fullscreen mode
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);
}
Enter fullscreen mode Exit fullscreen mode

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

  1. Lisez le README
  2. Testez l'API : https://www.marketnow.site/api/trust?action=formats
  3. 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)