← Derniers articles
💻 computer science

PromptMark: A Prompt-Guided Iterative-Feedback Framework for Source Code Watermarking

PromptMark est un cadre de travail à boîte noire guidé par des invites qui intègre des tatouages numériques détectables dans le code source généré par l'IA grâce à des instructions d'entrée structurées et des retours itératifs, atteignant une attribution forte sans compromettre la fonctionnalité du code ni nécessiter d'accès aux composants internes du modèle.

Auteurs originaux : Istiaq Ahmed Fahad, Mridha Md. Nafis Fuad, Kazi Sakib

Publié 2026-06-23
📖 6 min de lecture🧠 Analyse approfondie

Auteurs originaux : Istiaq Ahmed Fahad, Mridha Md. Nafis Fuad, Kazi Sakib

Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète

Imaginez que vous êtes un boulanger qui emploie un chef robot très talentueux, mais invisible, pour cuire des milliers de pains chaque jour. Vous voulez savoir quel pain a été cuit par votre robot et lequel a été fait par un concurrent humain, mais le robot ne laisse aucune signature et le pain est identique à l'extérieur.

C'est le problème que PromptMark résout, mais au lieu du pain, il s'agit de code informatique écrit par une Intelligence Artificielle (IA).

Voici comment l'article explique la solution, décomposée en concepts simples :

1. Le Problème : Le Chef "Boîte Noire"

Dans le monde réel, la plupart des développeurs ne possèdent pas les modèles d'IA qu'ils utilisent ; ils les louent via un service de « boîte noire » (comme un restaurant où vous ne pouvez pas voir la cuisine).

  • Le Défi : Vous ne pouvez pas regarder à l'intérieur du cerveau du robot pour modifier sa façon de penser (ce qu'on appelle un accès « boîte blanche »). Vous pouvez seulement lui donner une recette (un prompt) et attendre le plat (le code).
  • Le Risque : Si l'IA écrit du code qui casse quelque chose ou vole de la propriété intellectuelle, il est difficile de prouver que c'est l'IA. De plus, si vous essayez de forcer l'IA à écrire du code de manière étrange pour le marquer, le code pourrait cesser de fonctionner (comme un robot essayant de cuire du pain avec un marteau).

2. La Solution : La Recette de la « Liste Verte »

Les chercheurs ont créé une méthode appelée PromptMark. Au lieu d'essayer de pirater le cerveau du robot, ils modifient simplement les instructions qu'ils lui donnent.

Imaginez que vous donniez une règle spéciale au chef robot : « Pour chaque nouveau nom d'ingrédient que tu inventes, tu dois commencer le nom par une lettre de cette "Liste Verte" spécifique (par exemple A, B ou C). »

  • La Liste Verte : C'est une liste secrète de lettres (ex: A, B, C) choisies sur la base d'une clé secrète.
  • La Liste Rouge : Ce sont les lettres avec lesquelles on dit au robot de ne pas commencer les noms.
  • L'Astuce : Le robot suit ces règles si bien qu'il commence à nommer ses variables (comme apple_count ou banana_loop) avec des lettres de la Liste Verte beaucoup plus souvent qu'un humain ne le ferait naturellement.

3. La Boucle de « Feedback Itératif » : Le Test de Goût

Parfois, le robot peut oublier la règle ou écrire du code qui ne fonctionne pas parce qu'il essaie trop de suivre la règle. Pour corriger cela, PromptMark utilise une boucle de feedback :

  1. Tour 1 : Le robot écrit le code.
  2. La Vérification : Un humain (ou un autre ordinateur) vérifie deux choses :
    • Est-ce que le code fonctionne réellement ? (Est-ce que le pain a levé ?)
    • Le robot a-t-il suivi la règle de la « Liste Verte » suffisamment ? (Y a-t-il assez de noms commençant par A, B, C ?)
  3. Le Feedback : Si le code est cassé, on dit au robot : « Corrige la logique ». Si le code fonctionne mais que la règle de la Liste Verte est faible, on lui dit : « Bon travail, mais utilise plus de noms commençant par "A" la prochaine fois ».
  4. Tour 2 : Le robot réessaie avec les nouvelles instructions.

Cela continue jusqu'à ce que le code soit parfait et que le tatouage numérique (watermark) soit fort.

4. La Détection : Le « Détective Statistique »

Comment savoir si un morceau de code a été fabriqué par l'IA ? Vous n'avez pas besoin de voir la clé secrète. Il suffit de regarder les noms.

  • Code Naturel : Les humains nomment les choses de manière aléatoire. Si vous regardez 100 variables, peut-être que 10 commencent par 'A', 10 par 'B', etc. C'est un mélange équilibré.
  • Code Tatoué : Parce que l'IA a été forcée d'utiliser la « Liste Verte », vous verrez un motif étrange. Peut-être que 60 % des noms commencent par 'A', 'B' ou 'C'.
  • Le Test : Un test statistique (comme un détecteur mathématique) compte ces lettres. Si le motif est trop fort pour être une coïncidence, il s'écrie : « Ceci a été écrit par l'IA ! »

5. Pourquoi c'est spécial

L'article affirme que cette méthode est spéciale pour trois raisons :

  • C'est Invisible : Le code semble toujours normal et fonctionne parfaitement. Le « tatouage » n'est qu'un motif subtil dans les noms, comme un message caché dans les paroles d'une chanson que l'on ne remarque que si l'on connaît le motif.
  • Cela fonctionne sur les « Boîtes Noires » : Vous n'avez pas besoin de posséder l'IA ou de voir son code interne. Vous lui parlez simplement comme un utilisateur normal.
  • C'est Sécurisé : La « Liste Verte » est générée à l'aide d'une clé secrète (comme un mot de passe). Seule une personne possédant cette clé sait quelles lettres chercher, ce qui rend difficile pour d'autres de falsifier le tatouage.

Les Résultats

Les chercheurs ont testé cela sur deux ensembles célèbres de problèmes de codage (MBPP et HumanEval) en utilisant deux modèles d'IA différents (Gemini et Claude).

  • Taux de Succès : La méthode a réussi à marquer le code environ 90 % à 98 % du temps sans casser le code.
  • Qualité : Le code est resté aussi bon que le code écrit sans le tatouage.

Les Limites (Ce que l'article admet)

  • Attaques par Renommage : Si quelqu'un prend le code tatoué et change manuellement tous les noms de variables pour autre chose, le tatouage disparaît. L'article note que bien que la méthode soit bonne, elle n'est pas magique ; un humain déterminé pourrait effacer le signal en réécrivant le code.
  • Spécifique à un Langage : L'étude a été réalisée sur du code Python. L'article prévient que les langages ayant des règles de nommage différentes pourraient se comporter différemment.

En résumé, PromptMark est une façon de chuchoter une instruction secrète à un chef IA : « Nomme tes ingrédients avec ces lettres spécifiques », ce qui vous permet de prouver plus tard, avec des mathématiques, que l'IA a préparé le plat, le tout sans gâcher le goût de la nourriture.

Noyé(e) sous les articles dans votre domaine ?

Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.

Essayer Digest →