WO2007125263A2 - Procede de securisation de donnees - Google Patents
Procede de securisation de donnees Download PDFInfo
- Publication number
- WO2007125263A2 WO2007125263A2 PCT/FR2007/051196 FR2007051196W WO2007125263A2 WO 2007125263 A2 WO2007125263 A2 WO 2007125263A2 FR 2007051196 W FR2007051196 W FR 2007051196W WO 2007125263 A2 WO2007125263 A2 WO 2007125263A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- function
- injective
- common
- hash function
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
Definitions
- the present invention relates to a method of securing during the transmission of data and authentication steps.
- This hash function converts a string of any length into a chain of generally lower size which is called condensate of the initial chain.
- the majority of these hash functions are built by iteration of a compression function, ie a message M is decomposed into n blocks In 1 ...., ItI n , then a compression function f is applied to each block and to the result of the compression of the previous block, the condensate h (M) being the result of the last compression.
- the frequently used hash functions are SHA-I (Secure Hash Algorithm 1 on 160 bits), MD5 (Message-Digest algorithm 5 on 128 bits) and SHA2 (on 256, 384 or 512 bits) algorithms.
- SHA-I Secure Hash Algorithm 1 on 160 bits
- MD5 Message-Digest algorithm 5 on 128 bits
- SHA2 on 256, 384 or 512 bits
- the present invention aims to overcome these disadvantages.
- the invention proposes to fulfill at least one of the following objectives:
- the present invention is of the type described above and is remarkable, in its broadest sense, in that it relates to a method of securing data in a context comprising several distinct groups of users using a hash function H common to a plurality of groups and comprising a step of calculating a condensate applied to the data to be secured,
- step of calculating a condensate is carried out by means of said common hash function H applied to the result of the application, to said data, of an injective function g.
- said injective function g is a combination of functions.
- said injective function g is one-way to enhance security.
- said injective function g can also not be one-way in some cases.
- said function g is bijective.
- said injective function g applies to several variables.
- said injective function g can comprise at least one variable.
- Said injective function g can have a fixed size result. Said injective function g can also in some cases have a result of variable size.
- it also comprises message signature generation steps associated with group or application-specific variables.
- One embodiment of the invention is that it comprises key generation steps K 1 from a hash function H common to a plurality of user groups, said hash function H being applied to a function g injective data.
- Another embodiment is that it comprises steps for generating identifiers ID 1 from a hash function H common to a plurality of user groups, said hash function H being applied to an injective function g of data .
- it comprises steps of generation of signatures S 1 from a hash function H common to a plurality of user groups, said hash function H being applied to an injective data function g.
- it furthermore comprises steps for deriving keys K 1 from the master key K m of a group, associated with variables specific to the group or to the application.
- it furthermore comprises steps for deriving identifiers ID 1 from another ID 3 of a group, associated with group or application specific variables.
- it further includes signature derivation steps S 1 from another signature S 3 of a group associated with group or application specific variables.
- g_RoKDeF (1 _ 1) K (1) max , K (2 ) max / - / K (II) IHaXJ with: i a natural integer denoting the number of variable of the function g_RoKDeF (1) l with i> l for j integer and l ⁇ j ⁇ i, JT rj; is a variable natural integer such that 0 ⁇ K (J) ⁇ K (J) max These integers can represent keys, signatures, messages, texts, etc. K (J) max is an integer.
- the secure data is exchanged according to a public digital communication protocol.
- the secure data is used according to a public digital communication protocol.
- the present invention also relates to a secure communication system in a context comprising several distinct groups of users, each user having a device comprising a memory for the recording of at least one piece of data (key, identifier, signature. ..), said data being generated using a hash function H common to a plurality of groups including a calculation step a condensate applied to said data to be secured, characterized in that said step of calculating a condensate is performed using said common hash function H applied to the result of the application, to said data, of a function g injective.
- the present invention also relates to a secure server in a context comprising several distinct groups of users, each user having access equipment to said server, said equipment comprising a memory for recording at least one piece of data ( identifier, password, key, ...), said datum being generated by using a hash function H common to a plurality of groups comprising a step of calculating a condensate applied to said data to be secured, characterized in that said step a calculation of a condensate is carried out using said common hash function H applied to the result of the application, to said data, of an injective function g.
- the present invention also relates to secure equipment for access to a server in a context comprising several distinct groups of users, each user having access equipment to said server, said equipment comprising a memory for recording at least one piece of data (identifier, password, key, ...), said datum being generated by using a hash function H common to a plurality of groups comprising a step of calculating a condensate applied to said data to secure, characterized in that said step of calculating a condensate is performed using said common H hash function applied to the result of the application, said data, an injective g function.
- FIG. 'invention The invention will be better understood from the following description, given purely for explanatory purposes, of one embodiment of the invention, with reference to the appended figures: FIG. 'invention.
- the invention can be part of a network communication architecture operating on the TCP / IP protocol.
- This Local Area Network is based on technologies such as Ethernet and Wireless Local Area Networks (WLAN) under IEEE 802.11 standards.
- This device comprises a computer park consisting of client stations and servers. These client stations can be terminals such as PDAs or laptops connected to the network by wireless technology such as WIFI. Data is regularly exchanged between the different actors of this device.
- each computer in the network has a network card or an IEEE 802.11 standard WIFI card that allows them to communicate with each other.
- a processor coupled to a memory divided into several blocks.
- a cryptographic code for encryption and decryption is included in a first block of this memory.
- a shared symmetric key is also possible to use a public key in another embodiment
- the processor is also associated with the various means of communication that are the network card or WIFI for the management and processing of data (sending / receiving).
- the message sent will be a signed message that is to say it will include a digital signature. This signature corresponds to an authentication code of the message.
- the signed message corresponds to data that is added to a data unit that constitutes the message, or to its cryptographic transformation.
- the original message M will be encrypted first.
- Several encryption methods are possible.
- the symmetric or secret key encryption in which the keys of encryption and decryption are identical, and the asymmetric encryption or public key in this case the keys of encryption and decryption are distinct and can not be deduced one of the other.
- the best known can be used in this embodiment, such as RSA (developed by the Massachusetts Institute of Technology), Diffie-Hellman (and its variants, such as the digital signature standard of the National Institute of Standards and Technology, El Gamal and elliptic curve approaches), and Rabin-Williams.
- a computer A sends an encrypted and signed message M "to a computer B as set forth in the equation below to which the cryptographic code stored in a memory block of computers A and B is used:
- S for M' P k (M) with A ⁇ B which describes the sending by A of M" to B and P k (M) the symmetric encryption of M, noted M '(using for example the symmetric RSA algorithm) from the secret key K shared between A and B.
- describes the concatenation of data.
- the user of the computer A generates a message M, this message to be signed is then provided to the processor by the application that manages the messages.
- the processor from the cryptographic code and the private key stored in a block of the memory will calculate the encrypted message M ', then the signed one M ".S corresponds to the digital signature and is obtained by the following equation:
- the processor stores the obtained data M "in the volatile memory in order to be able to carry out other tasks and carries out a control of the network interfaces by input / output system commands, retrieves these data from the memory and sends them to computer B via the network interfaces via the Ethernet or WLAN architecture of the installation.
- the computer B performs the authentication of the received message M 'and its integrity. From the cryptographic code and the secret key shared by A and B present in the memory of the computer the processor will calculate the digital signature S 'of the received message M', that is to say M "without its signature S. The signature S 'obtained will then be compared with the signature S. If they are equal, the message M, calculated from M' object of a decryption operation performed by the processor on the basis of the stored cryptography code in the nonvolatile memory of the computer B, is authenticated and integrates, but if they are different, the received message is corrupted. The generated signatures being more resistant to collisions other users of the network can confidently receive the signed messages from the user A. From the invention a valid digital signature can be produced with high resistance to collisions to send messages. messages and this regardless of the type and size of the message. However, it can be noted that the length of the signature depends on the desired degree of security and the possible encryption rate.
- the invention may be part of a wide area network (WAN) network architecture comprising several groups G1, G2, G3.
- the groups are distributed in geographically different places and are mobile in space.
- Each of the members is provided with a mobile terminal capable of having broadband access to the Internet through technology offering IP connectivity, packet data transmission with sufficient data rates to perform file transfers.
- IP connectivity Internet connectivity
- UMTS Universal Mobile Telecommunications System
- PMR Primary Mobiel Radio
- Mobile terminals can be non-exhaustively laptops, PDAs, edge computers. They are equipped with a modem allowing them to connect regularly to a remote database hosting resources.
- a GPS-based geolocation system coupled with an altimeter, to make the altitude measurement more reliable, enables the group to be positioned in space.
- Each of the terminals comprises a memory associated with a processor.
- This processor is coupled to network interfaces but also to a non-volatile data memory card reader.
- Access to common resources by each member requires a unique key for each group.
- the resources of each of the groups are hosted on a central server and are accessible and viewable according to an access rights management model of the different users or group members who can connect to it.
- This database is connected to the Internet and is thus made accessible to each member of the network.
- the members of groups G2 and G3 come from the initial group Gl. They all hold a key K stored on a non-volatile data memory card.
- the geolocation system coupled to an altimeter sends a location report to the central server hosting the resources after it has been transmitted to the members of the group to which it corresponds and that they have stored it in a block of data.
- the non-volatile memory of their terminal This transmission is established on a secure channel. This reading corresponds to spherical coordinates ( ⁇ , ⁇ , r) with:
- the group G1 is characterized by its coordinates (A 1 , M 1 , R 1 ) and all its members hold the secret key K 1 .
- This key is used to encrypt communications within Gl and access resources in this group.
- the key to connect to the resources of a group, is dynamically generated by each of the terminals.
- the processor of a terminal will, by input / output system commands sent to the data memory card reader, recover the key K stored on a non-volatile data memory card and then calculate the number of combination K m3X possible for the key K.
- the result of K max will be stored in a block of the computer's volatile memory
- the terminal includes a cryptographic code enabling it, after a calculation performed by the processor, to obtain the key that will allow it to access the resources from the spherical coordinates stored in a block of the non-volatile memory of the terminal and the key K stored on the non-volatile data memory card and its maximum value K mav stored in a block of the volatile memory.
- K 1 H (g_RoKDeF (4) (K, ⁇ 1 , M 1 , R 1 )) with H which is a hash function (as specified above which can be an MD5 algorithm), and g_RoKDeF (4) is a function any injective defined by:
- the members of the group G1 will be able to connect to the resources reserved for them.
- members of Gl stand out from their group and form group G2.
- This new group is assigned to a new position characterized by spherical coordinates (A 2 , M 2 , R 2 ) which are known to the central server hosting resources and G2.
- the K 2 key used within G2 as well as to transmit messages to G2 members must be easily calculated by all members.
- each member can generate a key that is unique and different from that of other members of his group and other groups so that he can only access resources that are reserved for him.
- the key K 2 is also deduced from K in the same way as for K 1 by the following equation:
- K 2 H (g_RoKDeF (4) (K, ⁇ 2 , M 2 , R 2 ))
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
La présente invention se rapporte à un procédé et à des systèmes de sécurisation de données dans un contexte comprenant plusieurs groupes distincts d'utilisateurs utilisant une fonction de haschage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
Description
PROCEDE DE SECURISATION DE DONNEES
La présente invention se rapporte à un procédé de sécurisation lors de la transmission de données et d'étapes d'authentification.
Dans le domaine des systèmes de communication au travers d'infrastructures basées sur des technologies comme par exemple le Wi-Fi, Wimax, PMR (Private Mobile Radio), ou autres réseaux, il est nécessaire de pouvoir garantir une certaine sécurité lors de la transmission de données. Cette sécurité se traduit par une intégrité et une confidentialité des échanges mais aussi par une authentification des différentes parties prenant part à ces échanges afin qu'il ne soit pas possible d'un point de vue matériel ou algorithmique par des méthodes de cryptanalyse de pouvoir déterminer le contenu d'un échange de message entre des parties. Comme par exemple à partir d'une signature, ou d'un message donné accompagné de sa signature, ou encore par le fait de générer un autre message qui donne la même signature ou bien de trouver deux messages aléatoires qui donnent la même signature.
Dans l'art antérieur, il est connu d'utiliser des procédés de cryptographie reposant sur la dérivation de clefs ou des fonctions HMAC (code d' authentification de messages par hachage) qui par la transformation de données permettent aux seuls détenteurs d'une clef de décryptage de pouvoir authentifier un message échangé et vérifier son intégrité.
On connaît aussi des procédés reposant sur des fonctions de hachage cryptographique pour les signatures électroniques, et les mécanismes d'authentification par mot de passe sans stockage de ce dernier. Cette fonction de hachage dite fonction de hachage à sens unique permet de convertir une chaîne de longueur quelconque en une
chaîne de taille généralement inférieure qui est appelée condensât de la chaîne initiale. La grande partie de ces fonctions de hachage sont construites par itération d'une fonction de compression c'est à dire qu'un message M est décomposé en n blocs In1....,ItIn, puis une fonction de compression f est appliquée à chaque bloc et au résultat de la compression du bloc précédent, le condensât h (M) étant le résultat de la dernière compression. Les fonctions de hachage fréquemment utilisées sont les algorithmes SHA-I (Secure Hash Algorithm 1 sur 160 bits), MD5 (Message-Digest algorithm 5 sur 128 bits) et SHA2 (sur 256, 384 ou 512 bits). Ce mécanisme est mis en place dans la demande US 6,826,686 qui se rapporte à un procédé de sécurisation pour changer un mot de passe par un nouveau et aussi dans la demande de brevet WO 03/063410 qui décrit un dispositif et une méthode de cryptage pour la signature de message.
Ce procédé présente néanmoins des inconvénients car il ne garantit pas en toutes circonstances l'unicité des résultats des fonctions de hachages appliqués à des clés distinctes obtenues par dérivation d'une même clé maître. Ces solutions connues dans l'état de la technique peuvent de ce fait conduire à des collisions incompatibles avec un environnement de sécurité.
Dans l'art antérieur afin de pallier à cet inconvénient une étape correspondant à une « concaténation » et/ou une étape de « OU exclusifs » a été ajoutée aux procédés reposant sur des fonctions de hachage. Ce mécanisme est utilisé dans la demande de brevet US 20030177401 qui propose un procédé qui consiste à ajouter une composante aléatoire lors de la génération initiale d'un condensât.
Ces différents procédés de l'art antérieur ne sont pas adaptés aux applications qui requièrent des exigences fortes en sécurité. De plus ils ne garantissent pas le minimum de collision possible par exemple pour deux messages ou clefs distinctes qu'on puisse avoir une faible probabilité de produire la même signature ou dérivée. Ces procédés ont en général comme objectif la non- réversibilité .
La présente invention vise à pallier ces inconvénients .
A cet effet l'invention se propose de remplir au moins un des objectif suivants :
- d'offrir une plus grande confidentialité en chiffrement des données par des clefs plus sûres ;
- d'offrir une plus grande intégrité de l 'authentification et du contrôle d'accès par une identification des protagonistes, ou de leurs messages échangés, par des identifiants uniques avec le moins de redondance possible ;
- d'offrir la non-répudiation en se rapprochant de l'unicité des données ayant produit une signature ;
- de permettre le non-rejeu en réduisant les chances d'éventuelles redondances ;
- de diminuer le coût de mise en place d'un tel procédé ;
- d'utiliser le moins possible de ressource machine ; - d'offrir une plus grande robustesse pour limiter les collisions.
- d'offrir des clés sans avoir besoin de les recevoir via des médiums, pour des besoins de sécurité, et/ou d'économie de bande passante.
- et d'avoir une application industrielle dans les domaines de la sécurité des communications quelle que soit le support.
Pour ce faire, la présente invention est du type décrit ci-dessus et elle est remarquable, dans son acception la plus large, en ce qu'elle concerne un procédé de sécurisation de données dans un contexte comprenant plusieurs groupes distincts d'utilisateurs utilisant une fonction de hachage H commune à une pluralité de groupes et comportant une étape de calcul d'un condensât appliqué aux données à sécuriser,
caractérisé en que :
- ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
De préférence ladite, fonction injective g est une combinaison de fonctions.
Avantageusement, ladite fonction injective g est à sens unique pour renforcer la sécurité.
Avantageusement, ladite fonction injective g peut aussi ne pas être à sens unique dans certains cas.
Avantageusement, ladite fonction g est bijective. Avantageusement, ladite fonction injective g s'applique à plusieurs variables.
Avantageusement, ladite fonction injective g peut comprendre au moins une variable.
Ladite fonction injective g peut avoir un résultat de taille fixe. Ladite fonction injective g peut aussi avoir dans certains cas un résultat de taille variable.
Dans une variante il comporte en outre des étapes de génération de signatures de messages, associée à des variables spécifiques au groupe ou à une application. Un mode de réalisation de l'invention est qu'il comporte des étapes de génération de clés K1 à partir d'une fonction de haschage H commune à une pluralité de groupes d'utilisateurs, ladite fonction de haschage H étant appliquée à une fonction g injective de données.
Un autre mode de réalisation est qu'il comporte des étapes de génération d'identifiants ID1 à partir d'une fonction de haschage H commune à une pluralité de groupes d'utilisateurs, ladite fonction de haschage H étant appliquée à une fonction g injective de données .
Dans une variante il comporte des étapes de génération de signatures S1 à partir d'une fonction de haschage H commune à une pluralité de groupes d'utilisateurs, ladite fonction de haschage H étant appliquée à une fonction g injective de données.
Dans une autre variante il comporte en outre des étapes de dérivation des clés K1 à partir de la clé maître Km d'un groupe, associée à des variables spécifiques au groupe ou à l'application.
Dans un mode de réalisation il comporte en outre des étapes de dérivation d'identifiants ID1 à partir
d'un autre identifiant ID3 d'un groupe, associée à des variables spécifiques au groupe ou à l'application.
Dans un autre mode de réalisation il comporte en outre des étapes de dérivation de signatures S1 à partir d'une autre signature S3 d'un groupe, associée à des variables spécifiques au groupe ou à l'application.
Dans une variante ladite fonction injective, peut être définie comme suit, q_RoKDeF(1) (K(1), K(2),...,K(1)) = g_RθKDeF(1_1) (K(1),K(2),...,Kf1-1,) + [K(1) . g_RoKDeF(1_1) (K(1)max, K(2)max/ -/K(I-I)IHaXJ avec : i un entier naturel désignant le nombre de variable de la fonction g_RoKDeF(1)l avec i>l pour j entier et l≤j<i, JTrj;est un entier naturel variable tel que 0≤K(J)<K(J)max. Ces entiers peuvent représenter des clés, des signatures, des messages, des textes, etc, K(J)max est un entier.
K(1) est un entier qui peut ne pas avoir de limite max (de 0 à ∞ ) g_RoKDeF(1)(K)= K
Dans une variante de l'invention les données sécurisées sont échangées selon un protocole de communication numérique public.
Dans une autre variante, les données sécurisées sont utilisées selon un protocole de communication numérique public.
La présente invention se rapporte également à un système de communication sécurisé dans un contexte comprenant plusieurs groupes distincts d'utilisateurs, chaque utilisateur disposant d'un équipement comportant une mémoire pour l'enregistrement d'au moins une donnée (clé, identifiant, signature...), ladite donnée étant générée en utilisant une fonction de hachage H commune à une pluralité de groupes comportant une étape de calcul
d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de hachage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
La présente invention se rapporte également à un serveur sécurisé dans un contexte comprenant plusieurs groupes distincts d'utilisateurs, chaque utilisateur disposant d'un équipement d'accès audit serveur, ledit équipement comportant une mémoire pour l'enregistrement d'au moins une donnée (identifiant, mot de passe, clé, ...), ladite donnée étant générée en utilisant une fonction de hachage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de hachage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective. La présente invention se rapporte également à un équipement sécurisé pour l'accès à un serveur dans un contexte comprenant plusieurs groupes distincts d'utilisateurs, chaque utilisateur disposant d'un équipement d'accès audit serveur, ledit équipement comportant une mémoire pour l'enregistrement d'au moins une donnée (identifiant, mot de passe, clé, ...), ladite donnée étant générée en utilisant une fonction de haschage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
On comprendra mieux l'invention à l'aide de la description, faite ci-après à titre purement explicatif, d'un mode de réalisation de l'invention, en référence aux figures annexées : la figure 1 illustre un mode de réalisation e l'invention.
Dans un mode de réalisation illustré par la figure 1, l'invention peut s'inscrire dans une architecture de communication réseau fonctionnant sur le protocole TCP/IP. Ce réseau LAN (Local Area Network) repose dans son fonctionnement sur des technologies comme l'Ethernet et WLAN (Wireless Local Area Networks sous les normes IEEE 802.11). Ce dispositif comporte un parc d'ordinateurs composé de postes clients et de serveurs. Ces postes clients peuvent être des terminaux tels que des PDAs ou des ordinateurs portables reliés au réseau par une technologie sans fil comme le WIFI. Des données sont régulièrement échangées entre les différents acteurs de ce dispositif.
Dans une telle architecture la sécurité des transactions est un critère important. Une politique de sécurité permettant de disposer d'un service d'authentification de l'origine des données mais aussi d'intégrité des données échangées a été définie. Les échanges de données pourront alors s'effectuer en étant protégés d'acte de piratage ou de corruption volontaire lors de leur transmission.
L'invention propose d'offrir aux utilisateurs de ce réseau, de pouvoir échanger des messages signés numériquement. Garantissant ainsi un maximum de crédibilité de l'authenticité des messages échangés mais aussi de la signature produite grâce à la réduction de collision.
Pour cela chaque ordinateur du réseau possède une carte réseau ou une carte WIFI à la norme IEEE 802.11 leur permettant de communiquer les uns avec les autres. Au sein de chaque ordinateur est compris un processeur couplé à une mémoire divisée en plusieurs blocs. Dans un premier bloc de cette mémoire est stocké un code cryptographique pour le cryptage et le décryptage, et une clef symétrique partagée (on peut utiliser aussi une clef publique dans un autre mode de réalisation) permettant ainsi de générer ou vérifier des données comme un message signé. Le processeur est aussi associé aux différents moyens de communication que sont la carte réseau ou WIFI pour la gestion et le traitement des données (envoi/réception) . Le message envoyé sera un message signé c'est- à-dire qu'il comportera une signature numérique. Cette signature correspond à un code d'authentification du message. Le message signé correspond à des données qui sont ajoutées à une unité de données que constitue le message, ou à sa transformation cryptographique.
Avant de générer cette signature le message d'origine M sera d'abord chiffré. Plusieurs procédés de chiffrement sont possibles. Le chiffrement symétrique ou à clef secrète dans lequel les clefs de chiffrement et de déchiffrement sont identiques, et le chiffrement asymétrique ou à clef publique dans ce cas les clefs de chiffrement et de déchiffrement sont distincts et ne peuvent se déduire l'une de l'autre. Les plus connus peuvent être utilisé dans ce mode de réalisation, comme notamment RSA (développé par le Massachusetts Institute of Technology), Diffie-Hellman (et ses variantes, comme la norme de signature numérique du National Institute of Standards and Technology, El Gamal et les approches de courbes elliptiques), et Rabin-Williams.
Dans un mode de réalisation, un ordinateur A envoie un message chiffré et signé M" à un ordinateur B comme exposé dans l'équation ci-dessous à laquelle fait appel le code cryptographique stocké dans un bloc mémoire des ordinateurs A et B :
M":A→B: M'|| S pour M'= Pk(M) avec A→B qui décrit l'envoi par A de M" à B et Pk(M)le chiffrement symétrique de M, noté M' (en utilisant par exemple l'algorithme symétrique RSA) à partir de la clef secrète K partagée entre A et B. || décrit la concaténation de donnée. L'utilisateur de l'ordinateur A génère un message M, ce message devant être signé est alors fourni au processeur par l'application qui gère les messages. Le processeur à partir du code cryptographique et de la clé privée stockée dans un bloc de la mémoire va calculer le message chiffré M', puis celui signé M". S correspond à la signature numérique et est obtenu par l'équation suivante :
S=H (g_RoKDeF(2,(K,Pk(M))) avec H qui est une fonction de hachage (tel que précisé précédemment pouvant être SHA-256 par exemple), et g_RoKDeF(2) qui est une fonction injective. g_RoKDeF(2) est décrite ci-dessous : g_RθKDeF(2)(K,Pk(M))=(K+(Pk(M)xKmax)) avec Kmax e comme valeur maximale qu'une clé de chiffrement puisse avoir c'est à dire que Kmax correspond au nombre de combinaison possible qu'offre la clé privée K. Dans notre exemple, les clefs secrètes K sont sur n bits (fixé par la politique de sécurité) et par conséquent toutes les clés utilisées sont inférieures à Kmax=2n. Le
processeur de l'ordinateur A calcule le résultat de la fonction injective g_RoKDeF(2) appliquée au message chiffré M'=Pk(M) et à la clé K. Dans cette fonction injective deux couplets (Ml, Kl) et (M2,K2), avec Ml, M2 deux messages différents ou Kl, K2 deux clefs secrètes différentes, ont forcément deux résultats par la fonction injective g_RoKDeF différents. Donc sans collision. Ensuite le condensât du résultat obtenu est calculé à partir de la fonction de hachage H. Ce condensât sera alors la signature numérique S du message chiffré M'. Ainsi l'intégrité, 1 ' authentification et la non-répudiation de groupe sont assurés.
Une fois tous les calculs terminés le processeur stocke dans la mémoire volatile les données obtenues M" afin de pouvoir effectuer d'autres tâches et effectue un contrôle des interfaces réseaux par des commandes système d'entrée/sortie, récupère ces données de la mémoire et les envoie à l'ordinateur B par les interfaces réseaux via l'architecture Ethernet ou WLAN de l'installation.
A la réception, l'ordinateur B procède à 1 ' authentification du message reçu M' ainsi qu'à son intégrité. A partir du code cryptographique et de la clef secrète partagée par A et B présents dans la mémoire de l'ordinateur le processeur va calculer la signature numérique S' du message reçu M', c'est-à-dire M" sans sa signature numérique S. La signature S' obtenue sera ensuite comparée à la signature S. Si elles sont égales, le message M, calculé à partir de M' objet d'une opération de déchiffrement effectuée par le processeur sur la base du code de cryptographie stocké dans la mémoire non- volatile de l'ordinateur B, est authentifié et intègre. Par contre si elles sont différentes, le message reçu est corrompu .
Les signatures générées étant plus résistantes aux collisions les autres utilisateurs du réseau peuvent recevoir en toute confiance les messages signés provenant de l'utilisateur A. À partir de l'invention une signature numérique valide peut être produite avec une grande résistance aux collisions pour envoyer des messages et ceci quel que soit le type et la taille du message. On peut toutefois noter que la longueur de la signature dépend du degré de sécurité souhaité et du taux de cryptage possible.
Dans un autre mode de réalisation, l'invention peut s'inscrire dans une architecture réseau WAN (Wide Area network) comprenant plusieurs groupes Gl, G2 , G3. Les groupes sont répartis dans des lieux géographiquement différents et sont mobiles dans l'espace. Chacun des membres est pourvu d'un terminal mobile capable d'avoir un accès haut-débit au réseau Internet au travers de technologie offrant une connectivité IP, une transmission des données par paquets avec des débits suffisants pour effectuer des transferts de fichier. Ces technologies sont du type GPRS (General Packet Radio Service), UMTS (Universal Mobile Télécommunications System), ou PMR (Private Mobiel Radio) . Les terminaux mobiles peuvent être de manière non-exhaustif des ordinateurs portables, des PDAs, des ordinateurs de bords. Ils sont pourvus d'un modem leur permettant de se connecter de manière régulière à une base de données distantes hébergeant des ressources. Au sein de chacun des groupes un système de géolocalisation de type GPS couplé à un altimètre, pour fiabiliser la mesure de l'altitude, permet de positionner le groupe dans l'espace.
Cette connexion par voie hertzienne au réseau Internet pose des problèmes de sécurité quant aux
différents types d'attaques informatiques possibles. Une politique de sécurité a été établie permettant de sécuriser les échanges entre les différents membres et les ressources distantes, et communes à chaque groupe. Chacun des terminaux comporte une mémoire associée à un processeur. Ce processeur étant couplé à des interfaces réseau mais aussi à un lecteur de carte mémoire de donnée non-volatile.
L'accès aux ressources communes par chacun des membres nécessite une clé propre à chaque groupe. Les ressources de chacun des groupes sont hébergées sur un serveur central et sont accessibles et consultables selon un modèle de gestion de droits d'accès des utilisateurs ou membre de groupe différents qui peuvent s'y connecter. Cette base de donnée est connectée à Internet et est ainsi rendue accessible à chacun des membres du réseau.
Les membres des groupes G2 et G3 sont issus du groupe initial Gl. Ils sont tous titulaires d'une clef K stockée sur une carte mémoire de donnée non-volatile. De manière régulière le système de géolocalisation couplé à un altimètre envoi un relevé de localisation au serveur central hébergeant les ressources après que celui-ci ait été transmis aux membres du groupe auquel il correspond et que ceux—ci l'aient stocké dans un bloc de la mémoire non-volatile de leur terminal. Cette transmission est établie sur un canal sécurisé. Ce relevé correspond à des coordonnées sphérique (λ,μ,r) avec :
λ£[0,180] désignant la latitude, on note que la valeur maximale est ^^=180,001, μ£[0,360[ désignant la longitude, on note que la valeur maximale est μmax=360,
r=|op| désignant l'altitude.
Ces trois coordonnées sont prises au millième près, soit exactement trois chiffres après la virgule, λ et μ étant en décimale de degré et r en mètre. Pour tout point P correspondant à la position géographique d'un groupe, on obtient les nombres entiers suivants :
Λ = 1000 x λ Λ max = 1000 x λmax
M = 1000 x μ ^ Mmax = 1000 x μmax
^ = 1000 x r
Avec X103x et μmax comme valeur maximale respective de la latitude et de la longitude. Λ, M, A1113x,
M1113x étant les valeurs entières de ces différentes coordonnées . Le groupe Gl est caractérisé par ses coordonnées (A1,M1,R1) et tous ses membres détiennent la clé secrète K1. Cette clé sert à chiffrer les communications au sein de Gl et à accéder aux ressources de ce groupe. La clé permettant de se connecter aux ressources d'un groupe, est générée dynamiquement par chacun des terminaux.
Le processeur d'un terminal va, par des commandes système d'entrée/sortie envoyées au lecteur de carte à mémoire de donnée, récupérer la clef K stockée sur une carte mémoire de donnée non-volatile et ensuite calculer le nombre de combinaison Km3X possible de la clé K. Ce nombre de combinaison sera déterminé sur la base d'un calcul selon : Km3X=2N avec N correspondant au nombre de « bits » que comporte la clé secrète K partagée par
tous les groupes. Le résultat de Kmax va être stocké dans un bloc de la mémoire volatile de l'ordinateur
Dans un bloc de sa mémoire non-volatile le terminal comprend un code cryptographique lui permettant, après un calcul effectué par le processeur, d'obtenir la clé qui lui permettra d'accéder aux ressources à partir des coordonnées sphérique stockées dans un bloc de la mémoire non-volatile du terminal et de la clé K stocké sur la carte de mémoire de donnée non-volatile et de sa valeur maximale Kmav stocké dans un bloc de la mémoire volatile.
Pour déterminer la clé K1 le code cryptographique stocké dans un bloc de la mémoire non- volatile du terminal utilisera l'équation suivante :
K1=H(g_RoKDeF(4)(K,Λ1,M1,R1)) avec H qui est une fonction de hachage (tel que précisé précédemment pouvant être un algorithme MD5 ) , et g_RoKDeF(4) est une fonction injective quelconque définie par:
g_RoKDeF ( 4 , ( K , A1 , M1 , R1 ) =[[K+(Λ1 . K1113J]+[M1 . (K1113x+(A1113x . K1113x))]]
+[Ri • [[K1113x+(A1113x . Km3X)]+[Mmax . (K1113x+(A1113x . K1113x))]]
A partir de la clé obtenue les membres du groupe Gl pourront se connecter aux ressources qui leur sont réservées.
Pour des raisons opérationnelles, des membres de Gl se détachent de leur groupe et forment le groupe G2. Ce nouveau groupe est affecté à une nouvelle position caractérisée par les coordonnées sphériques (A2, M2, R2) qui
sont connues du serveur central hébergeant les ressources et de G2. La clé K2 utilisée au sein de G2 ainsi que pour transmettre des messages aux membres de G2 doit être calculée facilement par tous les membres. De plus, il est nécessaire que chaque membre puisse générer une clef qui soit unique et différente de celle des autres membres de son groupe et des autres groupes afin qu'il ne puisse avoir accès qu'aux ressources qui lui sont réservées. La clef K2 est également déduite de K de la même façon que pour K1 par l'équation suivante :
K2=H(g_RoKDeF(4)(K,Λ2,M2,R2))
II y va de même pour des membres se détachant de G2 pour former un groupe G3. Ce nouveau groupe est affecté à la position caractérisée par les coordonnées (A3, M3, R3).
L'invention est décrite dans ce qui précède à titre d'exemple. Il est entendu que l'homme du métier est à même de réaliser différentes variantes de 1 ' invention sans pour autant sortir du cadre du brevet.
Claims
REVENDICATIONS
1 - Procédé de sécurisation de données dans un contexte comprenant plusieurs groupes distincts d'utilisateurs utilisant une fonction de haschage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat d'une application, auxdites données, d'une fonction g injective.
2 - Procédé de sécurisation de données selon la revendication 1 caractérisé en ce que ladite fonction injective g est une combinaison de fonctions.
3 - Procédé de sécurisation de données selon la revendication 1 caractérisé en ce que ladite fonction injective g est bijective.
4 - Procédé de sécurisation de données selon la revendication 1 caractérisé en ce que ladite fonction injective g est à sens unique pour renforcer la sécurité.
5 - Procédé de sécurisation de données selon la revendication 1 caractérisé en ce que ladite fonction injective g s'applique à plusieurs variables.
6 - Procédé de sécurisation de données selon l'une quelconque des revendications 1 à 5 caractérisé en ce qu'il comporte des étapes de générations de clés K1 à partir d'une fonction de haschage H commune à une pluralité de groupes d'utilisateurs, ladite fonction de haschage H étant appliquée à une fonction g injective de données.
7 - Procédé de sécurisation de données selon l'une quelconque des revendications 1 à 5 caractérisée en ce qu'il comporte des étapes de générations d'identifiants ID1 à partir d'une fonction de haschage H commune à une pluralité de groupes d'utilisateurs, ladite fonction de haschage H étant appliquée à une fonction g injective de données.
8 - Procédé de sécurisation de données selon l'une quelconque des revendications 1 à 5 caractérisé en ce qu'il comporte en outre des étapes de dérivation des clés K1 à partir de la clé maître Km d'un groupe, associée à des variables spécifiques au groupe ou à l'application.
9 - Procédé de sécurisation de données selon l'une quelconque des revendications 1 à 5 caractérisé en ce qu'il comporte en outre des étapes de dérivation d'identifiants ID1 à partir d'un autre identifiant ID3 d'un groupe, associée à des variables spécifiques au groupe ou à l'application.
10 - Procédé de sécurisation de données selon l'une quelconque des revendications 1 à 5 caractérisé en ce qu'il comporte en outre des étapes de
génération de signatures de messages, associée à des variables spécifiques au groupe ou à une application.
11 - Procédé de sécurisation de données selon l'une quelconque des revendications 1 à 5 caractérisé en ce qu'il comporte en outre des étapes de dérivation ds signatures S1 à partir d'une autre signature S1 d'un groupe, associée à des variables spécifiques au groupe ou à une application.
12 - Procédé de sécurisation de données selon l'une quelconque des revendications précédentes caractérisé en ce que ladite fonction injective q_RθKOeF(1)(K(1), K(2),...,K(1))= g_RoKDeF(1_1)(K(1)f K(2),...,K(1_ 1))+[K(1).g_RoKDeF(1_1)(K(1)max, K(2)max,...,K(1_1)max]
avec : i un entier naturel désignant le nombre de variable de la fonction g_RoKDeF(1)l avec i>l pour j entier et l≤j<i, K(J)es\. un entier naturel variable tel que 0≤K(J)<K(J)max. Ces entiers peuvent représenter des clés, des signatures, des messages, des textes, etc, K(J)max est un entier.
K(1) est un entier qui peut ne pas avoir de limite max (de 0 à ∞ ) g_RθKDeF(1)(K)= K
13 - Procédé de sécurisation de données selon l'une au moins des revendications précédentes caractérisé en ce que les données sécurisées sont échangés selon un protocole de communication numérique public .
14 - Procédé de sécurisation de données selon l'une au moins des revendications précédentes caractérisé en ce que les données sécurisées sont utilisées selon un protocole de communication numérique public .
15 - Système de communication sécurisé dans un contexte comprenant plusieurs groupes distincts d'utilisateurs, chaque utilisateur disposant d'un équipement comportant une mémoire pour l'enregistrement d'au moins une donnée (clé, identifiant, signature...), ladite donnée étant générée en utilisant une fonction de haschage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
16 - Serveur sécurisé dans un contexte comprenant plusieurs groupes distincts d'utilisateurs, chaque utilisateur disposant d'un équipement d'accès audit serveur, ledit équipement comportant une mémoire pour l'enregistrement d'au moins une donnée (identifiant, mot de passe, clé, ... ), ladite donnée étant générée en utilisant une fonction de haschage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
17 - Equipement sécurisé pour l'accès à un serveur dans un contexte comprenant plusieurs groupes distincts d'utilisateurs, chaque utilisateur disposant d'un équipement d'accès audit serveur, ledit équipement comportant une mémoire pour l'enregistrement d'au moins une donnée (identifiant, mot de passe, clé, ... ), ladite donnée étant générée en utilisant une fonction de haschage H commune à une pluralité de groupes comportant une étape de calcul d'un condensât appliqué auxdites données à sécuriser, caractérisé en que ladite étape de calcul d'un condensât est réalisée à l'aide de ladite fonction de haschage H commune appliquée au résultat de l'application, auxdites données, d'une fonction g injective.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0651550 | 2006-05-02 | ||
FR0651550A FR2900776B1 (fr) | 2006-05-02 | 2006-05-02 | Procede de securisation de donnees |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2007125263A2 true WO2007125263A2 (fr) | 2007-11-08 |
WO2007125263A3 WO2007125263A3 (fr) | 2008-01-03 |
Family
ID=37775542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2007/051196 WO2007125263A2 (fr) | 2006-05-02 | 2007-04-30 | Procede de securisation de donnees |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2900776B1 (fr) |
WO (1) | WO2007125263A2 (fr) |
-
2006
- 2006-05-02 FR FR0651550A patent/FR2900776B1/fr active Active
-
2007
- 2007-04-30 WO PCT/FR2007/051196 patent/WO2007125263A2/fr active Application Filing
Non-Patent Citations (1)
Title |
---|
SZYDLO M; YIN Y L: "Collision-Resistant Usage of MD5 and SHA-1 Via Message Preprocessing" TOPICS IN CRYPTOLOGY-CT-RSA 2006. THE CRYPTOGRAPHERS' TRACK AT THE RAS CONFERENCE 2006. PROCEEDINGS (SPRINGER-VERLAG, LECTURE NOTES IN COMPUTER SCIENCE), vol. 3860, 17 février 2006 (2006-02-17), pages 99-114, XP019026797 San José, CA, USA ISBN: 3-540-31033-9 * |
Also Published As
Publication number | Publication date |
---|---|
WO2007125263A3 (fr) | 2008-01-03 |
FR2900776B1 (fr) | 2008-06-27 |
FR2900776A1 (fr) | 2007-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111201749A (zh) | 用于安全数据通信的方法和系统 | |
EP1427231A1 (fr) | Procédé d'établissement et de gestion d'un modèle de confiance entre une carte à puce et un terminal radio | |
FR2988942A1 (fr) | Methode et systeme d'etablissement d'une cle de session | |
EP2951944A1 (fr) | Procede de chiffrement homomorphe pour le ou exclusif et calcul securise d'une distance de hamming | |
CA3128869A1 (fr) | Methode cryptographique de verification des donnees | |
FR3044499A1 (fr) | Methode d'etablissement d'une communication securisee de bout en bout entre le terminal d'un utilisateur et un objet connecte | |
WO2016102833A1 (fr) | Entité électronique sécurisée, appareil électronique et procédé de vérification de l'intégrité de données mémorisées dans une telle entité électronique sécurisée | |
WO2018211026A1 (fr) | Procede de securisation d'une communication sans gestion d'etats | |
EP3840287A1 (fr) | Plateforme securisee, decentralisee, automatisee et multi-acteurs de gestion d'identites d objets au travers de l utilisation d'une technologie de chaine de blocs | |
EP3854021A1 (fr) | Méthode de traitement confidentiel de logs d'un système d'information | |
EP2186252A2 (fr) | Procede de distribution de cles cryptographiques dans un reseau de communication | |
EP3840324B1 (fr) | Liaison série asynchrone sécurisée | |
FR3095708A1 (fr) | Procédé de transmission securisée de données | |
WO2019228853A1 (fr) | Methode d'etablissement de cles pour le controle d'acces a un service ou une ressource | |
FR3057122A1 (fr) | Procede et dispositif de detection d'intrusions sur un reseau utilisant un algorithme de chiffrement homomorphe | |
EP4268109A1 (fr) | Procédé et dispositif de contrôle de l'accès à un service utilisant une chaîne de blocs | |
WO2007125263A2 (fr) | Procede de securisation de donnees | |
WO2021074527A1 (fr) | Procede de gestion d'une base de donnees de cles publiques, procede d'authentification de cles publiques, et dispositifs serveur et client mettant en oeuvre ces procedes | |
EP2149220A2 (fr) | Protection d'execution d'un calcul cryptographique | |
EP3777007A1 (fr) | Procédés, dispositifs et programmes d'ordinateur pour le chiffrement et le déchiffrement de données pour la transmission ou le stockage de données | |
EP3503500B1 (fr) | Procédé pour créer une signature électronique à distance au moyen du protocole fido | |
FR3144730A1 (fr) | Procédé de transmission sécurisée d'un élément secret entre un premier équipement de télécommunication et au moins un deuxième équipement de télécommunication | |
WO2021156078A1 (fr) | Procédé et dispositif d'évaluation de correspondance d'ensembles de données structurées protégées par le chiffrement | |
WO2024105111A1 (fr) | Procédé de distribution de clefs de session dans un réseau de télécommunication, procédés associés de traitement dans un client et un serveur, module client et serveurs associés | |
WO2022135952A1 (fr) | Procédé et dispositif de génération d'informations d'authentification pour une entité sécurisée et procédé et dispositif de contrôle d'identité associés |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07731967 Country of ref document: EP Kind code of ref document: A2 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 07731967 Country of ref document: EP Kind code of ref document: A2 |