API Web Crypto

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

L'API Web Cryptography (aussi appelée Web Crypto API) est une interface permettant à un script d'utiliser des primitives cryptographiques afin de construire des systèmes utilisant la cryptographie.

Note : Cette fonctionnalité est disponible via les Web Workers.

Attention : L'API Web Crypto fournit un ensemble de primitives cryptographiques de bas niveau. Il est très facile de mal les utiliser et les pièges peuvent être très subtils.

Même si vous utilisez les fonctionnalités cryptographiques basiques correctement, ayez conscience que la gestion sécurisée des clés et la conception générale d'un système sécurisé sont des tâches extrêmement difficiles à réaliser correctement et qui incombent donc généralement à des experts en sécurité.

Une légère erreur dans la conception et/ou l'implémentation d'un système de sécurité peut rendre la sécurité d'un tel système complètement vaine.

N'hésitez pas à apprendre, bidouiller, expérimenter, mais ne garantissez pas la sécurité de votre production (explicitement ou implicitement) avant qu'une personne compétente en la matière l'ait revue. Le cours Crypto 101 peut être une bonne introduction pour apprendre comment concevoir et implémenter des systèmes sécurisés.

Interfaces

Certains navigateurs implémentent une interface appelée Crypto sans qu'elle soit bien définie ou sûre sur le plan cryptographique. Afin d'éviter toute confusion, les méthodes et proprietés de cette première interface ont été retirées des navigateurs implémentant l'API Web Crypto. L'ensemble des méthodes de l'API Web Crypto sont accessibles via une nouvelle interface : SubtleCrypto. La propriété Crypto.subtle donne accès à un objet qui l'implémente.

Spécifications

Specification
Web Cryptography API
# crypto-interface

Compatibilité des navigateurs

BCD tables only load in the browser