Developpez.com

Le Club des Développeurs et IT Pro

Le W3C présente Web cryptography API

Une norme pour améliorer la sécurité des applications Web

Le 2012-09-19 12:09:08, par Hinault Romaric, Responsable .NET
La sécurité est un aspect important dans le cycle de développement d’une application. Les développeurs ont souvent recours à des outils tiers ou doivent développer au prix de nombreux efforts leurs propres fonctionnalités de cryptographie.

Le W3C (World Wide Web Consortium), l’organisme de normalisation des standards du Web ouvert, travaille actuellement sur un standard qui vise à améliorer la sécurité des applications Web tout en facilitant la tâche du développeur.

L’organisme vient de publier un premier brouillon (draft) pour l’API Web cryptography.

Le projet a été mis en place et proposé par des ingénieurs de Google et de la fondation Mozilla, et devrait aboutir à l’intégration d’une API de cryptographie Web dans les navigateurs, qui permettrait aux applications Web d’effectuer des opérations de cryptographie de base.

Web cryptography sera une interface de programmation JavaScript qui fournira des fonctionnalités de sécurité comme le hachage, le chiffrement et le déchiffrement, la génération et la vérification des signatures, etc.

Les applications Web pourront par exemple utiliser l’API pour vérifier de manière plus sécurisée l’identité d’un utilisateur entre les navigateurs et les serveurs HTTP.

L’API pourra être utilisée dans le domaine du Cloud, pour l’authentification à plusieurs facteurs, la messagerie sécurisée, la signature des documents et l’échange des documents protégés, etc.

Source : Le Draft du W3C
  Discussion forum
4 commentaires
  • alex_vino
    Membre émérite
    Intéressant.

    Par contre j'ai du mal a cerner l'intéret pour les pages utilisant SSL, si ce n'est que ca évite d'avoir recours a un certificat pour par exemple s'authentifier via un Web Service.
  • alex_vino
    Membre émérite
    Envoyé par la.lune
    Ou bien qu'il est implémenté nulle ? Celui qui est bien informé sur le sujet qu'il fasse part.
    C'est tres récent donc ca m'étonnerais. Pour que tous les navigateurs l'implémente ca prendra un peu de temps donc avant de l'utiliser en production le brouillon du W3C a le temps d'évoluer beaucoup.
    Utilise les Beta channel de Chrome et Firefox si tu souhaites le tester des que possible, les deux aillant proposé le projet ils devraient l'implémenter assez rapidement.
  • Marco46
    Expert éminent sénior
    Donc au lieu de programmer les fonctions de sécurité en Java, C# ou PHP on pourra le faire en Javascript. Youpi.

    Donc côté client au lieu de côté serveur.

    Mais pour que le client puisse exécuter le code javascript il faut d'abord qu'il se connecte au serveur ...

    D'où ma question : En quoi est-ce une amélioration et en quoi cela facilite-t-il la vie des développeurs ? Perso j'y vois plus des problématiques de sécurité supplémentaires qu'autre chose.

    Les développeurs [...] ou doivent développer au prix de nombreux efforts leurs propres fonctionnalités de cryptographie.
    Euh non, faut pas faire ça ...

    Envoyé par alex_vino

    Par contre j'ai du mal a cerner l'intéret pour les pages utilisant SSL, si ce n'est que ca évite d'avoir recours a un certificat pour par exemple s'authentifier via un Web Service.
    J'ai du mal à comprendre comment l'authentification d'un client gérée côté client pourrait être un gage de sécurité, c'est plutôt une aberration, ni en quoi ça soustrait de l'utilisation d'un certificat.
  • la.lune
    Membre chevronné
    D'abord je tiens à remercier ceux qui ont proposé cette techno car ça va vraiment nous faciliter la vie,a vu rapide sur le document on voit que la tache sera très simple au développeurs. Mais J'ai juste une petite question vu que c'est un premier brouillon, est ce que c'est déjà implémenté par au moins par Chrome et Firefox(les derniers version bien sûr) ou bien qu'il est implémenté aussi chez les autres navigateurs, Ou bien qu'il est implémenté nulle ? Celui qui est bien informé sur le sujet qu'il fasse part.