Ce texte est la version originale d’un article rédigé pour le CRIM (Centre de recherche informatique de Montréal) et publié dans le magazine @cceleraTIon no 9 (automne 2006).
Contrairement à une idée préconçue, il est possible de bâtir une solide infrastructure de sécurité informatique sans engager de folles dépenses de certification numérique. Au lieu de s’offrir les services d’une autorité comme Thawte ou Verisign, par exemple, toute entreprise peut créer sa propre infrastructure de certification et l’utiliser en vue de sécuriser rigoureusement ses processus d’identification et d’échanges électroniques.
Cette approche est celle des infrastructures à clés publiques (Public Key Infrastructure ou PKI). Elle repose sur une paire de blocs de données baptisés « clés ». L’une est publique et peut donc circuler librement, tandis que l’autre est privée et ne doit pas quitter l’infrastructure sécurisée où elle réside. Les composants matériels (serveurs, ordinateurs, assistants numériques, cartes à puces, etc.) et les logiciels équipés de ces clés sont en mesure de s’authentifier mutuellement et de chiffrer leurs échanges d’information.
Une autre idée présumée voudrait que les clés privées servent à chiffrer les messages et les clés publiques à les déchiffrer. Or, c’est l’inverse ! Quand on se connecte à un serveur sécurisé, par exemple, on lui envoie notre clé publique afin qu’il l’utilise pour chiffrer les données à nous retourner. Seule la clé privée, qui n’a pas quitté notre ordinateur, sera en mesure de les déchiffrer.
« Techniquement, tout cela fonctionne très bien, explique Michael Albertson, consultant expert en sécurité IP et formateur au CRIM. Le problème, c’est que sur Internet et dans beaucoup d’environnements commerciaux, les gens ne se rencontrent jamais. » Comment s’assurer, alors, que la clé publique envoyée par quelqu’un est bien la sienne et que ce quelqu’un est bien celui qu’il prétend être ? C’est là qu’interviennent les autorités de certification (CA), dont le rôle consiste à émettre, gérer et authentifier les paires de clés asymétriques distribuées sous forme de certificats.
La plupart des logiciels sur Internet sont régis par le fameux protocole SSL et équipés par défaut d’une quarantaine de certificats numériques de premier niveau émis par les grands CA internationaux. Ceux-ci commercialisent des certifi cats de second niveau qu’ils valident, en temps réel, par Internet. Il en découle une pyramide de certifications reposant sur des entités fiables. Mais tout ceci a un prix, bien sûr, et il est très coûteux d’équiper des centaines d’ordinateurs ou d’employés de certificats commerciaux.
Pour M. Albertson, « il faut démystifier l’idée qu’on doit payer les certificats numériques. C’est le cas seulement si on les achète pour communiquer avec des gens ou des machines qu’on ne connaît pas. Si on les fabrique soi-même, pour ses besoins de sécurité interne, ils ne coûtent rien. C’est l’équivalent numérique des cartes d’identités corporatives. »
Toutes les plateformes informatiques permettent de déployer un système de certification numérique. Par exemple, le système d’exploitation Windows 2003 fournit un environnement de certification complet. Bien maîtrisé, il ouvre la voie à des transactions parfaitement sécurisées, tant pour des applications spécifiques que pour contrôler l’accès et chiffrer en SSL les données d’un intranet ou d’un extranet. En ce cas, il suffira d’installer votre certificat de premier niveau dans les navigateurs des personnes autorisées à y accéder et ainsi faire disparaître les messages d’avertissement liés à l’absence d’une autorité de certification valide.
Au-delà des présomptions, il est donc possible, dans certaines circonstances, de contourner les grands bonzes coûteux de la certification et d’épargner de façon substantielle en créant sa propre structure de certification, et ce en toute sécurité.