Archive

Posts Tagged ‘Certificat’

Signature numérique et certificat électronique

Dans le cadre de votre vie professionnelle, voir privée, vous êtes surement amené (ou dans un futur proche, vous serez surement amené) à recevoir de plus en plus de contrats sous forme électronique (format .pdf en général) : par exemple, un contrat de location à l’étranger ou un changement de contrat avec votre banque.

Comme vous l’avez remarqué, il assez fastidieux, voir absolument contraignant, d’imprimer les dits contrats, de les signer, puis de les envoyer par la poste avec accusé de réception.

Heureusement pour vous, depuis mars 2000, la loi française permet de signer électroniquement les documents, avec la même valeur juridique qu’une signature manuscrite (après je ne suis pas allé voir dans les détails).

La Loi c’est bien beau, mais comment cela se passe en en théorie?

En pratique la signature électronique doit remplir cinq critères : la signature doit être authentique (permet de retrouver l’identité du signataire), infalsifiable, non réutilisable (impossible de la déplacer sur un autre document), inaltérable (impossibilité de modifier le document signé) et irrévocable (impossibilité de nier la signature).

Concrètement, cela passe par de la cryptographie asymétrique : je ne vais pas vous raconter une histoire avec Alice et Bob (je comprends pas la manie de ces deux là à toujours vouloir échanger des messages pendant les explications sur la cryptographie et la sécurité), donc pour faire simple, à une message M, on applique une fonction f, dite fonction de hachage (MD5, SHA-1).

Cette fonction est généralement utilisée pour donner une empreinte, i.e. un identifiant à un message, en partant du fait que les collisions seront peu nombreuses (une collision, au passage, c’est quand deux messages M ont la même image par f, i.e. f non injective) et cela permet de gagner du temps/de l’argent (en gros vous lisez le nom du message plutôt que le message en entier pour l’identifier). Donc on fait s=f(M). Ce hash s, envoyé avec le message, permet donc de vérifier l’intégrité du message : vous recevez Mr et s, vous calculez f(Mr). si f(Mr)=s, le message n’a pas été modifié.

Cependant, cela ne garantit pas l’émetteur du message. Pour vérifier par qui a été envoyé/signé le message, on utilise un système clé publique/clé privée. L’émetteur crypte le hash avec sa clé privée c(s), et le destinataire décrypte avec la clé publique d(c(s))=s. En gros, je possède un seul cadenas, et j’envoie les clés à mes amis. Le hash envoyé porte un cadenas, si la clé de mon ami correspond au cadenas, c’est que je suis effectivement l’expéditeur.

Voilà pour la théorie.

Comment cela se passe t’il en pratique ?

En pratique, on utilise concrètement des certificats électroniques, dont le standard est X509.

Comme vous ne connaissez pas forcément la personne (le site, etc) avec qui vous voulez échanger, il est à priori assez compliqué d’échanger les clés ab initio. Pour cela vous allez faire appel à une tierce personne en qui vous avez confiance, l’autorité de certification (AC), qui va distribuer et vérifier des cartes d’identités : les certificats électroniques.

Quand Alice rencontre Bob (nous y voila, damn it), Alice demande ses papiers à Bob et vice versa, et ils vérifient tous deux auprès de la Police (autorité de certification), que les cartes d’identités sont conformes (je sais c’est une drôle de rencontre). Dans les faits, Alice et Bob utilisent le certificat de l’AC pour vérifier que leurs certificats respectifs sont intègres (même principe qu’expliqué ci-dessus).

Il existe différents types de certificats avec différents niveaux de sécurité (4 classes) : cela va de la simple vérification de validité d’un email, jusqu’à la vérification physique d’identité par l’autorité de certification.

Qui sont les autorités de certification ?

Les autorités de certification sont en général des entreprises privées (Verisign, GlobalSign, CertEurope, etc), des organismes publics (chambre  de commerce et de l’industrie, greffes des tribunaux de commerce, l’état espagnol ou belge, etc), des associations (CAcert), ou bien de simples particuliers, voir vous même dans le cadre de l’auto-signature.

La confiance dans un certificat dépend intrinsèquement de l’autorité de certification qui le délivre. Un certificat délivré par une autorité « publique » (celles citées précédemment) a plus de crédit que celui que je pourrais vous délivrer moi même. D’ailleurs, généralement, lors de votre navigation sur le web, si avez accédez à un site sécurisé, dont le certificat n’est pas valide ou dont vous ne connaissez pas l’autorité racine, votre navigateur vous renvoie un message d’alerte.

Avec quoi sont créés les certificats électroniques ?

Bonne question. Il ne s’agit pas d’une boite (complètement) opaque. Les certificats électroniques respectent un standard : le plus souvent le standard X509.

Pour créer simplement ces certificats, vous pouvez utiliser OpenSSL, le couteau suisse de votre ordinateur pour les questions de cryptographie : il sert pour tout, le plus souvent de façon transparente, par exemple lorsque vous vous connectez à un site en https (http sécurisé, via ssl), ou à votre boite mail avec le protocole imaps (imap via ssl).

Vous pouvez trouver des détails sur la création de certificats ici ou .

Vous pouvez trouver des infos simples et claires sur le SSL ici.

Dans quel cadre un certificat électronique est utile ?

Les certificats numériques sont utiles, vraiment utiles et vous vous en servez très fréquemment, et le plus souvent de façon transparente : par exemple lorsque vous vous connectez sur le site de votre banque, ou un site de e-commerce en https, etc. Il peuvent aussi être utilisés dans le cadre d’une authentification forte, ou pour signer des documents comme nous l’évoquions précédemment.

Comment se procurer un certificat?

Actuellement, ces moyens de signature numérique ne concernent majoritairement que les entreprises, et ils sont onéreux : pour se procurer un certificat, il faut faire une demande à une autorité de certification (AC).

Si par chance, vous êtes une entreprise, vous pouvez vous procurer un certificat auprès de la chambre  de commerce et de l’industrie (ChamberSign), auprès des greffes des tribunaux de commerce, ou auprès d’une entreprise privée (VerisignGlobalSignCertEurope, etc).

Si par malheur, vous êtes un particulier, ça se corse pour vous, et en plus ça risque de vous couter un bras si vous faites appel à une entreprise privée.

Contrairement à d’autres pays européens, l’Etat Français ne distribue pas encore de certificats électroniques à ses citoyens : en revanche, la Belgique et l’Espagne ont déjà instauré des cartes d’identité numériques, comportant un puce avec deux certificats électroniques X509, qui permettent à tous citoyens belges et espagnols de signer électroniquement et de s’authentifier en ligne (ceux-ci nécessitent cependant un lecteur de carte à puce).

Avec le développement des télé-services au sein de nos administrations (déclaration en ligne des revenus, etc), et l’augmentation du besoin d’identification forte sur le web et via les outils numériques, il probable que lors la prochaine décennie on voit l’arrivée de nouvelles cartes d’identité comprenant des certificats d’authentification délivrés par l’Etat.

En outre, il est cependant important de rappeler qu’un projet de carte d’identité électronique nommé INES (Identité Nationale Electronique Sécurisée) avait été élaboré en France dès 2003 : cependant celle ci devait aussi comporter des données biométriques et cela avait provoqué une levée de boucliers, et entrainé la suspension du projet.

Comment créer son propre certificat, ou être soi même autorité de certification ?

En attendant, vous pouvez créer vous même vos propres certificats (auto-signés) en utilisant OpenSSL, ou vous déclarer autorité de certification au sein de votre organisme, de votre institution, de votre entreprise ou de votre école si l’usage reste interne. Encore une fois je vous renvois ici ou .

Si le sujet vous intéresse, je vous conseille de lire un document du CNRS rédigé par Carine Bernard à propos de la signature électronique ici.

Publicités