# Didomi Consent String (DCS) et signature

{% hint style="info" %}
Le Didomi Consent String (DCS) `didomi_dcs` est une alternative à `didomi_token`  en tant que mécanisme utilisé pour stocker le consentement de l’utilisateur final. [Cliquez ici](https://docs.didomi.io/moIvfcA7NSpjmwGZ7dzv/fr/commencer/general/migrer-vers-didomi-consent-string-dcs) pour plus d’informations sur la migration de vos bannières de consentement afin qu’elles utilisent le Didomi Consent String.
{% endhint %}

Le Didomi Consent String (DCS) est un format de chaîne de consentement compact et moderne, conçu pour offrir une flexibilité totale dans la représentation des choix de confidentialité d’un utilisateur final. Il est entièrement pris en charge sur les plateformes web et mobiles et inclut tous les SDK Didomi pour les sites web, ainsi que pour les applications iOS et Android. Dans cet article, nous aborderons les points suivants :

* [Présentation du Didomi Consent String (DCS)](#didomi-consent-string-dcs-overview)
* [`didomi_dcs`](#didomi_dcs-cookie)
* [Codage du Didomi Consent String (DCS) ](#didomi-consent-string-dcs-encoding)
* [Signature Didomi](#didomi-signature)
* [Décoder le Didomi Consent String (DCS)](#decode-didomi-consent-string-dcs-1)

***

### &#x20;Présentation du Didomi Consent String (DCS)

Le Didomi Consent String (DCS) est un composant fondamental de l’infrastructure de confidentialité, hautement performant et permettant la conformité légale. Il dépasse le cadre des solutions traditionnelles en permettant aux organisations d’encoder et de stocker tous les types de données de consentement dans une seule chaîne binaire.

Inspiré de la TC String du Interactive Advertising Bureau (IAB), une norme du secteur pour les fournisseurs du Transparency and Consent Framework (TCF), le DCS permet à votre organisation de prendre en charge non seulement les fournisseurs et finalités TCF, mais aussi des fournisseurs et finalités personnalisés, des Authorized Technology Providers (ATP), etc., le tout dans un format unique, léger et conforme à la confidentialité. Parmi les avantages de l’utilisation du DCS :

<table data-header-hidden><thead><tr><th width="174">Avantage</th><th>Description</th></tr></thead><tbody><tr><td>Taille compacte</td><td>Utilise un format binaire au lieu de JSON, réduisant la taille globale du cookie pour rester largement en dessous de 2 Ko.</td></tr><tr><td>Gain de performances</td><td>Des charges utiles plus légères améliorent la vitesse des pages et le référencement SEO.</td></tr><tr><td>Plus facile à analyser</td><td>Aucun besoin de décoder côté client des chaînes JSON complexes.</td></tr></tbody></table>

{% hint style="info" %}
[Cliquez ici](https://developers.didomi.io/cmp/didomi-consent-string) pour consulter la documentation développeur de Didomi concernant le Didomi Consent String (DCS).
{% endhint %}

### `didomi_dcs`&#x20;

Le Didomi Consent String (DCS) est stocké dans `didomi_dcs` et constitue une alternative à  `didomi_token` qui était généralement stocké dans les cookies du navigateur ou dans le stockage local. Comme son prédécesseur  `didomi_dcs` peut être :

* Stocké dans des cookies ou dans le stockage local.
* Lu par les SDK Didomi, les API et les intégrations tierces.

  Lu par les SDK Didomi, les API et les intégrations tierces.
* Utilisé pour déterminer si le consentement ou l’intérêt légitime s’applique à des activités spécifiques de traitement des données.

{% hint style="warning" %}
**Remarque :** Les bannières de consentement créées après **le 17 juin 2025** auront le Didomi Consent String (DCS) activé par défaut (*c.-à-d.* `didomi_dcs` *sera utilisé pour stocker le consentement de l’utilisateur final*). Les bannières créées précédemment peuvent migrer vers le Didomi Consent String (DCS). [Cliquez ici](https://docs.didomi.io/moIvfcA7NSpjmwGZ7dzv/fr/commencer/general/migrer-vers-didomi-consent-string-dcs) pour en savoir plus sur la migration vers le DCS.
{% endhint %}

### Codage du Didomi Consent String (DCS)&#x20;

Le Didomi Consent String (DCS) utilise un format binaire conçu pour être efficace et flexible. Il prend en charge trois mécanismes de codage :

<table data-header-hidden><thead><tr><th width="197.5">Mécanisme</th><th>Description</th></tr></thead><tbody><tr><td>BitField</td><td>Idéal pour coder de manière compacte des identifiants consécutifs ou étroitement regroupés</td></tr><tr><td>Range</td><td>Efficace pour coder des groupes d’identifiants avec des écarts</td></tr><tr><td>Fibonacci</td><td>Optimisé pour compresser de grands ensembles d’intervalles d’identifiants continus ou suivant un motif</td></tr></tbody></table>

Chaque section du DCS (par exemple, les finalités ou les fournisseurs) peut utiliser un mécanisme de codage différent, selon la nature et la distribution des identifiants. Le codage est automatiquement sélectionné par la bibliothèque Didomi DCS afin de générer la chaîne la plus petite et la plus efficace possible.

Les données contenues dans le DCS comprennent les éléments suivants :

<table data-header-hidden><thead><tr><th width="236">Données</th><th>Description</th></tr></thead><tbody><tr><td>Métadonnées d’en-tête</td><td>Version, date de création, date de dernière mise à jour, ID utilisateur et état de synchronisation.</td></tr><tr><td>Consentement aux finalités</td><td>Choix de l’utilisateur final concernant le traitement de ses données personnelles pour des finalités spécifiques reposant sur le consentement comme base légale.</td></tr><tr><td>Intérêt légitime des finalités</td><td>Choix de l’utilisateur final concernant le traitement de ses données pour des finalités spécifiques reposant sur l’intérêt légitime comme base légale.</td></tr><tr><td>Consentement des fournisseurs</td><td>Choix de l’utilisateur final autorisant des fournisseurs spécifiques à traiter des données en s’appuyant sur le consentement comme base légale.</td></tr><tr><td>Intérêt légitime des fournisseurs</td><td>Choix de l’utilisateur final autorisant des fournisseurs spécifiques à traiter des données en s’appuyant sur l’intérêt légitime comme base légale.</td></tr><tr><td>ID de l’appareil (DID)</td><td>Identifiant unique de l’appareil. (Facultatif) </td></tr><tr><td>ID utilisateur de l’organisation (OUID)</td><td>ID utilisateur fourni par l’organisation, utile pour synchroniser le consentement entre les appareils. (Facultatif) </td></tr><tr><td>Signature</td><td>Une fonctionnalité premium qui ajoute une signature cryptographique pour vérifier l’intégrité et l’authenticité de la chaîne de consentement. (Facultatif) <br><br><a href="#didomi-signature">Cliquez ici</a> pour plus d’informations.</td></tr></tbody></table>

### Signature Didomi

La Signature Didomi est une fonctionnalité premium du Didomi Consent String (DCS) qui ajoute un sceau cryptographique au DCS afin de garantir l’authenticité et l’intégrité du consentement de l’utilisateur final. La signature peut aider votre organisation à :

* Vérifier que les données de consentement de l’utilisateur final n’ont pas été falsifiées
* Ajouter une valeur juridique en prouvant que le consentement d’un utilisateur final est authentique et inchangé

{% hint style="info" %}
[Cliquez ici](https://docs.didomi.io/moIvfcA7NSpjmwGZ7dzv/fr/plateforme-de-gestion-du-consentement-cmp/bannieres-de-consentement/signature-didomi) pour obtenir des informations sur la manière d’activer la Signature Didomi.
{% endhint %}

![](https://1244787492-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNDxbAdc00ce6bH5u1urh%2Fuploads%2FDHuofyYWTXhA8EiEaHUJ%2FDidomi_Help_Center_-_Signature-webp.webp?alt=media\&token=90f54176-80b9-4961-b37c-74f3d82caa7e)

La signature est une combinaison d’une **clé** et de la **signature**. Didomi utilise plusieurs clés de signature (A, B, C...) avec un algorithme en rotation et, si une clé est compromise, elle est désactivée puis remplacée sans interruption de service

```
// Exemple de signature

CMEYCIQCxaQZGTjKUdeh1BfsWE1fbHoskKbOu8lqcbhQAe7pRlQIhAI80Rm3Qk6VGWNUMLD8D/VcndQ1ufw26hQsfWNgH7KjY
```

### Décoder le Didomi Consent String (DCS)

Le Didomi Consent String (DCS) peut être décodé à l’aide du [décodeur DCS](https://dcs-decoder.didomi.io/), qui transformera la chaîne binaire en un objet JSON lisible par un humain.

{% hint style="info" %}
[Cliquez ici](https://developers.didomi.io/cmp/didomi-consent-string/decoding-tools) pour consulter notre documentation développeur sur la manière de décoder automatiquement le Didomi Consent String (DCS).
{% endhint %}

Saisissez le DCS de l’utilisateur final dans l’espace fourni et cliquez sur **Décoder**.

<figure><img src="https://1244787492-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNDxbAdc00ce6bH5u1urh%2Fuploads%2FOtQGqYcbSZTBR7DiWIaa%2FScreenshot%202025-09-16%20at%2010.30.03%E2%80%AFAM.png?alt=media&#x26;token=f98b820c-f6b1-482a-ad71-ab05f3c65499" alt="" width="563"><figcaption></figcaption></figure>

La sortie du décodeur DCS comprendra les éléments suivants :

* Objet JSON complet contenant les métadonnées de consentement, les sélections fournisseur/finalité et les horodatages.
* État de vérification de la signature (si le DCS contient une signature cryptographique)

```json
//Exemple
{
  "user_id": "19938c3e-f28b-603a-bc1b-520c55f12345",
  "created": "2025-09-11T12:33:08.900Z",
  "updated": "2025-09-11T12:33:13.300Z",
  "regulation_id": 1,
  "purposes_optin": {
    "enabled": [
      16653
    ],
    "disabled": []
  },
  "purposes_optout": {
    "enabled": [],
    "disabled": []
  },
  "vendors_optin": {
    "enabled": [
      1,
      2,
      14032
    ],
    "disabled": []
  },
  "vendors_optout": {
    "enabled": [
      2,
      14032
    ],
    "disabled": []
  }
}
```
