Chiffrement basé sur l'identité - Identity-based encryption
Le cryptage basé sur l'ID , ou cryptage basé sur l' identité ( IBE ), est une primitive importante de la cryptographie basée sur l' ID . En tant que tel, il s'agit d'un type de cryptage à clé publique dans lequel la clé publique d'un utilisateur est une information unique sur l'identité de l'utilisateur (par exemple l'adresse e-mail d'un utilisateur). Cela signifie qu'un expéditeur qui a accès aux paramètres publics du système peut crypter un message en utilisant par exemple la valeur textuelle du nom ou de l'adresse e-mail du destinataire comme clé. Le récepteur obtient sa clé de déchiffrement auprès d'une autorité centrale, qui doit être fiable car elle génère des clés secrètes pour chaque utilisateur.
Le cryptage basé sur l'identité a été proposé par Adi Shamir en 1984. Il n'a cependant été en mesure de donner qu'une instanciation des signatures basées sur l' identité . Le cryptage basé sur l'identité est resté un problème ouvert pendant de nombreuses années.
Le schéma de Boneh-Franklin basé sur l' appariement et le schéma de chiffrement de Cocks basé sur les résidus quadratiques ont tous deux résolu le problème du BIE en 2001.
Usage
Les systèmes basés sur l'identité permettent à n'importe quelle partie de générer une clé publique à partir d'une valeur d'identité connue telle qu'une chaîne ASCII. Un tiers de confiance, appelé le générateur de clé privée (PKG), génère les clés privées correspondantes. Pour fonctionner, le PKG publie d'abord une clé publique principale et conserve la clé privée principale correspondante (appelée clé principale ). Compte tenu de la clé publique principale, toute partie peut calculer une clé publique correspondant à l'identité en combinant la clé publique principale avec la valeur d'identité. Pour obtenir une clé privée correspondante, la partie autorisée à utiliser l' ID d' identité contacte le PKG, qui utilise la clé privée principale pour générer la clé privée pour l' ID d' identité .
En conséquence, les parties peuvent crypter les messages (ou vérifier les signatures) sans distribution préalable de clés entre les participants individuels. Ceci est extrêmement utile dans les cas où la pré-distribution de clés authentifiées est gênante ou irréalisable en raison de contraintes techniques. Cependant, pour déchiffrer ou signer des messages, l'utilisateur autorisé doit obtenir la clé privée appropriée du PKG. Une mise en garde de cette approche est que le PKG doit être hautement fiable, car il est capable de générer la clé privée de n'importe quel utilisateur et peut donc déchiffrer (ou signer) des messages sans autorisation. Étant donné que la clé privée de n'importe quel utilisateur peut être générée via l'utilisation du secret du tiers, ce système possède un séquestre de clé inhérent . Un certain nombre de systèmes de variantes ont été proposées qui éliminent l'entiercement , y compris le chiffrement à base de certificats , clé sécurisée émission cryptographie et la cryptographie sans certificat .
Les étapes impliquées sont décrites dans ce diagramme:
Cadre de protocole
Dan Boneh et Matthew K. Franklin ont défini un ensemble de quatre algorithmes qui forment un système BIE complet:
- Configuration : Cet algorithme est exécuté par le PKG une fois pour créer tout l'environnement IBE. La clé principale est gardée secrète et utilisée pour dériver les clés privées des utilisateurs, tandis que les paramètres système sont rendus publics. Il accepte un paramètre de sécurité (c'est-à-dire la longueur binaire du matériel clé) et génère:
- Un ensemble de paramètres système, y compris l' espace de message et l' espace de texte chiffré et ,
- une clé principale .
- Extrait : Cet algorithme est exécuté par le PKG lorsqu'un utilisateur demande sa clé privée. Notez que la vérification de l' authenticité du demandeur et le transport sécurisé de sont des problèmes que les protocoles du BIE n'essaient pas de résoudre. Il prend en entrée , et un identifiant et retourne la clé privée pour l' utilisateur .
- Crypter : prend , un message et et sort le cryptage .
- Décrypter : Accepte , et et retourne .
Contrainte d'exactitude
Pour que l'ensemble du système fonctionne, il faut postuler que:
Schémas de chiffrement
Les schémas de chiffrement basés sur l'identité les plus efficaces sont actuellement basés sur des appariements bilinéaires sur des courbes elliptiques , comme les appariements de Weil ou Tate . Le premier de ces schémas a été développé par Dan Boneh et Matthew K. Franklin (2001), et effectue un cryptage probabiliste de textes chiffrés arbitraires en utilisant une approche de type Elgamal . Bien que le schéma de Boneh-Franklin soit prouvé sûr , la preuve de sécurité repose sur des hypothèses relativement nouvelles concernant la dureté des problèmes dans certains groupes de courbes elliptiques.
Une autre approche du cryptage basé sur l'identité a été proposée par Clifford Cocks en 2001. Le schéma Cocks IBE est basé sur des hypothèses bien étudiées (l' hypothèse de résiduosité quadratique ) mais crypte les messages un bit à la fois avec un degré élevé d' expansion du texte chiffré . Ainsi, il est très inefficace et peu pratique pour envoyer tous les messages sauf les plus courts, comme une clé de session à utiliser avec un chiffrement symétrique .
Une troisième approche du BIE consiste à utiliser des treillis.
Algorithmes de chiffrement basés sur l'identité
La liste suivante répertorie les algorithmes de chiffrement pratiques basés sur l'identité
- Boneh – Franklin (BF-IBE).
- Sakai – Kasahara (SK-IBE).
- Boneh – Boyen (BB-IBE).
Tous ces algorithmes ont des preuves de sécurité .
Avantages
L'un des principaux avantages de tout schéma de cryptage basé sur l'identité est que s'il n'y a qu'un nombre fini d'utilisateurs, une fois que tous les utilisateurs ont reçu des clés, le secret du tiers peut être détruit. Cela peut se produire car ce système suppose que, une fois émises, les clés sont toujours valides (car ce système de base ne dispose pas d'une méthode de révocation de clé ). La majorité des dérivés de ce système qui ont une révocation de clé perdent cet avantage.
De plus, comme les clés publiques sont dérivées d'identifiants, le BIE élimine le besoin d'une infrastructure de distribution de clés publiques. L' authenticité des clés publiques est garantie implicitement tant que le transport des clés privées vers l'utilisateur correspondant est sécurisé ( authenticité , intégrité , confidentialité ).
En dehors de ces aspects, l'IBE offre des fonctionnalités intéressantes émanant de la possibilité d'encoder des informations supplémentaires dans l'identifiant. Par exemple, un expéditeur peut spécifier une date d'expiration pour un message. Il ajoute cet horodatage à l'identité du destinataire réel (éventuellement en utilisant un format binaire comme X.509). Lorsque le récepteur contacte le PKG pour récupérer la clé privée de cette clé publique, le PKG peut évaluer l'identifiant et refuser l'extraction si la date d'expiration est dépassée. Généralement, l'incorporation de données dans l'ID correspond à l'ouverture d'un canal supplémentaire entre l'expéditeur et PKG avec une authenticité garantie par la dépendance de la clé privée sur l'identifiant.
Désavantages
- Si un générateur de clé privée (PKG) est compromis, tous les messages protégés pendant toute la durée de vie de la paire de clés publique-privée utilisée par ce serveur sont également compromis. Cela fait du PKG une cible de grande valeur pour les adversaires. Pour limiter l'exposition due à un serveur compromis, la paire de clés privée-publique principale pourrait être mise à jour avec une nouvelle paire de clés indépendante. Cependant, cela introduit un problème de gestion des clés où tous les utilisateurs doivent disposer de la clé publique la plus récente pour le serveur.
- Étant donné que le générateur de clé privée (PKG) génère des clés privées pour les utilisateurs, il peut déchiffrer et / ou signer n'importe quel message sans autorisation. Cela implique que les systèmes IBS ne peuvent pas être utilisés pour la non-répudiation . Cela peut ne pas être un problème pour les organisations qui hébergent leur propre PKG et sont disposées à faire confiance à leurs administrateurs système et ne nécessitent pas de non-répudiation.
- Le problème de l'entiercement de clé implicite n'existe pas avec le système PKI actuel , dans lequel les clés privées sont généralement générées sur l'ordinateur de l'utilisateur. Selon le contexte, le séquestre des clés peut être considéré comme une caractéristique positive (par exemple, au sein des entreprises). Un certain nombre de variantes de systèmes ont été proposées qui suppriment l'entiercement, notamment le cryptage basé sur un certificat , le partage de secret , la cryptographie d'émission de clé sécurisée et la cryptographie sans certificat .
- Un canal sécurisé entre un utilisateur et le générateur de clé privée (PKG) est nécessaire pour transmettre la clé privée lors de la connexion au système. Ici, une connexion de type SSL est une solution courante pour un système à grande échelle. Il est important de noter que les utilisateurs qui détiennent des comptes auprès du PKG doivent pouvoir s'authentifier. En principe, cela peut être réalisé via un nom d'utilisateur, un mot de passe ou via des paires de clés publiques gérées sur des cartes à puce.
- Les solutions IBE peuvent s'appuyer sur des techniques cryptographiques qui ne sont pas sécurisées contre les attaques informatiques quantiques par rupture de code (voir l'algorithme de Shor )
Voir également
- Cryptographie basée sur l'ID
- Rechiffrement de proxy conditionnel basé sur l'identité
- Chiffrement basé sur les attributs
Les références
Liens externes
- Séminaire `` Cryptographie et sécurité dans le secteur bancaire '' / `` Cryptologie alternative '', Ruhr University Bochum, Allemagne
- RFC 5091 - la RFC IETF définissant deux algorithmes IBE communs
- Chiffrement basé sur les rôles HP
- Le salon cryptographique basé sur l'appariement
- The Voltage Security Network - Service Web de cryptage IBE
- Rapport d'analyste sur le coût du BIE par rapport à l'ICP