FR2990317A1 - METHOD FOR SECURING ACCESS TO A DATA SERVER - Google Patents
METHOD FOR SECURING ACCESS TO A DATA SERVER Download PDFInfo
- Publication number
- FR2990317A1 FR2990317A1 FR1254041A FR1254041A FR2990317A1 FR 2990317 A1 FR2990317 A1 FR 2990317A1 FR 1254041 A FR1254041 A FR 1254041A FR 1254041 A FR1254041 A FR 1254041A FR 2990317 A1 FR2990317 A1 FR 2990317A1
- Authority
- FR
- France
- Prior art keywords
- server
- client
- encryption
- guest
- machine
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6272—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C3/00—Typewriters for ciphering or deciphering cryptographic text
- G09C3/04—Typewriters for ciphering or deciphering cryptographic text wherein the operative connections between the keys and the type-bars are automatically and continuously permuted, during operation, by a coding or key member
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
-
- 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/3226—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 a predetermined code, e.g. password, passphrase or PIN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
Procédé de sécurisation d'une connexion à un serveur de données, mettant en oeuvre une machine de chiffrement de type Enigma à chiffrement symétrique, comprenant une étape préalable d'inscription d'un client utilisateur auprès dudit serveur de données, caractérisé en ce que cette étape d'inscription comprend: une saisie par l'utilisateur de paramètres dits d'entrée, un traitement par la machine de chiffrement des paramètres d'entrée pour générer des paramètres temporaires, comprenant au moins une étape de traitement aléatoire et une génération de paramètres de sortie, une détermination de données de sécurisation comprenant une position initiale de rotors et d'un alphabet de chiffrement pour ladite machine de chiffrement, à partir desdits paramètres temporaires, lesdites données de sécurisation étant enregistrées par ledit serveur et transmis audit client pour y être enregistrés.A method of securing a connection to a data server, implementing a symmetric encryption Enigma type encryption machine, comprising a preliminary step of registering a user client with said data server, characterized in that this enrollment step comprises: a user entering so-called input parameters, a processing by the input parameter encrypting machine to generate temporary parameters, comprising at least one random processing step and a parameter generation a security data determination comprising an initial position of rotors and an encryption alphabet for said encryption machine, from said temporary parameters, said security data being recorded by said server and transmitted to said client to be there; recorded.
Description
- 1 - « Procédé de sécurisation d'accès à un serveur de données » Le contexte de l'invention est celui des procédés et dispositifs de cryptographie, en particulier ceux de sécurisation d'un accès à un serveur de données. Etat de la technique antérieure On connaît des procédés et dispositifs de sécurisation d'accès à un serveur de données, notamment de type asymétrique. L'algorithme RSA et une implémentation de cet algorithme telle que PGP sont des exemples classiques de tels procédés et dispositifs. Les procédés selon l'art antérieur ont principalement deux inconvénients : un besoin important de ressource en calcul et une certaine lenteur. La sécurité de tels procédés repose en partie sur le procédé d'inscription d'un client ou d'un invité, générant des nombres aléatoires, ce qui rend impossible de rejouer le procédé inscription. L'invention a pour but de pallier tout ou partie des inconvénients précédents en proposant un procédé et dispositif de sécurisation d'accès à un serveur de données, qui soient rapides et fournissent à un utilisateur les fonctionnalités d'authentification et de chiffrement. L'invention a également pour but de proposer un procédé et un système de sécurisation d'accès à un serveur de données, empêchant un pirate de rejouer une session d'inscription auprès du serveur de données. L'invention a également pour but de proposer un procédé et un système de sécurisation d'envoi de message par la messagerie électronique mettant en oeuvre un procédé de chiffrement selon l'invention. Exposé de l'invention On atteint au moins l'un des objectifs précités avec un procédé de sécurisation d'une connexion à un serveur de données, mettant en oeuvre une machine de chiffrement de type Enigma à chiffrement symétrique, - 2 - comprenant une étape préalable d'inscription d'un client utilisateur auprès dudit serveur de données, caractérisé en ce que cette étape d'inscription comprend: - une saisie par l'utilisateur de paramètres dits d'entrée, - un traitement par la machine de chiffrement des paramètres d'entrée pour générer des paramètres temporaires, comprenant au moins une étape de traitement aléatoire et une génération de paramètres de sortie, - une détermination de données de sécurisation comprenant une position initiale de rotors et d'un alphabet de chiffrement pour ladite machine de chiffrement, à partir desdits paramètres temporaires, lesdites données de sécurisation étant enregistrées par ledit serveur et transmis audit client pour y être enregistrés. Avantageusement le traitement des paramètres d'entrée peut comprendre : - une étape de détermination d'une configuration d'une machine de type Enigma, - une étape d'utilisation de la configuration pour générer les données de sécurisation à partir des identifiants et paramètres. Avantageusement, la connexion du client au serveur de données peut être conditionnée par une étape d'authentification comprenant: - une étape de saisie et/ou d'envoi au serveur des données de sécurisation, - une étape de vérification par le serveur des données de sécurisation reçues, - une autorisation d'accès au serveur de données dans le cas où l'étape de vérification est concluante. Dans une version particulière, le procédé selon l'invention peut en outre comprendre une étape pour télécharger depuis le serveur sur le client un logiciel implémentant la machine de chiffrement. Avantageusement, le procédé selon l'invention peut entre comprendre une étape de création d'un fichier de conversion de code sur le serveur. - 3 - Dans une version particulière, le procédé selon l'invention peut en outre comprendre une étape pour inscrire un utilisateur invité par un client déjà inscrit. Avantageusement, le procédé selon l'invention peut être mis en oeuvre pour une dépose par un client de fichiers sur le serveur opéré en tant que coffre-fort. Dans une version particulière, le procédé selon l'invention peut être mis en oeuvre pour une communication entre un client et un invité, par utilisation conjointe du serveur, d'une messagerie électronique et de la machine de chiffrement. Avantageusement, le procédé selon l'invention peut être mis en oeuvre dans une machine à état d'une communication entre un client et un invité. Avantageusement, le procédé selon l'invention peut comprendre une mise en place sur le serveur d'un jeton indiquant l'état de la communication entre le client et l'invité, le jeton n'existant qu'une fois la communication initiée. Description détaillée de l'invention D'autres avantages et particularités de l'invention apparaîtront à la lecture de la description détaillée de mises en oeuvre et d'un mode de réalisation nullement limitatif, et des dessins annexés suivants : - la figure 1 illustre la mise en oeuvre classique d'une machine Enigma, - la figure 2 est un schéma des entrées et sorties d'un procédé de détermination d'un alphabet de chiffrement et d'une position initiale des rotors selon l'invention, - la figure 3 précise un procédé de détermination d'un alphabet de chiffrement selon l'invention, et - la figure 4 précise un procédé de détermination d'une position initiale des rotors selon l'invention. Sur les figures un élément apparaissant sur plusieurs figures conserve la même référence. - 4 - La figure 1 illustre l'utilisation classique d'une machine Enigma 100. L'utilisation d'une machine telle machine 100 nécessite de l'initialiser selon une configuration précise. Cette configuration est ici entièrement déterminée par un alphabet de chiffrement 102 et la position initiale de rotors 104. Une fois cette configuration déterminée, un texte à chiffrer 106 peut effectivement être chiffré par la machine 100 pour générer un texte chiffré 108. Le déchiffrement du texte chiffré s'effectue en repositionnant la machine Enigma selon la configuration précise. Le déchiffrement du texte chiffré 108 est obtenu par chiffrement du texte chiffré 108. Le déchiffrement du texte chiffré 108 conduit au texte à chiffrer 106. En effet, la machine Enigma est un procédé de chiffrement symétrique. Une machine Enigma à 5 rotors de 26 positions et selon un alphabet de 78 caractères, le nombre de configurations possible est de 265*78!, soit plus de 1,34 * 10122 configurations. Le chiffrement Enigma est donc sûr lorsque la transmission de la configuration choisie pour le chiffrement est sûr. Dans l'exemple de réalisation décrit ci-après, il est mis en oeuvre un procédé d'utilisation informatique d'une machine Enigma à cinq rotors et 78 caractères. Il est bien compris que ces choix ne sont donnés qu'a titre d'exemple. Dans la suite de cet exposé, une clé désigne un ensemble de cinq caractères choisis dans l'ensemble A-Z. A une clé sont associés 5 nombres qui la définissent, tous entre 0 et 25 et réciproquement, selon la correspondance suivante : le premier nombre correspond à la position dans l'alphabet du premier caractère. A cinq nombres tous entre 0 et 25 est également associée une et une seule clé. A titre d'exemple, la clé associée aux nombres (6,13,2,8,0) est GNCIA et réciproquement. Selon l'invention, un chiffrement, dit simple, d'un texte par une clé consiste en un chiffrement obtenu par décalage de chaque lettre du texte d'un nombre de lettres égal au double de la somme des cinq nombres associés à la clé, modulo 26. A titre d'exemple, le résultat du chiffrement par la clé GNCIA du texte SECRET est YKIXKZ. En effet, - 5 - les 5 nombres associés à la clé GNCIA sont (6,13,2,8,0), le double de la somme des nombres associés à la clé, modulo 26, est 6, le décalage de la lettre S(18) a pour résultat la lettre Y(24) et ainsi de suite pour les lettres E(4),C(2),R(17),E(4),T(19) qui sont chiffrées par les lettres K(10),I(8),X(23),K(10),Z(25). Procédé de détermination d'un alphabet de chiffrement 102 et procédé de détermination d'une position initiale des rotors 104. Procédé de détermination d'un alphabet de chiffrement 102 La figure 2 illustre l'utilisation d'un procédé selon l'invention pour déterminer un tel alphabet de chiffrement 102 parmi les 78! possibles ainsi qu'une position des rotors parmi les 265 possibles. Ce procédé nécessite le choix par un utilisateur d'une clé 202, ainsi que de trois nombres ni, n2 et n3, respectivement référencés 204, 206 et 208. Par ailleurs, le procédé nécessite également l'utilisation d'un fichier 210 appelé an, qui sera décrit par la suite. De manière plus précise, ce procédé selon l'invention peut être décomposé en deux sous-procédés 212 et 214. Le sous-procédé 212 a pour entrées les nombres n2 et n3 ainsi que le fichier An et pour sortie l'alphabet de chiffrement 102. Le sous-procédé 214 a pour entrées la clé, le nombre n1 et la valeur ValSer et pour sortie la position des rotors 104. La figure 3 illustre le sous-procédé 212 de détermination de l'alphabet de chiffrement 102 à partir des nombres n2, n3 ainsi que du fichier An. Le nombre n2 saisi par l'utilisateur est transformé lors de l'étape A(0,77), 302, en un nombre aléatoire 304, dit NbChoix, entre 0 et 77. Ensuite, une étape 306, détermine l'un des 78 alphabets pré-générés à partir de NbChoix. Ces alphabets sont générés par décalages circulaires successifs. On obtient donc le choix d'un premier alphabet Cl temporaire. Le troisième nombre n3 est transformé lors de l'étape A(9, 39), 308, en un nombre aléatoire 310, dit Chgt, entre 9 et 39. Une étape T5 est ensuite - 6 - réalisée. Elle a pour entrée le premier alphabet temporaire cl ainsi que le nombre Chgt. Cette étape T5 a pour sortie un second alphabet C2 temporaire. Dans une première partie de l'étape T5, le premier bloc de Chgt caractères du premier alphabet temporaire est permuté avec le dernier bloc de Chgt caractères du premier alphabet temporaire. S'il existe, le second bloc de Chgt caractères du premier alphabet temporaire est ensuite permuté avec l'avant dernier bloc de Chgt caractères du second alphabet temporaire. La même opération est répétée avec le troisième bloc de Chgt caractères s'il existe est permuté avec l'antépénultième bloc de Chgt, et on procède ainsi tant que cela est possible. Dans la seconde partie de l'étape T5, une rotation de t caractères est appliquée sur l'alphabet résultant du traitement qui vient d'être décrit. La valeur t est égale à la valeur NbChoix, élevée à la puissance 4, module 78. L'alphabet résultant de ce dernier traitement est le second alphabet temporaire C2. Une étape T6, 316, est ensuite réalisée. Elle a pour entrée le second alphabet temporaire C2, 316, ainsi qu'un fichier An, 210. Cette étape T6 a pour sortie l'alphabet de chiffrement. Le fichier An est un fichier de connexions. Ce fichier contient 10 lignes. Chaque ligne est un tableau d'entiers de 0 à 77. Ce tableau comprend 78 entiers. Il indique les permutations à effectuer sur le second alphabet temporaire C2 pour obtenir l'alphabet de chiffrement. Chaque ligne correspond au dernier chiffre de l'année d'inscription du client. Ainsi, la troisième ligne est utilisée pour l'année 2012. La connaissance directe des valeurs NbChoix et Chgt ainsi que du fichier An permet donc la détermination précise d'un alphabet de chiffrement. Procédé de détermination d'une position initiale des rotors 104 La figure 4 illustre le sous-procédé 214 de détermination de la position initiale des rotors 104 à partir d'une clé 202, et du nombre n1 204. La clé 202 est chiffrée lors de l'étape 402 par le chiffrement simple de la clé 202 par elle même. A titre d'exemple, le résultat de l'étape 402 pour une clé 202 est UBQWO est une clé chiffrée 404 égale à KRGME. En effet, le chiffrement par la clé 202 consiste en un décalage de 16 crans modulo 26. - 7 - La clé chiffrée 404 est ensuite associée lors de l'étape Ti, 406 aux cinq nombres 408 qui la définissent, ici notés (a,b,c,d,e). A titre d'exemple, lorsque la clé chiffrée 404 est KRGME, la transformation Ti a pour résultat les nombres (a=10,b=17,c=6,d=12, e=4). Le premier nombre n1 saisi par l'utilisateur est transformé lors de l'étape A(1,16), 410, en un nombre aléatoire x, 412, entre 1 et 16. Le nombre x est utilisé lors de l'étape T2, 414, pour générer cinq nouveaux nombres. Le résultat de la transformation est obtenu à l'étape 416 et est un nombre appelé y. La transformation T2 est effectuée de la manière suivante : le nombre x est additionnée au nombre a, modulo 26, le nombre x+1 est additionné au nombre b, modulo 26, le nombre x+2 est additionné au nombre c, modulo 26, le nombre x+3 est additionné au nombre d, modulo 26, et le nombre x+4 est additionné au nombre e, modulo 26. A titre d'exemple, lorsque x=6, cette seconde transformation a pour résultat 416 les cinq nombres y (16,24,14,21,14). Ces nombres définissent la position initiale 104 des rotors de la machine Enigma. Le rotor de droite est placé en 14ème position, à sa gauche en 21ème position, celui à la gauche du précédent en 14ème position, celui à la gauche du précédent en 24ème position, et le plus à gauche en 16ème position. De plus, lors de l'étape T, 418, le nombre x est transformé en un ensemble de 8 caractères, dit aléa, obtenu à l'étape 420. Cette transformation met en oeuvre un tableau de correspondance entre le nombre x et l'aléa. A un nombre x correspond un et un seul aléa. Par exemple, au nombre x=6, un tableau de correspondance fait correspondre les caractères SIXUNSIX. L'aléa est chiffré selon le procédé suivant : . les lettres SIXUNSIX correspondent aux nombre 18 8 23 20 13 18 8 23 ; . le chiffrement par la clé 202 UBQWO de l'alea consiste, ainsi qu'il a été vu plus haut, en un décalage de 16 crans modulo 26, ce qui correspond aux nombres 8 24 13 10 3 8 24 13; - 8 - . l'aléa chiffré est donc : IYNKDIYN. En outre, la figure 4 illustre une étape A(0, 99), 422, au cours de laquelle un nombre aléatoire ValSer, 424, est généré entre 0 et 99. La clé 202 et la valeur ValSer 424 sont utilisées lors de l'étape T3, 426, pour générer un code, 428 selon le procédé qui suit : calcul d'un nombre z correspondant à la clé 202 par détermination des cinq nombres (m0,m1,m2,m3,m4) associés à la clé 202 puis z=m0*26°+mi*261+m2*262+m3*263+m4*264. A titre d'exemple et lorsque la clé est UBQWO, les cinq nombres associés à la clé UBQWO sont (20,1,16,22,14) et: z=6*26^0+13*26^1+2*26^2+8*26^3+0*26^4 = 6795198 on détermine une valeur dite Pdf, dépendante de z, selon l'algorithme suivant : indice=4 ; Si (z>10^indice) TantQue(z>10^indice): Indice++ ; Fin TantQue indice :=indice-1; Pdf := 10^indice ; Fin Si Sinon TantQue(z<10^indice) Indice--; Fin TantQue Pdf := 10^indice ; Fin Sinon La valeur indice est ici: indice=6 La valeur Pdf est ici: Pdf=1000000 on applique l'algorithme suivant au nombre z Si(2*1016<Z<3*1016) pdf*=2 ; Si (z-pdf<=pdf) ALORS z :=d40 (indice-i)-ValSer; Fin Si Sinon z :=z-pdf-ValSer; Fin Sinon - 9 - Dans l'exemple donné, pour la clé 202 égale à UBQWO et une valeur 242, ValSer, égale à 7, le code 428 obtenu est : 5795191. Création d'un fichier de conversion de code sur le serveur Il est créé sur le serveur un fichier comportant 26^5 lignes renseigné selon un procédé maintenant décrit : Pour tous 5-uplet (a,b,c,d,e) où a,b,c,d,e sont des nombre compris entre 0 et 25, calculer p=a*26^0+b*26^1+c*26^2+d*26^3+e*26^4 et inscrire dans la p+1 ème ligne en colonne les nombres a,b,c,d,e. Ainsi, connaissant le nombre 6795198, la lecture de la 6795199 ème ligne conduit à la connaissance du le 5-uplet (20,1,16,22,14). Bien entendu, ces n-uplets peuvent être enregistrés dans une base de donnée parcourue à l'aide d'un arbre B+, plutôt qu'écrits dans un fichier. Dans la suite de l'exposé, il sera fait référence à un fichier, dit fichier de conversion. Procédé d'inscription et procédé d'authentification d'un client ou d'un invité sur un terminal serveur de données Il va maintenant être exposé un procédé d'inscription et de d'authentification de l'accès à des données situées sur un serveur. Ce procédé d'inscription et d'authentification d'un client ou d'un utilisateur selon l'invention met en oeuvre un procédé précédemment décrit pour déterminer un alphabet de chiffrement 102 et un procédé selon l'invention pour déterminer une position initiale des rotors 104. Le procédé d'inscription d'un utilisateur selon l'invention distingue un utilisateur, dit client, d'un utilisateur, dit invité, qui est un utilisateur invité par au moins un client. Selon l'invention, toute personne peut devenir un utilisateur client. Pour devenir un utilisateur invité d'un utilisateur client selon l'invention, il faut que l'utilisateur client invite la personne souhaitant être l'utilisateur invité. Il en résulte que les procédures d'inscription d'un utilisateur client et d'un utilisateur invité sont différentes. - 10 - Procédé d'inscription et d'authentification d'un client sur un serveur de données Procédé d'inscription d'un client Lorsqu'un utilisateur souhaite s'inscrire auprès du serveur, un formulaire est affiché à l'écran du terminal utilisateur et il est demandé à l'utilisateur de saisir une adresse email ainsi qu'un mot de passe. Il est aussi demandé à l'utilisateur de saisir une suite de cinq caractères, dite Clé, constituée de lettres choisies dans l'ensemble A-Z. Il est aussi demandé à l'utilisateur de choisir trois nombres n1, n2 et n3 entre 1 et 10. Le serveur met en oeuvre un procédé de détermination d'un alphabet de chiffrement 102 selon l'invention. Les valeurs n2, 206, et n3, 208, du sous-processus de détermination 212 d'un alphabet de chiffrement 102 selon l'invention sont les nombres n2 et n3 saisis par l'utilisateur. Le fichier An 210 est un fichier de connexions préétablies uniquement connu du terminal serveur. Ainsi, le déchiffrement est impossible sans la connaissance de ce fichier, ce qui de fait, authentifie le terminal serveur lorsque le déchiffrement est correct. Des valeurs NbChoix 304 et Chgt 310 sont générées par le serveur lors de la mise en oeuvre de ce sous-processus 212 de détermination d'un alphabet de chiffrement. Le serveur met en oeuvre un procédé de détermination de la position initiale des rotors 104 selon l'invention. La valeur n1, 204, du sous-processus de détermination 214 d'une position initiale des rotors 104 selon l'invention est le nombre n1 saisi par l'utilisateur. La Clé 202 de ce sous-processus 214 est la Clé saisie par l'utilisateur. La valeur ValSer 424 est générée lors de l'étape 422 par le serveur. Cette valeur ValSer peut aussi être lue depuis une carte d'acquisition reliée au terminal serveur. Une nouvelle valeur ValSer est générée à chaque inscription. Les valeurs alea 420 et code 428 sont générées par le serveur lors de la mise en oeuvre de ce sous-processus 214 de détermination d'une position initiale des rotors. Une fois l'alphabet de cryptage définitif et la position initiale des rotors déterminés, la machine Enigma 100 est positionnée dans une configuration de chiffrement. Dans cette configuration de chiffrement, le terminal serveur chiffre l'email de l'utilisateur. Par ailleurs, des informations relatives au nouveau client sont enregistrées dans une table client d'une base de données au niveau du serveur. Ces informations comprennent un identifiant du client, clé primaire de la table client de la base de données. Les autres informations enregistrées relatives au nouveau client sont les valeurs ValSer, l'email (non chiffré) ainsi que l'année d'inscription du client. Le client est informé des valeurs du code correspondant à la clé, soit 428, aléa chiffré, mot de passe et identifiant du client. Le terminal serveur enregistre également pour chaque client trois fichiers nommés JeuCle, Config, Phrase. Le fichier JeuCle comprend la valeur ValSer. Le fichier Config contient les valeurs Chgt, NbChoix, et mot de passe (non chiffré). Le fichier Phrase contient le résultat du chiffrement de l'email Trois petits fichiers (« cookies ») sont également déposés sur le terminal du client. Authentification d'un client Une fois inscrit, un utilisateur client connaît son code, aléa chiffré, mot de passe et identifiant. De plus, les trois fichiers (« cookies ») décrits plus haut sont enregistrés dans son terminal. Lorsqu'un utilisateur souhaite se connecter au terminal serveur, il remplit un formulaire d'authentification dans lequel il saisit son code, alea chiffré, mot de passe, et son identifiant. Ensuite, le serveur récupère les trois cookies déposés sur le terminal client pour retrouver les trois fichiers JeuCle, Config, et Phrase, relatifs au client, qu'il a enregistrés sur le terminal serveur lors de l'inscription du Client. Une première comparaison est effectuée entre le mot de passe contenu dans le fichier Config et celui saisi dans le formulaire. Détermination de l'alphabet de chiffrement 102 - 12 - Les valeurs Chgt et NbChoix provenant du fichier Config sont utilisés par le serveur pour déterminer l'alphabet Cl 306, puis l'alphabet C2 314. La connaissance par le serveur du fichier An ainsi que de la date d'inscription du client enregistrée dans la table client et associée à l'identifiant du client, permet au serveur de mettre en oeuvre l'étape T6 316 l'alphabet définitif. L'alphabet définitif ne peut donc être valablement déterminé que par le serveur sur lequel le client s'est inscrit. Détermination de la position initiale des rotors 104 La connaissance de la valeur ValSer présente dans le fichier JeuCle ainsi que celle du code saisi dans le formulaire conduit à la détermination de la clé 202. Le procédé suivant est utilisé : - ajout du code et de la valeur ValSer. Lorsque le code saisit par le client dans le formulaire est 5795191 et que la valeur ValSer est 7: - le code saisi additionné à la valeur ValSer pour obtenir une valeur temporaire : 1=5795198 - on détermine une valeur dite Pdf2, dépendante de 1, selon l'algorithme suivant : indice2=4 ; Si (I>10Aindice2) TantQue(I>10Aindice2): Indice2++ ; Fin TantQue Indice2 :=indice2-1; Pdf2 := 10^indice2 ; Fin Si Sinon TantQue(1<10^indice2) Indice2--; Fin TantQue Pdf := 10^indice2 ; Fin Sinon La valeur indice2 est ici: indice=6 La valeur Pdf est ici: Pdf2=1000000 - Si(2*1016<l<3*1016) pdf*=2 ; - 13 - - si 1-pdf2<=pdf2 alors 1 = 1+10'nd1ce2-1 sinon 1=l+pdf2. Ici la condition 1=pdf2<=pdf2 n'est pas vérifiée et 1=6795198 On utilise ensuite le fichier de conversion de code préalablement construit. Ce fichier associe directement à la ligne 6795199 les cinq nombres (20, 1,16 ,22 ,14) associés aux caractères UBQWO. Le serveur a ainsi connaissance de la clé 202. Connaissant l'aléa chiffré saisi par l'utilisateur, par exemple IYNKDIYN et la clé 202, par exemple UBQWO, le serveur peut déchiffrer l'aléa chiffré pour obtenir l'aléa 420. Il a été vu plus haut que le chiffrement par la clé UBQWO consistait en un décalage de 6 lettres. Ainsi le déchiffrement de l'aléa chiffré IYNKDIYN a pour résultat SIXUNSIX. La connaissance de l'aléa 420 et du fichier permettant d'inverser l'étape T 418 décrite plus haut conduit le serveur à la connaissance de la valeur 412 x. A titre d'exemple, la valeur x associé à l'aléa SIXUNSIX est 6. Connaissant la clé 202 et la valeur x 412, le serveur peut mettre en oeuvre les étapes 402, 406 et 414 et ainsi trouver la valeur 416 y. La valeur 416 y définit la position initiale 104 des rotors comme décrit précédemment. Déchiffrement et authentification Le terminal serveur déchiffre alors le contenu du fichier Phrase et compare le résultat de ce déchiffrement à Verne correspondant dans la table client à l'identifiant identifiant. Lorsque cette comparaison est concluante, l'utilisateur est authentifié. Procédé d'inscription et d'authentification d'un invité sur un serveur de données Procédé d'inscription d'un invité Pour permettre à un invité de s'inscrire auprès du terminal serveur, un client auparavant inscrit s'authentifie auprès du terminal serveur. Une fois authentifié, le client crée un invité en saisissant dans un formulaire son adresse email et le nom de l'invité. Le pseudonyme est alors la concaténation du nom de l'invité avec l'identifiant du client. Le client transmet à son invité son pseudonyme par un autre canal de communication que la messagerie internet. - 14 - Pour s'inscrire auprès du serveur, l'invité procédera aux étapes décrites dans la partie d'inscription d'un client à l'exception d'une information : l'information de mot de passe est remplacée par celle de pseudonyme attribué par le client. Pour pouvoir créer un compte invité pirate, il faut donc connaître l'adresse email ainsi que le pseudonyme saisis par le client. Authentification d'un invité L'invité procède de la même manière qu'un client pour s'authentifier auprès du terminal serveur à l'exception du mot de passe qui est remplacé par son pseudonyme. Ainsi, la sécurité du système repose en partie sur le procédé d'inscription d'un client ou d'un invité, générant des nombres aléatoires, ce qui rend impossible de rejouer le procédé inscription. Par ailleurs, la dépose de petits fichiers (« cookies ») sur le terminal client ou invité rend vaine l'interception des données générées par le serveur et envoyées au client car il n'est pas possible de s'authentifier sans que ces fichiers soient sur le terminal client ou invité. Enfin, l'utilisation du fichier An, seul connu du serveur après l'inscription, assure l'authentification du terminal serveur lorsque le client s'authentifie auprès du terminal serveur. Fonctionnalités de la mise en oeuvre du serveur selon l'invention Accès à un coffre-fort. Une fois authentifié, un client peut enregistrer sur le serveur des fichiers. Ces fichiers ne seront consultables que par lui-même et ses invités. Le client peut également supprimer ses fichiers. L'invention permet ainsi d'assurer l'authentification du client au coffre-fort qu'est le serveur et qui contient les fichiers du client. Communication sécurisée d'un client avec un invité Par ailleurs, l'invention permet également à un client de communiquer avec un invité de manière sécurisée. - 15 - La communication d'un client avec un invité s'effectue à travers l'utilisation conjointe du serveur selon l'invention et de la messagerie électronique et d'une machine à chiffrer selon l'invention. Description d'une machine à chiffrer selon l'invention Une machine à chiffrer selon l'invention est un logiciel fourni avec sa documentation et un fichier de conversion de code tel que définit plus haut. Le logiciel de la machine à chiffrer selon l'invention permet le chiffrement et le déchiffrement de message au moyen d'une machine Enigma à 5 rotors et utilisant un alphabet de 78 caractères. Ainsi qu'il a été vu plus haut, la détermination de la position initiale des rotors pour chaque texte à chiffrer dépend : - de la clé 202 et du nombre n1 204, choisis par un utilisateur à chaque chiffrement, - d'une valeur ValSer 424 propre à l'utilisateur qui est déterminée lors du processus d'inscription de l'utilisateur et qui demeure la même pour tous chiffrements ultérieurs. La détermination de l'alphabet de chiffrement pour chaque texte dépend : - des valeurs n2 et n3, choisies par l'utilisateur à chaque chiffrement, - d'un fichier An 210 propre à l'utilisateur et qui demeure le même pour tous chiffrements ultérieurs. Ainsi qu'il a été vu plus haut, la détermination de la position initiale des rotors utilisée pour le chiffrement du texte résulte de : - la connaissance du Code 428 et de l'aléa chiffré présents dans le fichier Config et généré à chaque chiffrement, et - la connaissance de la valeur ValSer propre à la personne ayant chiffré le texte et qui demeure la même pour tous chiffrements ultérieurs ainsi que du fichier de conversion de code. Ainsi qu'il a été vu plus haut, la détermination de l'alphabet utilisé pour le chiffrement du texte résulte de : - 16 - - la connaissance des Chgt et NbChoix déterminées lors du chiffrement, - ainsi que de la connaissance du fichier An. Machine à état d'une communication entre un client et un invité On appelle client la personne qui initie la communication. Pour chaque couple de client/invité, il est mis en place sur le serveur un jeton indiquant l'état de la communication entre le client et l'invité. Ce jeton n'existe qu'une fois la communication initiée. Lorsqu'une communication a été initiée, ce jeton peut alors prendre trois valeurs : j=0, j=1 et j=2. La figure 5a et 5b illustrent les valeurs possibles du jeton et leur signification : - lorsque le jeton est j=0, il s'agit d'une fin de communication, - lorsque le jeton est j=1, l'invité a reçu un message du client, et - lorsque le jeton est j=2, le client a reçu un message de l'invité en réponse à son message préalablement envoyé. La communication entre client et invité est concurrente. Pour ce faire, il existe deux machines à état: une pour le client et une pour l'invité. Ces deux machines indiquent l'état de la communication entre le client et l'invité. La figure 5a illustre les changements d'état possibles (cercles El et E2) de la machine à état du client et leurs significations pour le client. L'état EO représente le moment auquel le client souhaite initier une communication. Un test, représenté par le losange Test sur la figure, de la valeur du jeton est alors réalisé : - lorsque la valeur du jeton est j=0, la machine à état du client passe à l'état El, - lorsque la valeur du jeton est j=1, la machine à état du client revient à l'état EO, et - lorsque la valeur du jeton est j=2, la machine à état de communication du client passe à l'état E2. - 17 - A l'état El, le client peut envoyer un message à destination de son invité : s'il ne l'a pas déjà téléchargée, le client s'authentifie auprès du serveur, télécharge une machine à chiffrer selon l'invention, ainsi que ses fichiers An et ValSer, le client chiffre un message en utilisant sa machine de chiffrement selon l'invention, s'authentifie le cas échéant à nouveau sur le serveur et met à disposition de l'invité le fichier Config généré par le chiffrement de son message, le jeton est alors positionné à 1 et la machine à état du client passe à l'état EO. le client envoie par messagerie électronique le résultat du chiffrement de son message qui est généré par la machine de chiffrement selon l'invention ainsi que son code, son mot de passe et son alea. A l'état E2, le client a reçu une réponse de l'invité suite à l'envoi de son premier message. le client s'authentifie auprès du serveur et télécharge le fichier Config mis à disposition par l'invité après un chiffrement de message de réponse généré par l'invité. Le jeton est alors positionné à j=0 et la machine à état du client passe à l'état EO. le client utilise la machine de chiffrement selon l'invention pour déchiffrer le message chiffré reçu de l'invité par messagerie électronique. La figure 5a illustre les changements d'état possibles (cercles El, E2 et E3) de la machine à état de l'invité et leurs significations pour l'invité. L'état EO représente le moment auquel l'invité consulte sa boite aux lettres sur le serveur. Un test, représenté par le losange Test sur la figure, de la valeur du jeton est alors réalisé : lorsque la valeur du jeton est j=1, la machine à état de l'invité passe à l'état El, lorsque la valeur du jeton est j=0, l'invité a reçu un message de la part du client. Un test, représenté par le losange A sur la figure est alors réalisé, et - 18 - - lorsque la valeur du jeton est j=2, la machine à état de communication de l'invité revient à l'état EO. Lors du test A, l'invité choisit de répondre ou non au message du client qu'il a reçu. S'il choisit de ne pas répondre, la machine à état de communication de l'invité revient à l'état EO. S'il choisit de répondre, la machine à état de communication de l'invité passe à l'état E2. A l'état El, l'invité a reçu un message du client : s'il ne l'a pas déjà téléchargée, l'invité s'authentifie auprès du serveur, télécharge une machine à chiffrer selon l'invention, ainsi que le fichier ValSer et An mis à disposition par le client, l'invité déchiffre le message en utilisant également les codes et aléa chiffrés fournis par le client et reçus par messagerie électronique en utilisant sa machine de chiffrement selon l'invention, s'authentifie le cas échéant à nouveau sur le serveur et télécharge le fichier Config mis à disposition par le client. Le jeton est alors positionné à O. La machine à état de l'invité passe à l'état EO. le client envoie par messagerie électronique le résultat du chiffrement de son message qui est généré par la machine de chiffrement selon l'invention ainsi que son code, son mot de passe et son alea. A l'état E2, l'invité envoie un message en réponse à celui reçu du client l'invité chiffre un message en utilisant la machine de chiffrement selon l'invention, s'authentifie le cas échéant à nouveau sur le serveur et met à disposition du client le fichier Config généré par le chiffrement de son message, le jeton est alors positionné à 2 et la machine à état de l'invité passe à l'état EO. l'invité envoie par messagerie électronique le résultat du chiffrement de son message qui est généré par la machine de chiffrement selon l'invention ainsi que son code, son mot de passe et son alea. Ainsi, le procédé selon l'invention réalise à la fois l'authentification et le chiffrement de données. Par ailleurs, la dépose de petits fichiers (« cookies ») sur le terminal client ou invité rend vaine l'interception des données générées par le serveur et envoyées au client car il n'est pas possible de s'authentifier sans que ces fichiers soient sur le terminal client - 19 - ou invité. Il n'est donc pas possible par la suite d'utiliser les fonctions de coffre-fort ou de télécharger une machine de chiffrement selon l'invention par la suite. Enfin, l'utilisation du fichier An, seul connu du serveur après l'inscription, assure l'authentification du terminal serveur lorsque le client s'authentifie auprès du terminal serveur. Bien sûr, l'invention n'est pas limitée aux exemples qui viennent d'être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l'invention. The context of the invention is that of cryptographic methods and devices, in particular those of securing access to a data server. STATE OF THE PRIOR ART There are known methods and devices for securing access to a data server, in particular of asymmetric type. The RSA algorithm and an implementation of this algorithm such as PGP are classic examples of such methods and devices. The methods according to the prior art have two main disadvantages: an important need for a computing resource and a certain slowness. The security of such methods relies in part on the process of registering a client or a guest, generating random numbers, which makes it impossible to replay the enrollment process. The invention aims to overcome all or part of the above disadvantages by providing a method and device for securing access to a data server, which are fast and provide a user with authentication and encryption features. The invention also aims to propose a method and a system for securing access to a data server, preventing an attacker from replaying a registration session with the data server. The invention also aims to propose a method and a system for securing the sending of messages by electronic mail implementing an encryption method according to the invention. SUMMARY OF THE INVENTION At least one of the aforementioned objectives is achieved with a method of securing a connection to a data server, implementing a symmetric encryption Enigma type encryption machine, comprising a step prerequisite for registration of a user client with said data server, characterized in that this registration step comprises: - input by the user of so-called input parameters, - processing by the encryption machine of the parameters input device for generating temporary parameters, comprising at least one random processing step and an output parameter generation, - a securing data determination comprising an initial position of rotors and an encryption alphabet for said encryption machine from said temporary parameters, said security data being recorded by said server and transmitted to said client for be saved there. Advantageously, the processing of the input parameters may comprise: a step of determining a configuration of an Enigma type machine; a step of using the configuration to generate the security data from the identifiers and parameters. Advantageously, the connection of the client to the data server may be conditioned by an authentication step comprising: a step of inputting and / or sending to the server the security data, a step of verification by the data server of the data. security received, - access authorization to the data server in the event that the verification step is conclusive. In a particular version, the method according to the invention may further comprise a step for downloading from the server on the client software implementing the encryption machine. Advantageously, the method according to the invention can include a step of creating a code conversion file on the server. In a particular version, the method according to the invention may further comprise a step for registering a guest user by a client already registered. Advantageously, the method according to the invention can be implemented for a file by a client files on the server operated as a safe. In a particular version, the method according to the invention can be implemented for a communication between a client and a guest, by joint use of the server, an electronic mail and the encryption machine. Advantageously, the method according to the invention can be implemented in a state machine of a communication between a client and a guest. Advantageously, the method according to the invention may comprise a setting up on the server of a token indicating the state of the communication between the client and the guest, the token only existing once the communication initiated. DETAILED DESCRIPTION OF THE INVENTION Other advantages and features of the invention will appear on reading the detailed description of implementations and a non-limiting embodiment, and the following appended drawings: FIG. conventional implementation of an Enigma machine, - Figure 2 is a diagram of the inputs and outputs of a method for determining an encryption alphabet and an initial position of the rotors according to the invention, - Figure 3 specifies a method for determining an encryption alphabet according to the invention, and - Figure 4 specifies a method for determining an initial position of the rotors according to the invention. In the figures, an element appearing in several figures retains the same reference. FIG. 1 illustrates the conventional use of an Enigma 100 machine. The use of a machine such as machine 100 requires initializing it in a precise configuration. This configuration is here entirely determined by an encryption alphabet 102 and the initial position of rotors 104. Once this configuration is determined, a text to be encrypted 106 can actually be encrypted by the machine 100 to generate an encrypted text 108. The decryption of the text encrypted is done by repositioning the Enigma machine according to the precise configuration. The decryption of the encrypted text 108 is obtained by encryption of the encrypted text 108. The decryption of the encrypted text 108 leads to the text to be encrypted 106. Indeed, the Enigma machine is a symmetric encryption method. An Enigma machine with 5 rotors with 26 positions and an alphabet of 78 characters, the number of possible configurations is 265 * 78 !, that is more than 1.34 * 10122 configurations. Enigma encryption is therefore safe when the transmission of the chosen configuration for encryption is safe. In the embodiment described below, a method of computer use of an Enigma machine with five rotors and 78 characters is implemented. It is well understood that these choices are given only as an example. In the remainder of this discussion, a key designates a set of five characters selected from the set A-Z. To a key are associated 5 numbers that define it, all between 0 and 25 and vice versa, according to the following correspondence: the first number corresponds to the position in the alphabet of the first character. At five numbers all between 0 and 25 is also associated with one and only one key. For example, the key associated with numbers (6,13,2,8,0) is GNCIA and vice versa. According to the invention, a so-called simple encryption of a text by a key consists of an encryption obtained by shifting each letter of the text by a number of letters equal to twice the sum of the five numbers associated with the key, modulo 26. By way of example, the result of the encryption by the GNCIA key of the SECRET text is YKIXKZ. Indeed, - 5 - the 5 numbers associated to the key GNCIA are (6,13,2,8,0), the double of the sum of the numbers associated with the key, modulo 26, is 6, the offset of the letter S (18) results in the letter Y (24) and so forth for the letters E (4), C (2), R (17), E (4), T (19) which are enciphered by the letters K (10) I (8), X (23), K (10), Z (25). Method for determining an encryption alphabet 102 and method for determining an initial position of the rotors 104. Method for determining an encryption alphabet 102 FIG. 2 illustrates the use of a method according to the invention to determine such an encryption alphabet 102 among the 78! possible as well as a position of the rotors among the possible 265. This method requires the choice by a user of a key 202, as well as three numbers ni, n2 and n3, respectively referenced 204, 206 and 208. Moreover, the method also requires the use of a file 210 called an , which will be described later. More precisely, this method according to the invention can be decomposed into two subprocesses 212 and 214. The subprocess 212 has for inputs the numbers n2 and n3 as well as the file An and for output the encryption alphabet 102 Subprocess 214 inputs the key, the number n1 and the ValSer value, and outputs the position of the rotors 104. Figure 3 illustrates the subprocess 212 of determining the encryption alphabet 102 from the numbers n2, n3 as well as the file An. The number n2 entered by the user is transformed during step A (0.77), 302, into a random number 304, called NbChoix, between 0 and 77. Then, a number step 306, determines one of the 78 pre-generated alphabets from NbChoice. These alphabets are generated by successive circular offsets. We thus obtain the choice of a first temporary alphabet C1. The third number n3 is transformed in step A (9, 39), 308, into a random number 310, called Chgt, between 9 and 39. A step T5 is then performed. It has for entry the first temporary alphabet cl as well as the number Chgt. This step T5 outputs a second temporary alphabet C2. In a first part of step T5, the first block of characters Chgt of the first temporary alphabet is permuted with the last block of characters Chgt of the first temporary alphabet. If it exists, the second block of Chgt characters of the first temporary alphabet is then swapped with the penultimate block of Chgt characters of the second temporary alphabet. The same operation is repeated with the third block of characters Chgt if it is permuted with the third block of Chgt, and this is done as far as possible. In the second part of step T5, a rotation of t characters is applied to the alphabet resulting from the treatment just described. The value t is equal to the value NbChoix, raised to the power 4, module 78. The alphabet resulting from this last processing is the second temporary alphabet C2. A step T6, 316, is then performed. It has as input the second temporary alphabet C2, 316, and an An file, 210. This step T6 has output of the encryption alphabet. The file An is a connection file. This file contains 10 lines. Each row is an array of integers from 0 to 77. This table contains 78 integers. It indicates the permutations to be performed on the second temporary alphabet C2 to obtain the encryption alphabet. Each line corresponds to the last digit of the customer's registration year. Thus, the third line is used for the year 2012. The direct knowledge of the NbChoix and Chgt values as well as the An file thus allows the precise determination of an encryption alphabet. Method for determining an initial position of the rotors 104 FIG. 4 illustrates the sub-method 214 for determining the initial position of the rotors 104 from a key 202, and the number n1 204. The key 202 is encrypted during step 402 by the simple encryption of the key 202 by itself. By way of example, the result of step 402 for a key 202 is UBQWO is an encrypted key 404 equal to KRGME. Indeed, the encryption by the key 202 consists of an offset of 16 notches modulo 26. The encrypted key 404 is then associated in the step Ti, 406 to the five numbers 408 which define it, here noted (a, b, c, d, e). By way of example, when the encrypted key 404 is KRGME, the transformation Ti results in the numbers (a = 10, b = 17, c = 6, d = 12, e = 4). The first number n1 entered by the user is transformed during step A (1,16), 410, into a random number x, 412, between 1 and 16. The number x is used during step T2, 414, to generate five new numbers. The result of the transformation is obtained in step 416 and is a number called y. The T2 transformation is carried out in the following way: the number x is added to the number a, modulo 26, the number x + 1 is added to the number b, modulo 26, the number x + 2 is added to the number c, modulo 26, the number x + 3 is added to the number d, modulo 26, and the number x + 4 is added to the number e, modulo 26. For example, when x = 6, this second transformation results in 416 the five numbers y (16,24,14,21,14). These numbers define the initial position 104 of the rotors of the Enigma machine. The right rotor is placed in 14th position, to its left in 21st position, the one to the left of the previous in 14th position, the one to the left of the previous in 24th position, and the leftmost in 16th position. Moreover, during step T, 418, the number x is transformed into a set of 8 characters, called random, obtained in step 420. This transformation implements a table of correspondence between the number x and the hazard. A number x corresponds to one and only one hazard. For example, at x = 6, a lookup table matches the SIXUNSIX characters. The hazard is encrypted according to the following method: the letters SIXUNSIX correspond to the number 18 8 23 20 13 18 8 23; . the encryption by the key 202 UBQWO of the alea consists, as has been seen above, in a shift of 16 notches modulo 26, which corresponds to the numbers 8 24 13 10 3 8 24 13; - 8 -. the encrypted hazard is: IYNKDIYN. In addition, FIG. 4 illustrates a step A (0, 99), 422, during which a random number ValSer, 424, is generated between 0 and 99. The key 202 and the value ValSer 424 are used during the step T3, 426, for generating a code, 428 according to the following method: calculating a number z corresponding to the key 202 by determining the five numbers (m0, m1, m2, m3, m4) associated with the key 202 and then z = m0 * 26 * 261 ° + mi + m2 + m3 * 262 * 263 * 264 + m4. For example and when the key is UBQWO, the five numbers associated with the key UBQWO are (20,1,16,22,14) and: z = 6 * 26 ^ 0 + 13 * 26 ^ 1 + 2 * 26 ^ 2 + 8 * 26 ^ 3 + 0 * 26 ^ 4 = 6795198 a so-called Pdf value, dependent on z, is determined according to the following algorithm: index = 4; If (z> 10 ^ index) TantQue (z> 10 ^ index): Index ++; End Both index: = index-1; Pdf: = 10 ^ index; End if not so much (z <10 ^ index) Index--; End time Pdf: = 10 ^ index; End Otherwise The index value is here: index = 6 The value Pdf is here: Pdf = 1000000 we apply the following algorithm to the number z Si (2 * 1016 <Z <3 * 1016) pdf * = 2; If (z-pdf <= pdf) THEN z: = d40 (i-index) -ValSer; End If Otherwise z: = z-pdf-ValSer; End Otherwise - 9 - In the example given, for key 202 equal to UBQWO and a value 242, ValSer equal to 7, the code 428 obtained is: 5795191. Creation of a code conversion file on server II is created on the server a file comprising 26 ^ 5 lines filled in according to a method now described: For all 5-tuple (a, b, c, d, e) where a, b, c, d, e are numbers between 0 and 25, calculate p = a * 26 ^ 0 + b * 26 ^ 1 + c * 26 ^ 2 + d * 26 ^ 3 + e * 26 ^ 4 and write in the p + 1 th row in column the numbers a , b, c, d, e. Thus, knowing the number 6795198, the reading of the 6795199 th line leads to the knowledge of the 5-tuple (20,1,16,22,14). Of course, these tuples can be stored in a database traversed using a B + tree, rather than written to a file. In the rest of the presentation, reference will be made to a file, called a conversion file. Registration method and method for authenticating a client or a guest on a data server terminal There will now be exposed a method for registering and authenticating access to data located on a server . This method of registration and authentication of a client or a user according to the invention implements a previously described method for determining an encryption alphabet 102 and a method according to the invention for determining an initial position of the rotors. 104. The registration method of a user according to the invention distinguishes a user, said client, a user, said guest, who is a guest user by at least one customer. According to the invention, any person can become a client user. To become a guest user of a client user according to the invention, the client user must invite the person wishing to be the guest user. As a result, the registration procedures of a client user and a guest user are different. - 10 - How to register and authenticate a client on a data server How to register a customer When a user wants to register with the server, a form is displayed on the screen of the terminal user and the user is requested to enter an email address and a password. The user is also required to enter a five-character sequence, called Key, consisting of letters selected from the set A-Z. The user is also asked to choose three numbers n1, n2 and n3 between 1 and 10. The server implements a method of determining an encryption alphabet 102 according to the invention. The values n2, 206, and n3, 208, of the determination sub-process 212 of an encryption alphabet 102 according to the invention are the numbers n2 and n3 entered by the user. The An 210 file is a pre-established connection file known only to the server terminal. Thus, decryption is impossible without the knowledge of this file, which in fact authenticates the server terminal when the decryption is correct. NbChoix values 304 and Chgt 310 are generated by the server during the implementation of this subprocess 212 for determining an encryption alphabet. The server implements a method for determining the initial position of the rotors 104 according to the invention. The value n1, 204, of the determination sub-process 214 of an initial position of the rotors 104 according to the invention is the number n1 entered by the user. The key 202 of this subprocess 214 is the key entered by the user. ValSer value 424 is generated in step 422 by the server. This ValSer value can also be read from an acquisition card connected to the server terminal. A new ValSer value is generated at each registration. The values alea 420 and code 428 are generated by the server during the implementation of this subprocess 214 for determining an initial position of the rotors. Once the final encryption alphabet and the initial position of the determined rotors, the Enigma machine 100 is set in an encryption configuration. In this encryption configuration, the server terminal encrypts the user's email. In addition, information about the new client is stored in a client table of a database at the server level. This information includes a client identifier, the primary key of the database client table. Other information recorded about the new customer is the ValSer values, the email (unencrypted) as well as the customer's registration year. The customer is informed of the values of the code corresponding to the key, ie 428, encrypted randomness, password and customer identifier. The server terminal also registers for each client three files named JeuCle, Config, Phrase. The JeuCle file includes the ValSer value. The Config file contains the values Chgt, NbChoix, and password (unencrypted). The file Phrase contains the result of the encryption of the email Three small files ("cookies") are also deposited on the terminal of the client. Authentication of a customer Once registered, a client user knows his code, encrypted randomness, password and identifier. In addition, the three files ("cookies") described above are stored in his terminal. When a user wishes to connect to the terminal server, he fills out an authentication form in which he enters his code, encrypted alea, password, and his identifier. Then, the server retrieves the three cookies deposited on the client terminal to find the three files JeuCle, Config, and Phrase, relating to the client, he recorded on the server terminal during the registration of the Client. A first comparison is made between the password contained in the Config file and the one entered in the form. The Chgt and NbChoix values from the Config file are used by the server to determine the alphabet Cl 306, then the alphabet C2 314. The server's knowledge of the file An as well as of the customer registration date recorded in the customer table and associated with the customer identifier, allows the server to implement step T6 316 the final alphabet. The definitive alphabet can only be validly determined by the server on which the client is registered. Determination of the initial position of the rotors 104 The knowledge of the value ValSer present in the JeuCle file as well as that of the code entered in the form leads to the determination of the key 202. The following method is used: - addition of the code and the ValSer value. When the code entered by the customer in the form is 5795191 and the ValSer value is 7: - the code entered added to the value ValSer to obtain a temporary value: 1 = 5795198 - a value called Pdf2, dependent on 1, is determined, according to the following algorithm: index2 = 4; If (I> 10Aindice2) TantQue (I> 10Aindice2): Index2 ++; End of time Index2: = index2-1; Pdf2: = 10 ^ index2; End If Otherwise TantQue (1 <10 ^ index2) Index2--; End Quite Pdf: = 10 ^ index2; End Otherwise The index2 value is here: index = 6 The Pdf value is here: Pdf2 = 1000000 - Si (2 * 1016 <l <3 * 1016) pdf * = 2; - 13 - - if 1-pdf2 <= pdf2 then 1 = 1 + 10'nd1ce2-1 else 1 = l + pdf2. Here the condition 1 = pdf2 <= pdf2 is not checked and 1 = 6795198 The code conversion file previously constructed is then used. This file associates directly to line 6795199 the five numbers (20, 1,16, 22, 14) associated with the UBQWO characters. The server thus has knowledge of the key 202. Knowing the encrypted randomness entered by the user, for example IYNKDIYN and the key 202, for example UBQWO, the server can decrypt the encrypted randomness to obtain the hazard 420. was seen above that the encryption by the key UBQWO consisted of a shift of 6 letters. Thus the decryption of the encrypted random IYNKDIYN results in SIXUNSIX. The knowledge of the hazard 420 and the file to reverse the T 418 step described above leads the server to the knowledge of the value 412 x. For example, the value x associated with the random SIXUNSIX is 6. Knowing the key 202 and the value x 412, the server can implement the steps 402, 406 and 414 and thus find the value 416 y. The value 416 defines the initial position 104 of the rotors as previously described. Decryption and authentication The server terminal then decrypts the contents of the Phrase file and compares the result of this decryption to the corresponding Verne in the client table to the identifier identifier. When this comparison is conclusive, the user is authenticated. Guest registration and authentication process on a data server Guest registration process To enable a guest to register with the server terminal, a previously registered customer authenticates with the server terminal . Once authenticated, the client creates a guest by typing into a form his email address and the name of the guest. The nickname is then the concatenation of the name of the guest with the customer ID. The customer sends his guest his pseudonym via another communication channel than the internet messenger. - 14 - To register with the server, the guest will proceed to the steps described in the registration section of a client with the exception of one information: the password information is replaced by that of pseudonym assigned by the customer. To create a pirate guest account, you must know the email address and the pseudonym entered by the customer. Authenticating a guest The guest proceeds in the same way as a client to authenticate to the terminal server except for the password that is replaced by its nickname. Thus, the security of the system relies in part on the process of registering a client or a guest, generating random numbers, which makes it impossible to replay the enrollment process. Moreover, the deposit of small files ("cookies") on the client terminal or guest makes vain the interception of the data generated by the server and sent to the client because it is not possible to authenticate without these files being on the client or guest terminal. Finally, the use of the file An, only known to the server after registration, provides authentication of the terminal server when the client authenticates with the terminal server. Functionalities of the implementation of the server according to the invention Access to a safe. Once authenticated, a client can save files to the server. These files will be searchable only by himself and his guests. The client can also delete his files. The invention thus makes it possible to ensure the authentication of the client to the safe that is the server and which contains the files of the client. Secure communication of a client with a guest Furthermore, the invention also allows a client to communicate with a guest in a secure manner. The communication of a client with a guest is carried out through the joint use of the server according to the invention and the electronic mail and an encryption machine according to the invention. Description of an encryption machine according to the invention An encryption machine according to the invention is a software package provided with its documentation and a code conversion file as defined above. The software of the encryption machine according to the invention allows message encryption and decryption by means of an Enigma machine with 5 rotors and using an alphabet of 78 characters. As has been seen above, the determination of the initial position of the rotors for each text to be encrypted depends on: - the key 202 and the number n1 204, chosen by a user at each encryption, - a value ValSer 424 specific to the user that is determined during the user registration process and remains the same for any subsequent ciphers. The determination of the encryption alphabet for each text depends on: - the values n2 and n3, chosen by the user for each encryption, - a file An 210 specific to the user and which remains the same for all subsequent ciphers . As was seen above, the determination of the initial position of the rotors used for the encryption of the text results from: the knowledge of the Code 428 and the encrypted randomness present in the file Config and generated with each encryption, and the knowledge of the ValSer value specific to the person having encrypted the text and which remains the same for all subsequent ciphers as well as the code conversion file. As has been seen above, the determination of the alphabet used for the encryption of the text results from: - 16 - - the knowledge of Chgt and NbChoice determined during the encryption, - as well as the knowledge of the file An. State machine of a communication between a customer and a guest The customer who initiates the communication is called the customer. For each client / guest pair, a token is placed on the server indicating the state of the communication between the client and the guest. This token only exists once the communication has been initiated. When a communication has been initiated, this token can then take three values: j = 0, j = 1 and j = 2. Figure 5a and 5b illustrate the possible values of the token and their meaning: - when the token is j = 0, this is a communication end, - when the token is j = 1, the guest received a message from the client, and - when the token is j = 2, the client has received a message from the guest in response to his previously sent message. The communication between client and guest is concurrent. To do this, there are two state machines: one for the client and one for the guest. These two machines indicate the state of the communication between the client and the guest. Figure 5a illustrates the possible state changes (circles E1 and E2) of the client state machine and their meanings to the client. EO is the time when the customer wants to initiate a communication. A test, represented by the test diamond in the figure, of the value of the token is then carried out: when the value of the token is j = 0, the state machine of the client goes to the state El, when the value of the token is j = 1, the client's state machine returns to the EO state, and - when the value of the token is j = 2, the client's communication state machine goes to the E2 state. In the El state, the client can send a message to his guest: if he has not already downloaded it, the client authenticates himself to the server, downloads an encryption machine according to the invention. , as well as its files An and ValSer, the customer encrypts a message using his encryption machine according to the invention, authenticates if necessary again on the server and makes available to the guest the Config file generated by the encrypting its message, the token is then set to 1 and the customer's state machine goes to the EO state. the client sends by email the result of the encryption of his message that is generated by the encryption machine according to the invention as well as its code, password and alea. In state E2, the client received a response from the guest after sending his first message. the client authenticates with the server and downloads the Config file made available by the guest after a response message encryption generated by the guest. The token is then set to j = 0 and the client's state machine goes to the EO state. the client uses the encryption machine according to the invention to decrypt the encrypted message received from the guest by email. Figure 5a illustrates the possible state changes (circles E1, E2 and E3) of the guest state machine and their meanings for the guest. The EO state represents the moment when the guest consults his mailbox on the server. A test, represented by the test diamond in the figure, of the value of the token is then performed: when the value of the token is j = 1, the state machine of the guest goes to the state El, when the value of the Token is j = 0, the guest has received a message from the client. A test, represented by the diamond A in the figure, is then performed, and when the value of the token is j = 2, the guest communication state machine returns to the EO state. During test A, the guest chooses to answer the client's message or not. If it chooses not to answer, the guest's communication state machine returns to the EO state. If it chooses to respond, the guest's communication state machine goes to state E2. In the state El, the guest has received a message from the client: if he has not already downloaded it, the guest authenticates with the server, downloads an encryption machine according to the invention, as well as the ValSer and An file made available by the client, the guest decrypts the message also using encrypted codes and randomly provided by the customer and received by electronic mail using its encryption machine according to the invention, authenticates the case again on the server and download the Config file made available by the client. The token is then set to O. The guest state machine changes to the EO state. the client sends by email the result of the encryption of his message that is generated by the encryption machine according to the invention as well as its code, password and alea. In the state E2, the guest sends a message in response to that received from the client the guest encrypts a message using the encryption machine according to the invention, authenticates if necessary again on the server and sets the client's Config file generated by the encryption of its message, the token is then set to 2 and the state machine of the guest goes to the EO state. the guest sends by email the result of the encryption of his message that is generated by the encryption machine according to the invention as well as its code, password and alea. Thus, the method according to the invention performs both authentication and data encryption. Moreover, the deposit of small files ("cookies") on the client terminal or guest makes vain the interception of the data generated by the server and sent to the client because it is not possible to authenticate without these files being on the client terminal - 19 - or guest. It is therefore not possible subsequently to use the vault functions or to download an encryption machine according to the invention thereafter. Finally, the use of the file An, only known to the server after registration, provides authentication of the terminal server when the client authenticates with the terminal server. Of course, the invention is not limited to the examples that have just been described and many adjustments can be made to these examples without departing from the scope of the invention.
Claims (10)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1254041A FR2990317B1 (en) | 2012-05-03 | 2012-05-03 | METHOD FOR SECURING ACCESS TO A DATA SERVER |
| PCT/EP2013/058011 WO2013164194A1 (en) | 2012-05-03 | 2013-04-17 | Method of securing access to a data server |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1254041A FR2990317B1 (en) | 2012-05-03 | 2012-05-03 | METHOD FOR SECURING ACCESS TO A DATA SERVER |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| FR2990317A1 true FR2990317A1 (en) | 2013-11-08 |
| FR2990317B1 FR2990317B1 (en) | 2015-05-01 |
Family
ID=47019083
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR1254041A Active FR2990317B1 (en) | 2012-05-03 | 2012-05-03 | METHOD FOR SECURING ACCESS TO A DATA SERVER |
Country Status (2)
| Country | Link |
|---|---|
| FR (1) | FR2990317B1 (en) |
| WO (1) | WO2013164194A1 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020035684A1 (en) * | 2000-09-20 | 2002-03-21 | Robert Vogel | Method and apparatus for authorizing the transfer of information |
| US20070115494A1 (en) * | 2005-11-18 | 2007-05-24 | Hidetomo Nakayama | Image processing system, information processing device, computer readable recording medium, and information processing method |
| EP2116951A2 (en) * | 2008-05-05 | 2009-11-11 | Sony Corporation | System and method for effectively performing data restore/migration procedures |
| US20110072264A1 (en) * | 2009-09-21 | 2011-03-24 | Mcnulty James | Secure information storage and retrieval apparatus and method |
-
2012
- 2012-05-03 FR FR1254041A patent/FR2990317B1/en active Active
-
2013
- 2013-04-17 WO PCT/EP2013/058011 patent/WO2013164194A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020035684A1 (en) * | 2000-09-20 | 2002-03-21 | Robert Vogel | Method and apparatus for authorizing the transfer of information |
| US20070115494A1 (en) * | 2005-11-18 | 2007-05-24 | Hidetomo Nakayama | Image processing system, information processing device, computer readable recording medium, and information processing method |
| EP2116951A2 (en) * | 2008-05-05 | 2009-11-11 | Sony Corporation | System and method for effectively performing data restore/migration procedures |
| US20110072264A1 (en) * | 2009-09-21 | 2011-03-24 | Mcnulty James | Secure information storage and retrieval apparatus and method |
Also Published As
| Publication number | Publication date |
|---|---|
| FR2990317B1 (en) | 2015-05-01 |
| WO2013164194A1 (en) | 2013-11-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10289835B1 (en) | Token seed protection for multi-factor authentication systems | |
| EP2619941B1 (en) | Method, server and system for authentication of a person | |
| EP1549011A1 (en) | Communication method and system between a terminal and at least a communication device | |
| FR2930390A1 (en) | METHOD FOR SECURE DIFFUSION OF DIGITAL DATA TO AN AUTHORIZED THIRD PARTY | |
| EP3264305A1 (en) | Secure transaction method from a non-secure terminal | |
| FR2996947A1 (en) | SECURE METHOD FOR OPENING CONTROL OF LOCK DEVICES FROM MESSAGES USING SYMMETRICAL ENCRYPTION | |
| FR2793367A1 (en) | AUTHENTICATION AND SECURITY DEVICE FOR A COMPUTER NETWORK | |
| CA3128869A1 (en) | Cryptographic data verification method | |
| FR3041798A1 (en) | IMPROVED AUTHENTICATION METHOD AND DEVICE | |
| EP2301187A1 (en) | Terminal for strong authentication of a user | |
| WO2003107587A1 (en) | Interface method and device for the on-line exchange of contents data in a secure manner | |
| FR2980011A1 (en) | METHOD FOR IMPLEMENTING, FROM A TERMINAL, CRYPTOGRAPHIC DATA OF A USER STORED IN A REMOTE DATABASE | |
| EP3965361B1 (en) | Data exchange between a client and a remote device, for example a secure module | |
| CN115941328A (en) | Encryption processing method, device and system for shareable user data | |
| FR3030817A1 (en) | USER AUTHENTICATION METHOD, SECURE MODULE, ELECTRONIC APPARATUS AND SYSTEM THEREOF | |
| EP3673633B1 (en) | Method for authenticating a user with an authentication server | |
| FR2990317A1 (en) | METHOD FOR SECURING ACCESS TO A DATA SERVER | |
| WO2023057652A1 (en) | Security application for an it device, and corresponding security architecture | |
| EP3729307A1 (en) | Methods and devices for enrolling and authenticating a user with a service | |
| WO2006035159A1 (en) | Public key cryptographic method and system, certification server and memories adapted for said system | |
| EP3899765B1 (en) | Reinitialization of an application secret by way of the terminal | |
| FR3141538A1 (en) | METHOD AND DEVICE FOR DISTRIBUTED ONLINE STORAGE OF FILES IN A ZERO TRUST CONTEXT | |
| WO2016156737A1 (en) | Method for obtaining a list of at least one piece of sensitive data | |
| EP2115657A2 (en) | Method and system for authorizing access to a server | |
| FR3018021A1 (en) | METHOD AND SYSTEM FOR SECURING TRANSACTIONS PROVIDED BY A PLURALITY OF SERVICES BETWEEN A MOBILE DEVICE OF A USER AND A POINT OF ACCEPTANCE |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PLFP | Fee payment |
Year of fee payment: 5 |
|
| PLFP | Fee payment |
Year of fee payment: 6 |
|
| PLFP | Fee payment |
Year of fee payment: 7 |
|
| PLFP | Fee payment |
Year of fee payment: 8 |
|
| PLFP | Fee payment |
Year of fee payment: 9 |
|
| PLFP | Fee payment |
Year of fee payment: 10 |
|
| PLFP | Fee payment |
Year of fee payment: 11 |
|
| PLFP | Fee payment |
Year of fee payment: 12 |
|
| PLFP | Fee payment |
Year of fee payment: 13 |
|
| PLFP | Fee payment |
Year of fee payment: 14 |