> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Décrit les algorithmes de signature et les recommandations pour les configurer dans le Auth0 Dashboard.

# Algorithmes de signature

<Tooltip tip="Algorithme de signature : algorithme utilisé pour signer numériquement des jetons afin de garantir que le jeton n’a pas été altéré." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Signing+algorithms">Les algorithmes de signature</Tooltip> sont utilisés pour signer les jetons émis pour votre application ou votre API. Une signature fait partie d’un [JSON Web Token (JWT)](/docs/fr-ca/secure/tokens/json-web-tokens) et sert à vérifier que l’émetteur du jeton est bien celui qu’il prétend être, et à s’assurer que le message n’a pas été modifié en cours de route.

Vous pouvez choisir parmi les algorithmes de signature suivants :

* **RS256 (signature RSA avec SHA-256)** : algorithme asymétrique, ce qui signifie qu’il y a deux clés : une clé publique et une clé privée, qui doit être gardée secrète. Auth0 détient la clé privée utilisée pour générer la signature, et le consommateur du <Tooltip tip="JSON Web Token (JWT) : format standard d’ID Token (et souvent de jeton d’accès) utilisé pour représenter des claims de façon sécurisée entre deux parties." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=JWT">JWT</Tooltip> récupère une clé publique à partir des endpoints de métadonnées fournis par Auth0 et l’utilise pour valider la signature du JWT.
* **HS256 (HMAC avec SHA-256)** : algorithme symétrique, ce qui signifie qu’il n’y a qu’une seule clé privée, qui doit être gardée secrète, et qu’elle est partagée entre les deux parties. Comme la même clé sert à la fois à générer la signature et à la valider, il faut veiller à ce qu’elle ne soit pas compromise. Cette clé privée (ou ce secret) est créée lorsque vous enregistrez votre application (<Tooltip tip="Client secret : secret utilisé par un client (application) pour s'authentifier auprès de l'Authorization Server; il ne doit être connu que du client et de l'Authorization Server et doit être suffisamment aléatoire pour ne pas pouvoir être deviné." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=client+secret">secret client</Tooltip>) ou votre API (secret de signature) et que vous choisissez l’algorithme de signature HS256.
* **PS256 (signature RSA avec SHA-256)** : algorithme asymétrique, ce qui signifie qu’il y a deux clés : une clé publique et une clé privée, qui doit être gardée secrète. Auth0 détient la clé privée utilisée pour générer la signature, et le consommateur du JWT récupère une clé publique à partir des endpoints de métadonnées fournis par Auth0 et l’utilise pour valider la signature du JWT. Contrairement à RS256, le même en-tête JWT et le même payload généreront une signature différente chaque fois.

La pratique la plus sécuritaire, et celle que nous recommandons, consiste à utiliser RS256 parce que :

* Avec RS256, vous avez l’assurance que seul le détenteur de la clé privée (Auth0) peut signer des jetons, tandis que n’importe qui peut vérifier la validité du jeton à l’aide de la clé publique.
* Avec RS256, si la clé privée est compromise, vous pouvez effectuer une rotation des clés sans avoir à redéployer votre application ou votre API avec le nouveau secret (ce que vous devriez faire si vous utilisiez HS256).

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Si vous configurez l’authentification Private Key JWT avec une Enterprise connection Okta ou OpenID Connect (OIDC), vous devrez peut-être choisir des [algorithmes de signature supplémentaires](/docs/fr-ca/authenticate/enterprise-connections/private-key-jwt-client-auth#configure-private-key-jwt-client-authentication).
</Callout>

<div id="learn-more">
  ## En savoir plus
</div>

* [JSON Web Tokens](/docs/fr-ca/secure/tokens/json-web-tokens)
* [Modifier les algorithmes de signature de l’application](/docs/fr-ca/get-started/applications/change-application-signing-algorithms)
* [Clés de signature](/docs/fr-ca/get-started/tenant-settings/signing-keys)
* [Rotation des clés de signature](/docs/fr-ca/get-started/tenant-settings/signing-keys/rotate-signing-keys)
* [Révoquer les clés de signature](/docs/fr-ca/get-started/tenant-settings/signing-keys/revoke-signing-keys)
* [Afficher les certificats de signature](/docs/fr-ca/get-started/tenant-settings/signing-keys/view-signing-certificates)
