Aller au contenu
ecdsa.com

PASETO (jetons de sécurité multiplateformes)

Un format de jeton conçu comme une alternative plus simple à JOSE, avec des protocoles versionnés au lieu d’algorithmes négociables : les jetons v4.public sont signés avec Ed25519, et les jetons v4.local sont chiffrés avec XChaCha20 et authentifiés avec BLAKE2b à clé.
Autres graphiesPASETOPlatform-Agnostic SEcurity TOkensv4.publicv4.localPASERK

Un jeton a la forme version.purpose.payload avec un .footer facultatif, par exemple v4.public.…. Chaque version fige sa cryptographie : v3 utilise des algorithmes du NIST (ECDSA P-384 pour les jetons publics ; AES-256-CTR avec HMAC-SHA384 pour les jetons locaux), v4 utilise Ed25519 et XChaCha20 avec BLAKE2b-MAC. L’encodage de pré-authentification (PAE) lie l’en-tête, la charge utile, le pied de page et d’éventuelles assertions implicites (un contexte authentifié mais non transmis, comme un identifiant de locataire) dans ce qui est signé ou protégé par MAC.

Il n’y a ni en-tête alg à détourner ni none ; les préfixes de version et d’usage empêchent aussi d’utiliser une clé locale pour des jetons publics. Les clés sont sérialisées avec PASERK (k4.public…, k4.local…). Les charges utiles utilisent des claims enregistrés de style JWT (exp, iss, aud, sous forme de chaînes ISO 8601 ou de chaînes simples).

PASETO n’est pas une norme de l’IETF (la spécification se trouve sur github.com/paseto-standard/paseto-spec), et les bibliothèques, l’outillage et la prise en charge par les fournisseurs d’identité sont moins fournis que pour JWT. Un JWT vérifié avec un algorithme fixé, conformément à la RFC 8725, offre l’essentiel des mêmes garanties. Le décodeur PASETO analyse les jetons en local.

Normes et références

Tous les termes