EP2865128A1 - Dispositif et procede pour generer une cle de session entre des entites a faibles ressources - Google Patents

Dispositif et procede pour generer une cle de session entre des entites a faibles ressources

Info

Publication number
EP2865128A1
EP2865128A1 EP13730247.7A EP13730247A EP2865128A1 EP 2865128 A1 EP2865128 A1 EP 2865128A1 EP 13730247 A EP13730247 A EP 13730247A EP 2865128 A1 EP2865128 A1 EP 2865128A1
Authority
EP
European Patent Office
Prior art keywords
source
entity
value
entities
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP13730247.7A
Other languages
German (de)
English (en)
Inventor
Yosra BEN SAIED
Alexis Olivereau
Christophe Janneteau
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Original Assignee
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Commissariat a lEnergie Atomique et aux Energies Alternatives CEA filed Critical Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Publication of EP2865128A1 publication Critical patent/EP2865128A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Definitions

  • the invention relates to the field of security in communication networks and in particular the session establishment between nodes in re ⁇ buckets with limited resources.
  • the Diffie-Hellman (DH) key exchange is a method that allows the establishment of a DH session key or key between two entities to be used to encrypt or authenticate their communications.
  • the Diffie-Hellman (DH) algorithm described in [W. Diffie and ME Hellman, New Directions in Cryptography, IEEE Transactions on Information Theory, 22 (1976), 644-654]) which is implemented between two entities A and B, assumes that the latter agree in the first place on two parameters g and p. Entities A and B then randomly generate secret values (a and h), and calculate the corresponding public values g a modp and g b modp. Entities A and B then exchange their respective public values.
  • the Elliptic Curve Diffie-Hellman (ECDH) as described in [NIST, Special Publication 800-56A, Recommendation for Pairing Key Establishment Schemes Using Discrete Logarithm Cryptography, March 2006]) specifies a variant of the Diffie-Hellman algorithm which relies on elliptic curve cryptography.
  • the calculations of the public value and the session key are facilitated because the modular exponentiations of the conventional DH algorithm are replaced by multiplications of points as provided in elliptic curve cryptography.
  • DH exchange on highly constrained nodes can quickly deplete their resources and reduce their network lifetime.
  • M2M machine-to-machine
  • law Internet of Things
  • a sensor with limited resources that is considered a part of the Internet can be brought to communicate directly with nodes that do not belong to the same M2M or IoT topology and are not subject to resource constraints.
  • These limited capacity sensors can quickly disappear from the network because of the depletion of their resources, following the implementation of complex algorithm instances, such as the Diffie-Hellman algorithm.
  • US Patent 2008/0019512 A1 describes a solution in which a lighter variant of the Diffie-Hellman protocol, intended for constrained nodes such as smart cards or mobile phones, is specified.
  • This solution provides for the use of exponents (secret DH values) chosen to cause reduced costs during modular exponentiation calculations. To do this, the type of possible exponents is restricted and they are chosen in such a way that the corresponding exponentiation causes few multiplications and many squared elevations.
  • this solution reduces the number of possible values that the Diffie-Hellman private value can take, which loses its randomness and becomes less difficult to guess for an attacker. The gain in performance is therefore at the expense of the level of security obtained.
  • the existing problem lies in the complexity of the Diff-Hellman protocol which makes its energy cost very high. As a result, its use can be made impossible for environments with highly constrained nodes. In addition, nodes implementing it repeatedly can spend all of their energy resources in an excessively short time, thus being prematurely disconnected from the network.
  • the Diff ie-Hellman protocol is specified as an essential cryptographic primitive in commonly used security protocols.
  • IPsec protocols [Kent, S. & Seo, K., Security Architecture for the Internet Protocol (rfc4301), IETF, 2005]
  • SSL Reier, A., Karlton, P., and P.
  • the present invention meets this need.
  • An object of the present invention is to provide a method for establishing a session key between two entities that can be highly heterogeneous in terms of resources.
  • the method of the invention based on the Diffie-Hellman (DH) algorithm provides for the delegation to the assisting nodes of the cryptographic operations required for the calculations of the DH public value and DH session key for the constrained resource node.
  • DH Diffie-Hellman
  • the present invention proposes a collaboration between nodes to make the most expensive operations of the DH algorithm by nodes in the vicinity of a constrained node, without compromising the confidentiality of the private value of the constrained node.
  • the present invention meets both the requirements of safety and low cost of use. Indeed, the delegation of the cryptographic calculations is performed so that the confidentiality of the private value of the resource-poor node is ensured vis-à-vis the assisting nodes.
  • Another object of the present invention is to allow in a communication network an increase in the life of nodes heavily constrained in resources.
  • the invention exploits the heterogeneity of the nodes of a network to discharge the nodes that are low in resources from the expensive exponential computation required to generate the DH keys.
  • the invention will find applications in the industrial fields of stack editors. network protocols for low-resource objects participating in an integrated model of the Internet of Things.
  • helper nodes proposed in the solution can be marketed as entities joining an existing infrastructure of "sensor network”.
  • a method for establishing a Diffie-Hellman session key between a source entity having a source private value 'a' and a target entity having a private value target 'h' and a target public value 'g b mod p' comprising the steps of:
  • Figure 1 is a topological representation of a network infrastructure in which to advantageously implement the invention
  • Figure 2 shows the steps performed by a source entity to decompose a private value into secret value fragments
  • Figure 3 shows the steps performed by a source entity to calculate a session key
  • Figure 4 shows the steps performed by a target entity to calculate a public value of the source entity
  • Figure 5 shows the steps taken by a proxy to compute a public value fragment
  • Figure 6 shows the steps performed by a proxy to calculate a segment of a session key
  • Figure 7 shows the exchanges made between a source node and a target node to establish a session key in a first implementation variant of the invention
  • Figure 8 shows the exchanges made between a source node and a target node to establish a session key in a second implementation variant of the invention.
  • FIG. 1 illustrates a network environment (100) in which the invention is advantageously implemented.
  • the example of FIG. 1 only shows a finite number of entities and connections, but the person skilled in the art will extend the principles described to a plurality and a variety of entities and types of connections (wireless, mobile, very high speed).
  • the network (100) comprises a set of fixed or mobile entities forming a network of nodes (102).
  • the node network includes nodes with high resource constraints (102-1, 102-n) and nodes with lower resource constraints (112-1, 112-m).
  • Nodes with high resource constraints may be wireless sensors or actuators, having limited computing and / or storage capacities. They can also be active tags. However, a node that is not intrinsically resource-limited may be temporarily so when it uses a large portion of its CPU resources for another task, or its battery level reaches a critical threshold value. And this node may need to implement less energy-efficient protocols, such as that of one invention.
  • Nodes less constrained in resource can be mobile phones equipped with an internet connection and a camera. It can also be interconnection gateways between a network of constrained entities and the Internet. These entities offer a greater computing power and storage capacity, can have a larger energy reserve (battery, mains power supply) and can communicate over a network, either directly to an internet network (104) as illustrated or well through gateways and intermediate servers (not shown).
  • the node network (102) may be based on level 2 (e.g., 802.15.4 or 802.11) or level 3 (e.g., IP) communications between the nodes of which it is composed. Depending on the protocols on which it is based, multicast or broadcast communication schemes can be used.
  • level 2 e.g., 802.15.4 or 802.11
  • level 3 e.g., IP
  • multicast or broadcast communication schemes can be used.
  • the network (100) also includes remote entities (106) having no resource constraints, compared to those of the node network (102).
  • the remote entities may be servers (for example, storage server and / or information management relayed by one or more sensors or actuator control server) having significant storage and computing power capacities or any other entity with unconstrained computing, storage and energy capabilities.
  • servers for example, storage server and / or information management relayed by one or more sensors or actuator control server
  • Such a network forms what is referred to as an Internet of Things (IoT). It covers two types of communication:
  • These communications can be established in a limited context (a single protocol used, for example ZigBee and / or a single scenario targeted, for example the Intelligent Electric Network or Smart Grid) and one speaks then about "Intranet of the objects" or may have The aim is to make a large number of different services possible, while relying on numerous communication protocols, and we are talking about the "Internet of Things".
  • the Internet of Things is an architecture that allows the interconnection of the classical Internet with communicating or perceived objects, and which relies on decentralized communication schemes, while implementing autonomous mechanisms.
  • the present invention may be advantageously applied in the environment of FIG. 1 between a strongly constrained resource node (102-1) that is indifferently denoted in the present description, source entity or transmitter, and a powerful remote server (106). ) that is called target entity or receiver. Both entities need to establish a session key.
  • Figure 2 shows the procedures performed by a source entity to decompose a source private value into a set of secret values to be addressed to helper entities.
  • a source entity randomly generates a source private value 'a' according to the principle of the Diffie-Hellman protocol, where this value corresponds to the secret exponent which is used to deduce the Diffie-Hellman public value.
  • the source private value is decomposed in the next step 204, into a plurality 'n' of secret values 'ai'.
  • the source entity In this phase, the source entity generates a set of values y ai 'whose possession of all or a certain number makes it possible to reconstitute its secret exponent' a '.
  • the number of fragments 'n' is the number of assistant entities or proxies that are selected to support the key exchange between source and target entities.
  • the selection of proxies can be based on the reputations of the entities present in the vicinity of the source entity and / or on their available resources such as for example their computing power or their battery level. In the case where the selection is based on the reputations of the nodes in the neighborhood, these can be evaluated locally or by a central server according to their past attitudes. A metric, reputation, is then defined that accounts for the types and proportions of positive (for example, offering a service) and negative (for example, refusing to offer a service) attitudes that a node has manifested in the past .
  • the source entity may have a predefined list of usable proxies, and the selection of proxies to be used for the session is made in this list.
  • each secret value ai is assigned and passed to a proxy Pi among the y selected proxies.
  • Figure 3 shows the steps performed by a source entity to calculate a final session key.
  • the source entity receives from each of the 'n' proxies, an encrypted value. Each value corresponds to the result of an exponentiation carried out respectively by each proxy.
  • the source entity calculates in step 304 the value of the final key DH upon receipt of all the encrypted values.
  • Figure 4 shows the steps performed by a target entity to calculate a public value of the source entity.
  • the target entity receives from 'n' proxies a set of ' ⁇ ' public values. Each value corresponds to the calculation of a public value performed respectively by each proxy from the secret value fragment received from the source entity.
  • the target entity calculates in step 404 the public value g a mod p from the source entity.
  • the target entity transmits to the n 'proxies a public value which is according to the variant of implementation of FIG. 7 or 8, ie its own public value g b modp for the variant of FIG. a fragment of its public value as detailed below for reference in Figure 8.
  • Figure 5 shows the steps performed by an assistant entity to compute a public value corresponding to the fragment of the secret value received from the source entity.
  • a proxy Pi receives from the source entity, a secret value resulting from the decomposition of the initial private value 'a'.
  • the proxy Pi calculates the public value for the received secret value fragment, generating a public value fragment.
  • the public value fragment is transmitted at step 506 to the target entity.
  • Figure 6 shows the steps performed by an assistant entity to calculate a segment of a DH session key.
  • the target entity randomly generates a target private value 'b' according to the principle of the Diffie-Hellman protocol, where this value corresponds to the secret exponent which is used to deduce its Diffie-Hellman public value.
  • a proxy i receives a public value calculated by the target entity from its own public value g b modp as described with reference to FIG. 4.
  • the proxy calculates a final session key segment from the secret value fragment previously received by the source entity (step 206) and from the public value received from the target entity.
  • the proxy sends the generated session key segment to the source entity.
  • Figures 7 and 8 show the exchanges made between a source entity (or node ' ⁇ ') and a target entity (or node ' ⁇ ') to establish a session key in two variants of implementation of the invention.
  • the node A selects assistant nodes Pi less constrained in resources than himself to participate in the exchange.
  • the node B In a first phase (701,801), the node B generates a random number 'b' as a secret exponent to calculate its public value DH, from two parameters 'g' and 'p' on which the source entities have agreed and target.
  • the node A generates a random number 'a' as the secret exponent DH.
  • the secret exponent 'a' must be kept private at node A and can not be cleared at node B or proxies.
  • the node A In a first variant (FIG. 7), the node A generates a set of 'n' values from the secret exponent 'a'.
  • Node A then provides (704) in a secure manner to each proxy Pi the fragment assigned to it, using a security association based on a symmetric key k A _ P1 between A and Pi.
  • the polynomial f is derived according to the following Lagrange formula:
  • the knowledge of k values among the n values transmitted to the proxies makes it possible to reconstitute the secret exponent a.
  • the proxies On receipt of the secret values of node A, the proxies perform an initial calculation of the public key of node A.
  • the proxy P ⁇ receives the secret value a ⁇ transmitted by the node A and calculates (706) the corresponding public value g ai modp.
  • the proxy Pi receives the secret value f (i) of the node A and calculates (806) the corresponding public value od p.
  • the proxy P ⁇ delivers (708, 808) to the node B this calculated public value.
  • the node B On receipt of the proxies public values, the node B reconstitutes the source public key of the node A which serves to him to establish the final session key.
  • the node B receives (708) values g ai modp of the node A.
  • the reconstitution of the public key of the node A is carried out according to the calculation (710) following: not
  • the node B receives (088) gf ⁇ mod values of the node A.
  • the reconstitution of the public key takes place on receipt of a subset of k values among the n public values transmitted by proxies to B.
  • the node B calculates (81 0) coefficients c ⁇ according to the é uation:
  • the second variant of the invention makes it possible not to impose the reception of all the public values, thus protecting the solution against the unavailability or the compromise of some of the assisting nodes.
  • node B transmits (712, 812) its target public key to proxies.
  • the node B sends (712) to all proxies P ⁇ its public value g h mod p.
  • the node B calculates (810) for each Pi (ie P) the value g bCi modp where c i is the i-th coefficient calculated in the preceding phase and transmits (812) the result to each Pi proxy.
  • the invention allows the second exponentiation required for calculating the session key to be provided by the assisting nodes in a cooperative manner.
  • the selected assistant nodes support the computational load required to perform an exponentiation without being able to generate the final key.
  • each proxy uses the secret ai initially delivered by A and the target public value of B to calculate (714) g bai mod p- (g h mod p) " 1 .
  • these values calculated by the proxies are then transmitted (716, 816) in a secure manner from each proxy to the node A in order to perform the final calculation of the session key DH (718, 720, 818, 820).
  • This phase completes the key establishment system based on the DH protocol.
  • the calculation is done according to the variant of implementation.
  • the source and target entities have established a secure communication tunnel on a DH session key.
  • the present invention may be implemented from hardware and / or software elements. It may be available as a computer program product on a computer readable medium.
  • the support can be electronic, magnetic, optical, electromagnetic or be an infrared type of diffusion medium.
  • Such supports are, for example, Random Access Memory RAMs (ROMs), magnetic or optical tapes, disks or disks (Compact Disk - Read Only Memory (CD-ROM), Compact Disk - Read / Write (CD-R / W) and DVD).

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

La présente invention concerne un dispositif et un procédé pour établir une clé de session entre deux entités d'un réseau de communication pouvant être fortement hétérogènes en termes de ressources. Le procédé de l'invention basé sur l'algorithme DiffieHellman (DH) prévoit la délégation à des nœuds assistants du réseau des opérations cryptographiques requises pour les calculs de la valeur publique DH et de la clé de session DH pour le nœud contraint en ressources.

Description

DISPOSITIF ET PROCEDE POUR GENERER UNE CLE DE SESSION ENTRE DES ENTITES A FAIBLES RESSOURCES
Domaine de l'invention
L'invention concerne le domaine de la sécurité dans les réseaux de communication et en particulier l'établissement de session entre nœuds dans des ré¬ seaux à faibles ressources.
Etat de la Technique
L'échange de clé Diffie-Hellman (DH) est un procédé qui permet l'établissement d'une clé ou clé de session DH entre deux entités pour être utilisée afin de chiffrer ou authentifier leurs communications. L'algorithme Diffie-Hellman (DH) décrit dans [W. Diffie and M.E. Hellman, New directions in cryptography , IEEE transactions on information theory, 22(1976), 644-654]) qui est mis en œuvre entre deux entités A et B, suppose que ces dernières se mettent d'accord en premier lieu sur deux paramètres g et p. Les entités A et B génèrent ensuite de façon aléatoire des valeurs secrètes (a et h), et calculent les valeurs publiques correspondantes gamodp et gbmodp. Les entités A et B échangent ensuite leurs valeurs publiques respectives. Chaque entité est alors en mesure de calculer une clé de session identique : A en élevant la valeur secrète reçue de B à la puissance a (modulo p) et B en élevant la valeur secrète reçue de A à la puissance b (modulo p) selon les équations: {gbmod p)amod p = (gamod p)bmod p = gabmod p .
Deux exponentiations modulaires sont ainsi requises pour A comme pour B : la première permet de générer la valeur publique à partir de la valeur privée, et la seconde d'obtenir la clé de session à partir de la valeur publique du correspondant. Ces opérations d'exponentiation modulaire sont particulièrement coûteuses en termes de ressources .
L'Elliptic Curve Diffie-Hellman (ECDH) tel que décrit dans [NIST, Spécial Publication 800-56A, Recommendation for Pair- ise Key Establishment Schemes Using Discrète Logarithm Cryptography, March 2006]) spécifie une variante de l'algorithme Diffie-Hellman qui s'appuie sur la cryptographie à courbes elliptiques. Les calculs de la valeur publique et de la clé de session sont facilités, car les exponentiations modulaires de l'algorithme DH classique sont remplacées par des multiplications de points tels que prévus dans la cryptographie à courbes elliptiques. Ainsi, les entités A et B d'une session choisissent des valeurs privées respectives dA et dB et obtiennent leurs valeurs publiques QA=dAG et QB=dBG. Ces valeurs publiques sont ensuite échangées entre A et B. A obtient la clé de session comme et B comme et ces deux clés sont égales à dAdBG. La cryptographie à courbes elliptiques, bien que moins exigeante en ressources que la cryptographie 'classique' à base d'exponentiations modulaires, demeure coûteuse en énergie, de l'ordre de 50% du coût des opérations cryptographiques classiques tel que cela est précisé dans [N. R. Potlapally, S. Ravi, A. Raghunathan, N.K. Jha, "A study of the energy consumption characteristics of cryptographie algorithme and security protocols," IEEE Transactions on Mobile Computing 5 (2) (2006) 128-143.]
Dans un environnement réseau où des entités (aussi appelées nœuds) sont hétérogènes et peuvent avoir des contraintes en ressources d'ordre différent, l'échange DH sur des nœuds fortement contraints peut rapidement épuiser leurs ressources et réduire leur durée de vie en réseau. Dans le contexte de 'machine à machine' (M2M) ou celui de l'Internet des Objets (loi), un capteur à ressources limitées qui est considéré comme une partie de l'Internet, peut être amené à communiquer directement avec des nœuds qui n'appartiennent pas à la même topologie M2M ou IoT et qui ne sont pas sujets à des contraintes en ressources. Ces capteurs à capacités limitées peuvent disparaître rapidement du réseau du fait de l'épuisement de leurs ressources, consécutif à la mise en œuvre d'instances d'algorithmes complexes, tel que l'algorithme Diffie-Hellman .
Le brevet US 2008/0019512 Al décrit une solution dans laquelle une variante plus légère du protocole Diffie-Hellman, destinée à des nœuds contraints tels que des cartes à puces ou des téléphones mobiles, est spécifiée. Cette solution prévoit d'utiliser des exposants (valeurs DH secrètes) choisis de manière à provoquer des coûts réduits lors des calculs d'exponentiation modulaire. Pour ce faire, le type d'exposants possibles est restreint et ils sont choisis de manière à ce que l'exponentiation correspondante provoque peu de multiplications et de nombreuses élévations au carré. Cette solution réduit cependant le nombre de valeurs possibles que peut prendre la valeur privée Diffie-Hellman, qui perd de ce fait son caractère aléatoire et devient moins difficile à deviner pour un attaquant. Le gain en performance s'effectue donc aux dépens du niveau de sécurité obtenu. Le problème existant réside en la complexité du protocole Diff ie-Hellman qui rend son coût énergétique très élevé. De ce fait, son usage peut être rendu impossible pour des environnements comprenant des nœuds très contraints. De surcroît, des nœuds le mettant en œuvre de façon répétée peuvent dépenser l'intégralité de leurs ressources énergétiques en un temps exagérément court, se trouvant ainsi déconnectés prématurément du réseau. Cependant, le protocole Diff ie-Hellman est spécifié comme une primitive cryptographique essentielle dans des protocoles de sécurité d'usage courant. Ainsi, les protocoles IPsec [Kent, S. & Seo, K., Security Architecture for the Internet Protocol (rfc4301), IETF, 2005] et SSL [Freier, A., Karlton, P., and P. Kocher, "The Secure Sockets Layer (SSL) Protocol Version 3.0", RFC 6101, August 2011.], qui représentent la très grande majorité des techniques utilisées pour sécuriser les communications, s'appuient tout deux sur l'algorithme Diffie-Hellman pour s'accorder sur les clés de session à utiliser dans les tunnels sécurisés qu'ils établissent. En outre, de nombreux échanges Diffie-Hellman sont susceptibles d'être requis pour un même nœud, puisque un échange DH est nécessaire dès qu'une connexion sécurisée avec un nouveau partenaire doit être établie .
Il existe alors le besoin d'une solution peu coûteuse en consommation énergétique, qui permette l'usage du protocole Diffie-Hellman pour établir des clés de session, tout en maintenant un haut niveau de sécurisation des communications.
La présente invention répond à ce besoin.
Résumé de l'invention
Un objet de la présente invention est de fournir un procédé pour établir une clé de session entre deux entités pouvant être fortement hétérogènes en termes de ressources.
Avantageusement, le procédé de l'invention basé sur l'algorithme Diffie-Hellman (DH) prévoit la délégation à des nœuds assistants des opérations cryptographiques requises pour les calculs de la valeur publique DH et de la clé de session DH pour le nœud contraint en ressources.
Avantageusement, la présente invention propose une collaboration entre nœuds pour faire effectuer les opérations les plus coûteuses de l'algorithme DH par des nœuds au voisinage d'un nœud contraint, sans compromettre la confidentialité de la valeur privée du nœud contraint.
Avantageusement, la présente invention répond à la fois aux exigences de sécurité et de faible coût d'utilisation. En effet, la délégation des calculs cryptographiques est effectuée de manière à ce que la confidentialité de la valeur privée du nœud faible en ressources soit assurée vis-à-vis des nœuds assistants .
Un autre objet de la présente invention est de permettre dans un réseau de communication une augmentation de la durée de vie de nœuds fortement contraints en ressources.
Avantageusement, l'invention exploite l'hétérogénéité des nœuds d'un réseau pour décharger les nœuds faibles en ressources du calcul exponentiel coûteux nécessaire pour générer les clés DH .
Toujours avantageusement mais sans limitation, l'invention trouvera des applications dans les domaines industriels des éditeurs de pile de protocoles réseaux pour des objets à faible ressources participant à un modèle intégré d'Internet des objets.
Avantageusement, les nœuds assistants proposés dans la solution peuvent être commercialisés en tant qu'entités s' adjoignant à une infrastructure existante de « réseau de capteurs ».
Pour obtenir les résultats recherchés, un procédé tel que décrit dans la revendication indépendante 1, un dispositif tel que décrit dans la revendication indépendante 13 et un produit programme d'ordinateur tel que décrit dans la revendication 14 sont proposés.
En particulier, dans un réseau de communication comprenant une pluralité d'entités communicantes, une méthode pour établir une clé de session selon le protocole Diffie-Hellman entre une entité source ayant une valeur privée source 'a' et une entité cible ayant une valeur privée cible 'h' et une valeur publique cible 'gbmod p', la méthode comprenant les étapes de :
• sélection de 'n' entités assistantes parmi la pluralité d'entités communicantes ;
• réception par les 'η' entités assistantes de 'n' fragments de la valeur privée source ;
• calcul par chaque entité assistante d'un fragment de valeur publique source pour le fragment reçu ;
• transmission par chaque entité assistante à l'entité cible du fragment de valeur publique source calculé ; • en réponse, réception par les 'n' entités assistantes de la valeur publique cible ygb mod P';
• calcul d'une exponentiation de la valeur publique cible par chaque entité assistante ; et
• transmission de chaque exponentiation à l'entité source. Différentes variantes d ' implémentations sont décrites dans les revendications dépendantes.
Description des figures
Différents aspects et avantages de l'invention vont apparaître en appui de la description d'un mode préféré d ' implémentation de l'invention mais non limitatif, avec référence aux figures ci-dessous :
La Figure 1 est une représentation topologique d'une infrastructure réseau dans laquelle implémenter avantageusement l'invention ;
La Figure 2 montre les étapes opérées par une entité source pour décomposer une valeur privée en fragments de valeurs secrètes ; La Figure 3 montre les étapes opérées par une entité source pour calculer une clé de session ; La Figure 4 montre les étapes opérées par une entité cible pour calculer une valeur publique de l'entité source ;
La Figure 5 montre les étapes opérées par un proxy pour calculer un fragment de valeur publique ;
La Figure 6 montre les étapes opérées par un proxy pour calculer un segment d'une clé de session ;
La Figure 7 montre les échanges réalisés entre un nœud source et un nœud cible pour établir une clé de session dans une première variante d ' implémentation de l'invention;
La Figure 8 montre les échanges réalisés entre un nœud source et un nœud cible pour établir une clé de session dans une seconde variante d ' implémentation de l'invention.
Description détaillée de l'invention
La présente invention décrit un échange de clé de session, basé sur le protocole Diffie-Hellman, entre deux entités hétérogènes en termes de ressources. La solution met en œuvre des techniques collaboratives distribuées à l'aide de nœuds assistants ou proxies. La figure 1 illustre un environnement réseau (100) dans lequel l'invention est implémentée avantageusement. Pour des raisons de simplicité de description et non de limitation de l'invention, l'exemple de la figure 1 ne montre qu'un nombre fini d'entités et de connexions, mais l'homme du métier étendra les principes décrits à une pluralité et une variété d'entités et de type de connexions (sans fil, mobile, très haut débit) .
Le réseau (100) comprend un ensemble d'entités fixes ou mobiles formant un réseau de nœuds (102) . Le réseau de nœuds comprend des nœuds à fortes contraintes de ressources (102-1, 102-n) et des nœuds à moindre contraintes de ressources (112-1, 112-m) .
Les nœuds à fortes contraintes de ressource peuvent être des capteurs ou actionneurs sans fil, ayant des capacités de calculs et/ou de stockage limitées. Il peut également s'agir de tags actifs. Cependant, un nœud qui n'est pas intrinsèquement limité en ressources peut l'être de façon temporaire dès lors qu'il emploie une grande part de ses ressources processeur à une autre tâche, ou que son niveau de batterie atteint une valeur seuil critique. Et ce nœud peut être amené à devoir mettre en œuvre des protocoles moins coûteux en énergie, tel celui de 1 'invention .
Les nœuds moins contraints en ressource peuvent être des téléphones portables munis d'une connexion internet et d'un appareil photo. Il peut également s'agir de passerelles d'interconnexion entre un réseau d'entités contraintes et l'Internet. Ces entités offrent une puissance de calcul et une capacité de stockage plus importantes, peuvent disposer d'une réserve d'énergie (batterie, alimentation sur secteur) plus importante et peuvent communiquer sur un réseau, soit directement à un réseau internet (104) comme illustré ou bien au travers de passerelles et serveurs intermédiaires (non montré) .
Le réseau de nœuds (102) peut être basé sur des communications de niveau 2 (par exemple, 802.15.4 ou 802.11) ou de niveau 3 (par exemple, IP) entre les nœuds qui le composent. Suivant les protocoles sur lesquels il s'appuie, des schémas de communications multicast ou broadcast peuvent y être employés .
Le réseau (100) comprend aussi des entités distantes (106) ne présentant pas de contraintes en ressources, comparativement à celles du réseau de nœuds (102) .
Les entités distantes peuvent être des serveurs (par exemple, serveur de stockage et/ou management d'informations remontées par un ou plusieurs capteurs ou serveur de contrôle d ' actionneurs ) ayant des capacités de stockage et de puissance de calcul importantes ou toute autre entité présentant des capacités de calcul, de stockage et d'énergie non contraintes .
Un tel réseau (100) forme ce que l'on trouve dénommé comme un internet des objets (IdO) . Il couvre deux types de communication :
• celles d'objet à personne; • celles d'objet à objet, ou machine à machine ( 2M) .
Ces communications peuvent être établies dans un contexte limité (un seul protocole employé, par exemple ZigBee et/ou un seul scénario ciblé, par exemple le Réseau Electrique Intelligent ou Smart Grid) et on parle alors d' «intranet des objets » ou peuvent avoir vocation à rendre possible un grand nombre de services distincts, tout en s ' appuyant sur de nombreux protocoles de communications, et on parle alors d' «internet des objets». Généralement, on entend par Internet des Objets une architecture qui permet 1 ' interconnexion de 1 ' Internet classique avec des objets communicants ou perçus, et qui s'appuie sur des schémas de communication décentralisés, tout en mettant en œuvre des mécanismes autonomes.
La présente invention peut être avantageusement appliquée dans l'environnement de la figure 1 entre un nœud fortement contraint en ressources (102-1) que l'on dénomme indifféremment dans la présente description, entité source ou émetteur, et un serveur distant puissant (106) que l'on dénomme entité cible ou récepteur. Les deux entités ont besoin d'établir une clé de session.
La figure 2 montre les procédures exécutées par une entité source pour décomposer une valeur privée source en un ensemble de valeurs secrètes à adresser à des entités assistantes.
Dans une première étape 202, l'entité source génère de manière aléatoire une valeur privée source 'a' selon le principe du protocole Diffie-Hellman, où cette valeur correspond à l'exposant secret qui sert à déduire la valeur publique Diffie-Hellman .
La valeur privée source est décomposée à l'étape suivante 204, en une pluralité 'n' de valeurs secrètes 'ai'. Dans cette phase, l'entité source génère un ensemble de valeurs yai' dont la possession de la totalité ou d'un certain nombre permet de reconstituer son exposant secret 'a'.
Le nombre de fragments 'n' correspond au nombre d'entités assistantes ou proxies qui sont sélectionnés pour supporter l'échange de clé entre les entités source et cible.
La sélection des proxies peut se baser sur les réputations des entités présentes au voisinage de l'entité source et/ou sur leurs ressources disponibles telles que par exemple leur puissance de calcul ou leur niveau de batterie. Dans le cas où la sélection se base sur les réputations des nœuds au voisinage, ces derniers peuvent être évalués localement ou par un serveur central selon leurs attitudes passées. Une métrique, la réputation, est alors définie qui rend compte des types et proportions d'attitudes positives (par exemple, offrir un service) et négatives (par exemple, refuser d'offrir un service) qu'un nœud a manifesté par le passé. Dans une variante, l'entité source peut détenir une liste prédéfinie de proxies utilisables, et la sélection des proxies à utiliser pour la session est faite dans cette liste. A l'étape suivante 206, chaque valeur secrète ai est assignée et transmise à un proxy Pi parmi les yn' proxies sélectionnés. La Figure 3 montre les étapes opérées par une entité source pour calculer une clé de session finale. Dans une étape 302, l'entité source reçoit de chacun des 'n' proxies, une valeur encryptée. Chaque valeur correspond au résultat d'une exponentiation effectuée respectivement par chaque proxy. L'entité source calcule à l'étape 304 la valeur de la clé finale DH à réception de toutes les valeurs encryptées .
La Figure 4 montre les étapes opérées par une entité cible pour calculer une valeur publique de l'entité source. A l'étape 402, l'entité cible reçoit de ' n ' proxies un ensemble de 'η' valeurs publiques. Chaque valeur correspond au calcul d'une valeur publique effectué respectivement par chaque proxy à partir du fragment de valeur secrète reçu de l'entité source. Selon les variantes d ' implémentation qui sont décrites plus bas, en référence aux figure 7 et 8, à réception soit de toutes les valeurs publiques soit d'un nombre fini d'entre elles, l'entité cible calcule à l'étape 404 la valeur publique gamodp de l'entité source. A l'étape suivante 406, l'entité cible transmet aux 'n' proxies une valeur publique qui est selon la variante d ' implémentation des figures 7 ou 8, soit sa propre valeur publique gbmodp pour la variante de la figure 7, soit un fragment de sa valeur publique tel qu'il sera détaillé plus bas en référence à la figure 8.
La Figure 5 montre les étapes opérées par une entité assistante pour calculer une valeur publique correspondant au fragment de la valeur secrète reçue de l'entité source. A l'étape 502, un proxy Pi reçoit de l'entité source, une valeur secrète issue de la décomposition de la valeur privée 'a' initiale. A l'étape suivante 504, le proxy Pi calcule la valeur publique pour le fragment de valeur secrète reçue, générant un fragment de valeur publique. Le fragment de valeur publique est transmis à l'étape 506 à l'entité cible. La Figure 6 montre les étapes opérées par une entité assistante pour calculer un segment d'une clé de session DH. Dans une étape initiale non montrée, l'entité cible génère de manière aléatoire une valeur privée cible 'b' selon le principe du protocole Diffie-Hellman, où cette valeur correspond à l'exposant secret qui sert à déduire sa valeur publique Diffie-Hellman . A l'étape 602, un proxy i reçoit une valeur publique calculée par l'entité cible à partir de sa propre valeur publique gb modp tel que décrit en référence à la figure 4. A l'étape suivante 604, le proxy calcule un segment de clé de session finale à partir du fragment de la valeur secrète précédemment reçu par l'entité source (étape 206) et de la valeur publique reçue de l'entité cible. Puis à l'étape 606, le proxy envoie le segment de clé de session généré à l'entité source. Les figures 7 et 8 montrent les échanges réalisés entre une entité source (ou nœud 'Α') et une entité cible (ou nœud 'Β') pour établir une clé de session dans deux variantes d ' implémentation de l'invention.
Dans une phase non montrée sur la figure, le nœud A sélectionne des nœuds assistants Pi moins contraints en ressources que lui-même pour participer à l'échange.
Dans une première phase (701,801) le nœud B génère un nombre aléatoire 'b' comme exposant secret pour calculer sa valeur publique DH, à partir de deux paramètres 'g' et 'p' sur lesquels se sont mis d'accord les entités source et cible.
Puis, dans une phase suivante (702, 802) le nœud A génère un nombre aléatoire 'a' comme exposant secret DH.
Dans l'exemple décrit, il est supposé que la source est faible en ressources et que les opérations cryptographiques requises pour les calculs de sa valeur publique DH et sa clé de session DH sont déléguées à des nœuds assistants Proxies (Pi, Pn) .
Il est à considérer que l'exposant secret 'a' doit être maintenu privé au nœud A et ne peut pas être remis en clair au nœud B ou aux proxies.
Dans une première variante (figure 7), le nœud A génère un ensemble de 'n' valeurs à partir de l'exposant secret ' a' . Avantageusement, le nœud A décompose son exposant secret 'a' en n fragments (ai, ... , an) n étant le nombre de proxies sélectionnés pour supporter l'échange, et tel que a =∑Ja}.
Le nœud A fournit ensuite (704) d'une façon sécurisée à chaque proxy Pi le fragment qui lui est assigné, en utilisant une association de sécurité basée sur une clé symétrique kA_P1 entre A et Pi.
Une deuxième variante (figure 8) se base sur la technique d'interpolation polynomiale de Lagrange. Considérant k points dans un plan à 2 dimensions (xi, yi) , (Xk, Yk) (avec les xi distincts deux à deux), il existe un unique polynôme f(x) de degré k-1 vérifiant f(Xi)=yi pour tout i. Le polynôme f est dérivé selon la formule de Lagrange suivante :
Compte-tenu de cette technique d'interpolation, le nœud A génère un polynôme f (x) de degré k-1 sous la forme de f(x) = qo+qix+...+ qk-i Xk-i avec qi, q2, qk-i des coefficients aléatoires et a=q0.
A partir de k valeurs du polynôme f (x) , il est possible de trouver ses coefficients
l'exposant secret a =f(0) comme suit :
Le nœud A calcule n valeurs f(l), f(n) du polynôme f(x) puis fournit (804) d'une façon sécurisée la valeur f(i) à chaque proxy Pi avec i =l,2,...,n. La connaissance de k valeurs parmi les n valeurs transmises aux proxies permet de reconstituer l'exposant secret a.
A réception des valeurs secrètes du nœud A, les proxies effectuent un calcul initial de la clé publique du nœud A.
Dans la première variante de l'invention, le proxy P± reçoit la valeur secrète a± transmise par le nœud A et calcule (706) la valeur publique correspondante gaimodp.
Dans la deuxième variante de l'invention, le proxy Pi reçoit la valeur secrète f(i) du nœud A et calcule (806) la valeur publique correspondante od p .
Puis le proxy P± délivre ( 708, 808) au nœud B cette valeur publique calculée.
A réception des valeurs publiques des proxies, le nœud B reconstitue la clé publique source du nœud A qui lui sert à établir la clé de session finale.
Il est à apprécier qu'avantageusement, ce calcul de la clé publique source est effectué sans que l'exposant secret a du nœud A soit divulgué au nœud B.
Dans la première variante de l'invention, le nœud B reçoit ( 708) des valeurs gaimodp du nœud A. La reconstitution de la clé publique du nœud A s'effectue selon le calcul (710) suivant : n
J~~J gai mod p— g^1 α' mod p— ga mod p i=l
L'homme du métier apprécie que la sécurité du secret ' a r réside dans la difficulté du problème du logarithme discret. Le nœud B ne peut pas déduire les ai des seules informations gai mod p, g et p.
Dans la deuxième variante de l'invention, le nœud B reçoit ( 8 08 ) des valeurs gf^ mod du nœud A. La reconstitution de la clé publique s'effectue à la réception d'un sous-ensemble de k valeurs parmi les n valeurs publiques transmises par les proxies à B.
A la réception de ces k valeurs gf^mod transmises par les proxies, le nœud B calcule ( 81 0 ) des coefficients c± suivant l'é uation :
Puis le nœud B calcule ( 8 1 0 ) la clé publique du nœud A en se basant sur la formule de Lagrange suivante: mod = gfW moc[ p = ga mod p
Avantageusement, la deuxième variante de l'invention permet de ne pas imposer la réception de toutes les valeurs publiques, protégeant ainsi la solution contre la non disponibilité ou la compromission de certains des nœuds assistants.
Ultérieurement, le nœud B transmet (712, 812) sa clé publique cible aux proxies.
Dans la première variante de l'invention, le nœud B envoie (712) à tous les proxies P± sa valeur publique gh mod p .
Dans la deuxième variante de l'invention, le nœud B calcule (810) pour chaque Pi (i e P) la valeur gbCimodp où c± étant le i-ème coefficient calculé à la phase précédente et transmet (812) le résultat à chaque proxy Pi.
Avantageusement, l'invention permet que la seconde exponentiation requise pour le calcul de la clé de session soit assurée par les nœuds assistants d'une manière coopérative.
Les nœuds assistants sélectionnés supportent la charge de calcul nécessaire pour effectuer une exponentiation sans pouvoir cependant générer la clé finale .
Dans la première variante, en réception, chaque proxy utilise le secret ai initialement remis par A et la valeur publique cible de B pour calculer (714) gbai mod p— (gh mod p)"1 . Dans la deuxième variante, en réception, chaque proxy utilise la valeur du polynôme f(i) et la valeur publique cible reçue de B gb0imod p pour calculer (814) gb t(i) ci moc p = (gbcimod p)f^mod p .
Dans les deux variantes de l'invention, ces valeurs calculées par les proxies sont ensuite transmises (716, 816) d'une manière sécurisée de chaque proxy au nœud A afin d'effectuer le calcul final de la clé de session DH (718, 720, 818, 820) .
Cette phase termine le système d'établissement de clé basé sur le protocole DH .
Au niveau du nœud B le calcul de la clé s'effectue comme dans le cas habituel d'un échange de clé Diffie-Hellman . Le nœud B calcule (720, 820) la clé de session en élevant la clé publique du nœud A à la puissance de son exposant secret b pour obtenir km=gab mod p .
Au niveau du nœud A le calcul s'effectue selon la variante d ' implémentation .
Dans la première variante, à la réception de tous les gbai mod p de la part des proxies, le nœud A calcule (718) la clé finale en multipliant ces différentes valeurs suivant l'équation : ai mod p = gab mod p
Dans la deuxième variante, à la réception des gt> f( cjmod cie na part des k proxies, le nœud A calcule (818) la clé finale en multipliant ces différentes valeurs suivant l'équation : mod p = gab mod p
tep
A l'issue de ces phases de calcul, les entités source et cible ont établi un tunnel de communication sécurisé sur une clé de session DH .
L'homme de l'art appréciera que des variations puissent être apportées sur le procédé tel que décrit de manière préférentielle, tout en maintenant les principes de l'invention.
La présente invention peut s ' implémenter à partir d'éléments matériel et/ou logiciel. Elle peut être disponible en tant que produit programme d'ordinateur sur un support lisible par ordinateur. Le support peut être électronique, magnétique, optique, électromagnétique ou être un support de diffusion de type infrarouge. De tels supports sont par exemple, des mémoires à semi-conducteur (Random Access Memory RAM, Read-Only Memory ROM) , des bandes, des disquettes ou disques magnétiques ou optiques (Compact Disk - Read Only Memory (CD-ROM) , Compact Disk - Read/Write (CD-R/W) and DVD) .
Ainsi la présente description illustre une implémentation préférentielle de l'invention, mais n'est pas limitative. Un exemple a été choisi pour permettre une bonne compréhension des principes de l'invention, et une application concrète, mais il n'est en rien exhaustif et doit permettre à l'homme du métier d'apporter des modifications et variantes d'implémentation en conservant les mêmes principes.

Claims

Revendications
1. Dans un réseau de communication comprenant une pluralité d'entités communicantes, une méthode pour établir une clé de session selon le protocole Diffie- Hellman entre une entité source ayant une valeur privée source 'a' et une entité cible ayant une valeur privée cible 'b' et une valeur publique cible 'gb mod p', la méthode comprenant les étapes de :
• sélection de 'n' entités assistantes parmi la pluralité d'entités communicantes ;
• réception par les n' entités assistantes de 'n' fragments de la valeur privée source ;
• calcul par chaque entité assistante d'un fragment de valeur publique source pour le fragment reçu ;
• transmission par chaque entité assistante à l'entité cible du fragment de valeur publique source calculé ;
• en réponse, réception par les 'n' entités assistantes de la valeur publique cible ' gb mod p';
• calcul d'une exponentiation de la valeur publique cible par chaque entité assistante ; et
• transmission de chaque exponentiation à l'entité source.
2. La méthode selon la revendication 1 comprenant avant l'étape de sélection, les étapes de :
• décomposer la valeur privée source ' a' en une pluralité 'n' de fragments de valeur privée source ;
• encrypter les yn' fragments de valeur privée source ; et
• transmettre chaque fragment de valeur privée source encrypté à une entité assistante.
3. La méthode selon la revendication 2 dans laquelle l'étape de décomposition de la valeur privée source 'a' consiste à générer yn' valeurs ' a± ' tel que a =
4. La méthode selon la revendication 2 dans laquelle l'étape de décomposition de la valeur privée source 'a' consiste à générer 'n' valeurs 'f(i)' d'un polynôme f (x) .
5. La méthode selon l'une quelconque des revendications 2 à 4 dans laquelle l'étape d'encryption consiste en une association de sécurité basée sur une clé entre l'entité source et chaque entité assistante.
6. La méthode selon l'une quelconque des revendications 2 à 5 comprenant de plus une étape de calculer par l'entité cible la valeur publique source à réception de tous les fragments de valeurs publiques source .
7. La méthode selon l'une quelconque des revendications 2 à 5 comprenant de plus une étape de calculer par l'entité cible la valeur publique source à réception d'un nombre ' k ' de fragments de valeurs publiques source, 'k' étant inférieur à 'n'.
8. La méthode selon la revendication 7 dans laquelle le calcul de la valeur publique source est réalisé par une interprétation polynômiale de Lagrange.
9. La méthode selon l'une quelconque des revendications 1 à 8 comprenant de plus les étapes de :
• encrypter les exponentiations; et
transmettre chaque exponentiation encryptée à l'entité source.
10. La méthode selon la revendication 9 comprenant après l'étape de transmission de chaque exponentiation, l'étape de calculer la clé de session Diffie-Hellman.
11. La méthode selon l'une quelconque des revendications 1 à 10 dans laquelle les 'η' entités sélectionnées sont moins contraintes en ressources que l'entité source.
12. La méthode selon l'une quelconque des revendications 1 à 11 dans laquelle l'étape de calcul d'une exponentiation de la valeur publique cible par chaque entité assistante est faite au moyen du fragment de la valeur privée source reçu.
13. Dans un réseau de communication comprenant une pluralité d'entités communicantes, un système pour établir une clé de session selon le protocole Diffie- Hellman entre une entité source et une entité cible, le système comprenant des moyens pour mettre en œuvre les étapes de la méthode selon l'une quelconque des revendications 1 à 12.
14. Un produit programme d'ordinateur, ledit programme d'ordinateur comprenant des instructions de code permettant d'effectuer les étapes de la méthode selon l'une quelconque des revendications 1 à 12, lorsque ledit programme est exécuté sur un ordinateur.
EP13730247.7A 2012-06-21 2013-06-19 Dispositif et procede pour generer une cle de session entre des entites a faibles ressources Withdrawn EP2865128A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1255856A FR2992509B1 (fr) 2012-06-21 2012-06-21 Dispositif et procede pour generer une cle de session
PCT/EP2013/062784 WO2013190003A1 (fr) 2012-06-21 2013-06-19 Dispositif et procede pour generer une cle de session entre des entites a faibles ressources

Publications (1)

Publication Number Publication Date
EP2865128A1 true EP2865128A1 (fr) 2015-04-29

Family

ID=47714168

Family Applications (1)

Application Number Title Priority Date Filing Date
EP13730247.7A Withdrawn EP2865128A1 (fr) 2012-06-21 2013-06-19 Dispositif et procede pour generer une cle de session entre des entites a faibles ressources

Country Status (4)

Country Link
US (1) US9843443B2 (fr)
EP (1) EP2865128A1 (fr)
FR (1) FR2992509B1 (fr)
WO (1) WO2013190003A1 (fr)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160352710A1 (en) * 2015-05-31 2016-12-01 Cisco Technology, Inc. Server-assisted secure exponentiation
US9923715B2 (en) * 2015-06-09 2018-03-20 Intel Corporation System, apparatus and method for group key distribution for a network
US9973334B2 (en) * 2015-09-03 2018-05-15 Cisco Technology, Inc. Homomorphically-created symmetric key
SG11201806785YA (en) 2016-02-23 2018-09-27 Nchain Holdings Ltd Tokenisation method and system for implementing exchanges on a blockchain
KR20180114198A (ko) 2016-02-23 2018-10-17 엔체인 홀딩스 리미티드 블록체인 기반의 암호화폐를 위한 범용 토큰화 시스템
CN109074563B (zh) 2016-02-23 2022-04-19 区块链控股有限公司 区块链系统内的基于代理的图灵完备交易集成反馈
WO2017145019A1 (fr) 2016-02-23 2017-08-31 nChain Holdings Limited Registre et procédé de gestion automatisée pour contrats intelligents appliqués par chaîne de blocs
KR20180115293A (ko) 2016-02-23 2018-10-22 엔체인 홀딩스 리미티드 블록체인상의 개체의 안전한 전송을 위한 방법 및 시스템
GB2561729A (en) 2016-02-23 2018-10-24 Nchain Holdings Ltd Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
GB2560274C (en) 2016-02-23 2022-06-15 Nchain Holdings Ltd Personal device security using elliptic curve cryptography for secret sharing
US11606219B2 (en) 2016-02-23 2023-03-14 Nchain Licensing Ag System and method for controlling asset-related actions via a block chain
CA3014737A1 (fr) 2016-02-23 2017-08-31 nChain Holdings Limited Procede mis en ƒuvre par chaine de blocs pour le controle et la distribution de contenu numerique
IL261210B (en) 2016-02-23 2022-08-01 Nchain Holdings Ltd An exchange based on a 'block chain' with tokenization
BR112018016805A2 (pt) 2016-02-23 2018-12-26 Nchain Holdings Ltd método e sistema para transferência eficiente de criptomoeda associada com um pagamento em um blockchain que leva a um pagamento automatizado, método e sistema com base em contratos inteligentes
BR112018016819A2 (pt) 2016-02-23 2018-12-26 Nchain Holdings Ltd método e sistemas para proteger um recurso digital controlado utilizando uma tabela de dispersão e livro-razão distribuídos e um blockchain
US10652014B2 (en) * 2016-02-23 2020-05-12 nChain Holdings Limited Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
JP6995762B2 (ja) 2016-02-23 2022-01-17 エヌチェーン ホールディングス リミテッド ブロックチェーンからのデータのセキュアな抽出のための暗号方法及びシステム
US11997107B2 (en) * 2019-08-30 2024-05-28 Cornell University Decentralized techniques for verification of data in transport layer security and other contexts

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046094A (en) * 1989-02-02 1991-09-03 Kabushiki Kaisha Toshiba Server-aided computation method and distributed information processing unit
IL139935A (en) * 1998-06-03 2005-06-19 Cryptography Res Inc Des and other cryptographic processes with leak minimization for smartcards and other cryptosystems
US6779111B1 (en) * 1999-05-10 2004-08-17 Telefonaktiebolaget Lm Ericsson (Publ) Indirect public-key encryption
US7113594B2 (en) * 2001-08-13 2006-09-26 The Board Of Trustees Of The Leland Stanford University Systems and methods for identity-based encryption and related cryptographic techniques
FR2834153B1 (fr) * 2001-12-21 2004-04-23 France Telecom Procede cryptographique permettant de repartir la charge entre plusieurs entites et dispositifs pour mettre en oeuvre ce procede
US8050409B2 (en) * 2004-04-02 2011-11-01 University Of Cincinnati Threshold and identity-based key management and authentication for wireless ad hoc networks
US7760875B2 (en) 2006-06-29 2010-07-20 Intel Corporation Accelerating Diffie-Hellman key-exchange protocol with zero-biased exponent windowing
FR2988942B1 (fr) * 2012-03-27 2015-08-28 Commissariat Energie Atomique Methode et systeme d'etablissement d'une cle de session

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2013190003A1 *

Also Published As

Publication number Publication date
US20150188700A1 (en) 2015-07-02
FR2992509A1 (fr) 2013-12-27
FR2992509B1 (fr) 2017-05-26
US9843443B2 (en) 2017-12-12
WO2013190003A1 (fr) 2013-12-27

Similar Documents

Publication Publication Date Title
WO2013190003A1 (fr) Dispositif et procede pour generer une cle de session entre des entites a faibles ressources
Saied et al. Lightweight collaborative key establishment scheme for the Internet of Things
WO2013143888A1 (fr) Methode et systeme d'etablissement d'une cle de session
Hellaoui et al. Energy-efficient mechanisms in security of the internet of things: A survey
Ozmen et al. Dronecrypt-an efficient cryptographic framework for small aerial drones
EP3174241B1 (fr) Méthode d'établissement d'une communication sécurisée de bout en bout entre le terminal d'un utilisateur et un objet connecté
WO2018177905A1 (fr) Échange de clés hybride
WO2013160140A1 (fr) Methode et systeme d' authentification des noeuds d'un reseau
Dang et al. A pragmatic elliptic curve cryptography-based extension for energy-efficient device-to-device communications in smart cities
EP2979391A1 (fr) Procede et dispositif pour former un reseau sans fil securise a faibles ressources
Dao et al. Achievable multi-security levels for lightweight IoT-enabled devices in infrastructureless peer-aware communications
WO2009027447A2 (fr) Procede de distribution de cles cryptographiques dans un reseau de communication
Dong et al. Fog computing: Comprehensive approach for security data theft attack using elliptic curve cryptography and decoy technology
Mzid et al. Adapting TLS handshake protocol for heterogenous IP-based WSN using identity based cryptography
Schöffel et al. On the energy costs of post-quantum KEMs in TLS-based low-power secure IoT
Abraham et al. An efficient protocol for authentication and initial shared key establishment in clustered wireless sensor networks
Heo et al. Efficient and authenticated key agreement mechanism in low-rate WPAN environment
Lin et al. The secure vehicle-to-vehicle and vehicle-to-group communication mechanisms in smart city
Al-Haija et al. Estimating energy consumption of diffie hellman encrypted key exchange (DH-EKE) for wireless sensor network
Porambage et al. Efficient key establishment for constrained IoT Devices with collaborative HIP-based approach
Lavanya et al. Certificate-free collaborative key agreement based on IKEv2 for IoT
Kaur et al. Implementing RSA Algorithm in MANET and Comparison with RSA Digital Signature
JP2007096751A (ja) パスワード認証鍵交換装置、システム、方法、及びコンピュータプログラム
Santos-González et al. Distributed communication system for emergencies
Gaur et al. GDH Key Exchange Protocol for Group Security Among Hypercube Deployed IoT Devices

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20141120

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20180305