03 Décembre 2008    

Gouvernance

Solutions

Technologies

Marchés

Signature électronique - techniques : empreinte, certificat, norme X509, PKI ou IGC, horodatage

Sécurité logique, virus et intrusions

 
 
 
 
 

La signature électronique utilise plusieurs notions techniques :

  • l'empreinte, qui permet de vérifier qu'un document n'a pas été altéré,
  • le certificat, qui authentifie l'auteur,
  • la PKI qui permet la gestion des clés

Empreinte

A l'aide d'un algorithme dit de "hachage" ou "hash-coding" on réalise une clé d'une centaine de bits, l'empreinte, en fonction du contenu du fichier considéré.
Un exemple d'algorithme rudimentaire serait de faire l'addition de la position de chaque caractère dans l'alphabet (dans cet exemple l'empreinte de "chat" vaudrait "3+8+1+20=32").
On utilise bien sûr un algorithme beaucoup plus complexe, de telle sorte que tout document même légèrement modifié ait une très forte probabilité d'avoir une empreinte différente.
On fera parvenir l'empreinte au destinataire en la codant suivant le principe clé privée-clé publique.
A la réception, il suffit de déchiffrer l'empreinte et de la comparer avec celle que l'on calcule sur le document reçu, pour avoir la quasi-certitude de l'intégrité du document.
Deux algorithmes sont principalement utilisés :

  • MD5 (Message Digest)
    C'est l'algorithme le plus répandu, il crée des empreintes de 128 bits. On utilise aussi parfois MD4.
  • SHA (Secure Hash Algorithm)
    Il crée des empreintes de 160 bits. On utilise SHA-1 et SHA-2 (récent).

Certificats

Le certificat est la pièce qui associe à une entité (client ou serveur), sa clé publique. La certification est un élément fondamental du système à clé publique. C'est un document électronique, signé à l'aide d'une empreinte, dont les vertus sont :

  • il prouve l'identité de la personne auprès de l'Autorité de Certification,
  • il associe des droits d'usage particuliers,
  • il prouve que la clé est encore valide.

Le certificat accompagne donc toute politique de chiffrement à clé publique.

Norme X509

La norme de définition des certificats est ITU-T X.509.
L'échange de certificats constitue le moyen de s'échanger les clés.
Les certificats sont classés en 4 catégories :

  • Classe 1 : délivrance de certificat sur une base déclarative du client
  • Classe 2 : délivrance de certificat sur une base de vérification de justificatifs
  • Classe 3 : classe 2 + contrôle du client en face à face pour délivrer le certificat
  • Classe 3 + : classe 3 + stockage du certificat sur un support puce.

CRL (Certification Revocation List)

Un certificat peut perdre sa validité pour les raisons suivantes :

  • perte ou vol de la clé,
  • relation entre les interlocuteurs terminée,
  • date de péremption du certificat atteinte.
  • Le certificat est alors révoqué. Son numéro est inscrit dans une liste nommée CRL (Certification Revocation List).
    Il est de la responsabilité du client de se procurer régulièrement auprès de son Autorité de Certification la liste des certificats qui ne sont plus valides et de la charger dans son navigateur.

    PKI (Private Key Infrastructure) ou IGC (Infrastructure de Gestion de Clés)

    Pour assurer la logistique d'attribution, de publication des clés publiques et leur gestion, une organisation baptisée PKI est mise en place.
    Elle comprend :

    • une autorité de certification (AC, en anglais CA),
    • une autorité d'enregistrement, (AE)
    • un opérateur de certification (OC),
    • un annuaire de publication des certificats,
    • un service de validation.

    Autorité de Certification (AC, CA)

    Elle définit la politique de certification et la fait appliquer.
    N'importe quelle organisation peut se déclarer autorité de certification pour ses utilisateurs. Elle utilise sa propre clé privée pour créer les certificats qu'elle délivre. Cette autorité de certification peut elle-même être certifiée par une autre autorité.

    Autorité d'Enregistrement

    Il s'agit de l'organisme auquel s'adresse l'utilisateur pour obtenir son certificat et ses clés. Celui-ci vérifie la validité et l'authenticité de la demande et la transmet à l'Opérateur de Certification.

    Opérateur de Certification

    Il remplit plusieurs tâches :

    • la création et la distribution des certificats,
    • la révocation des certificats,
    • la production de cartes à puce,
    • avec l'accord de l'Autorité de Certification, il génère éventuellement les clés publiques et privées des utilisateurs,
    • enfin, il met à jour un annuaire, en général de type LDAP.

    Le système de l'Opérateur de Certification doit être particulièrement bien protégé, pour celà , il est généralement coupé du réseau, d'où certains délais supplémentaires pour les manipulations.

    Responsabilité du destinataire d'un document électronique sécurisé (PKI)

    Lors d'un échange électronique sécurisé par PKI, la responsabilité du destinataire peut être engagée :

    • s'il a accepté une signature comprenant des obligations dépassant les engagements maximaux portés sur le certificat, ou émise après la date de validité inscrite sur le certificat.
    • si le certificat a été révoqué avant la création de signature (d'où la nécessité de contrôler les listes de révocation (CRL) fréquemment).

    En revanche, elle ne sera en principe pas engagée s'il est établi que le prestataire de service de certification n'a pas fait correctement son travail de vérification.

    Horodatage

    L'horodatage est l'opération qui consiste à associer à un document la date et l'heure exacte de création ou de réception. Celà permet de s'assurer que l'on consulte la bonne version du document.
    Le tampon d'horodatage est fourni par un tiers horodateur qui peut-être un prestatataire extérieur à la transaction ou bien un serveur interne capable de garantir la qualité et la sécurité de cette information. La norme pour les tampons d'horodatage est la RFC 3161.

    Fichier de signature

    Le fichier transmis et/ou archivé doit comprendre, outre les données encodées (n'importe quel fichier binaire, pdf, texte, plan d'architecte…):

    • la signature (chiffrement avec la clé privée du signataire de l'empreinte),
    • ou le cachet d'entreprise (comparable à la signature mais attribué par un serveur et non un utilisateur),
    • la chaîne de confiance des certificats.

    Le destinataire refait le calcul d'empreinte et recalcule la signature avec la clé publique.
    Cette signature est contenue dans un fichier dont le format est normalisé par l'ETSI, le CEN et le W3C. Les standards sont , TS 101 733, XMLDSIG, XAdES.
     

     

    XMLDSIG, XML Signature

    XMLDSIG est la spécification conjointe du W3C et de l'IETF utilisant XML pour contenir les signatures électroniques. On la désigne plus généralement sous le nom de XML Signature
     

     

    TS 101 733

    TS 101 733 est la norme de l'ETSI issue de XMLDSIG. Elle apporte :

    • la formalisation de différents niveaux de signatures
    • la description de la structure des données obligatoires/optionnelles de chaque type de signature
    • des définitions précises des types de données selon la norme ASN.1
    • la description de la façon de calculer les données

    C'est la première norme conforme à la directive européenne 1999/93/CE
    Elle propose plusieurs niveaux de sécurité :

    • BES (Basic Electronic Signature)
    • EPES (Explicit Policy Electronic Signature)
    • ES-T (Signature Electronique Horodatée)
    • ES-C (Signature Electronique avec références des données de validation complètes)
    • ES-X-Long (idem que ES-C, mais les CRLs et Certificats remplacent leurs références)
    • ES-X Type 1 (sur-horodatage globale a fin d'intégrité)
    • ES-X Type 2 (sur horodatage des références de ES-C)
    • ES-A (Archivage de Signature Electronique : horodatage d'une des 3 formes ES-X)

    XAdES, TS 101 903

    XAdES (XMLAdvanced Electronic Signatures) (ETSI TS 101 903) est la spécification du W3C prolongeant XML Signature (XMLDSIG) sur la non répudiation des messages signés électroniquement.

     
     
    Recherche         
    fermer