Andreï Vinokurov.

Le problème аутентификации des données et les chiffres par blocs.

L'article donné est la suite de la série des articles de l'auteur sur les réalisations et l'utilisation du standard Russe шифрования [1,2,3] et sur l'architecture et les régimes de l'utilisation des chiffres par blocs [4], et est consacrée aux problèmes de la confirmation de l'authenticité et la paternité des messages. L'article était écrit par un automne de 1995 – presque il y a trois ans, et est préparée pour la publication dans la revue "le Moniteur", où chez l'auteur sont sortis 2 articles selon la cryptographie. Cependant pour de différentes raisons l'article alors n'était pas publié – d'abord à cause du manque du temps sur son finissage définitif et la préparation des codes-exemples de l'article, mais puis à cause de la clôture du "Moniteur".

Le contenu

L'introduction........... 2

1. La tâche аутентификации des données...............................................................................................

2. Le contrôle de la constance des tableaux.............................................................................

2.1. La tâche имитозащиты des données.............................................................................................

2.2. Les approches du contrôle de la constance des données...................................................................

2.3. La production du code аутентификации des messages..................................................................

2.4. La production du code de la détection des manipulations....................................................................

3. La signature en chiffre à la base des chiffres traditionnels par blocs.........................................

3.1. Qu'est-ce que c'est la signature en chiffre...........................................................................................

3.2. L'idée de base de Diffi et Hellmana.....................................................................................

3.3. La modification du schéma de Diffi-Hellmana pour la signature битовых des groupes........................

3.4. Le schéma de la signature en chiffre à la base du chiffre par blocs.................................................

La conclusion..... 24

La littérature...... 24


L'introduction

Notre tout à fait un siècle proche de l'achèvement peut être considéré à bon droit durant le siècle de l'informatisation totale de la société – le rôle de l'information dans le monde moderne est tellement grand que l'industrie d'information est devenue une des industries de base de nos jours, mais les installations qui ont reçu la diffusion immense pour le traitement des données en chiffres – les ordinateurs – sont un des symboles de notre civilisation. L'information présentée sous les plus diverses formes, à la façon d'autres marchandises est produite, se trouve, est transporté chez le consommateur, est vendu, est acheté enfin est consommé, vieillit, s'abîme, et т.д. À la longueur du cycle de vie les massifs d'information peuvent subir de diverses influences indésirables pour leur consommateur, aux problèmes de la lutte avec qui on consacre l'article donné.

Puisque l'information a le caractère immatériel, les tableaux n'ont pas aucunes empreintes, par lesquelles on pourrait juger sur leur passé – sur celui qui est l'auteur, sur le temps de la création, sur les faits, le temps et les auteurs des changements proposés. La modification du massif d'information ne laisse pas les traces palpées sur lui et ne peut pas être découvert par les méthodes ordinaires.« Les traces de la modification »sous n'importe quelle forme peuvent assister seulement aux porteurs matériels de l'information – ainsi, l'expertise spéciale est tout à fait capable d'établir que secteur X sur некоей à la disquette était inscrit après tous les autres secteurs avec les données sur le même sentier de la disquette, et cette inscription était produite sur un autre lecteur de disquettes. Le fait indiqué, étant établi, peut, par exemple, signifier qu'aux données, gardé sur la disquette, on faisait les changements. Mais après que ces données seront recopiées sur un autre porteur, leurs copies ne contiendront pas déjà aucunes traces de la modification. Les données réelles informatiques au cours de la vie changent plusieurs fois la base physique de la représentation et errent constamment du porteur sur le porteur, en vertu de quoi d'eux non обнаружимое l'altération ne présente pas les problèmes sérieux. Puisque la création et l'utilisation des massifs d'information sont toujours divisée pratiquement dans le temps et/ou dans l'espace, chez le consommateur peuvent apparaître toujours les doutes argumentés sur ce que le tableau reçu par lui est créé par la source nécessaire et avec cela dans l'exactitude à tels, par quel il lui est arrivé.

Ainsi, dans les systèmes du traitement de l'information en dehors de la garantie de son caractère secret il est important de garantir les propriétés suivantes pour chaque tableau travaillé :

· l'     authenticité – il est venu au consommateur notamment par un tel, à quel était créé par la source et n'a pas subi sur la carrière des changements non sanctionnés;

· la      paternité – il était créé notamment par cette source, par quel le consommateur suppose.

La garantie par le système du traitement de ces deux qualités des massifs de l'information fait leur tâche аутентификации, mais la capacité correspondante du système à assurer sûr аутентификацию des données s'appelle son authenticité.

1. La    tâche аутентификации des données.

Peut se montrer à première vue que la tâche donnée se décide simple шифрованием. En effet, si le tableau est chiffré avec l'utilisation du chiffre ferme, un tel, par exemple, comme la norme d'État 28147–89, pour lui pratiquement sera toujours suivant justement :

·      il est difficile d'y faire les changements par l'image intelligente, puisque avec le degré de la probabilité un peu se distinguant de l'unité, les faits de la modification des tableaux chiffrés deviennent évidents après eux расшифрования – cette évidence s'exprime dans ce que telles données cessent d'être correctes pour leur interprète : au lieu du texte il y a en russe un galimatias, les archivistes communiquent que l'intégrité des archives est violée etc.;

·      seulement possédant la clé confidentielle шифрования les utilisateurs du système peuvent fabriquer le message chiffré, ainsi, si le message chiffré sur sa clé confidentielle vient au destinataire il peut être assuré à sa paternité, puisque excepté lui-même seulement l'expéditeur légal pouvait fabriquer ce message.

Néanmoins, l'utilisation шифрования dans les systèmes du traitement des données est incapable même assurer de leur authenticité pour les raisons suivantes :

1. Les   changements apportés aux données chiffrées, deviennent évidents après расшифрования seulement en cas d'une grande surabondance des données initiales. Cette surabondance a lieu, par exemple, si le massif de l'information est le texte dans quelque langue humaine. Cependant dans le cas total cette exigence peut ne pas être accomplie – si la modification accidentelle des données ne fait pas à leurs inadmissible à l'interprétation avec la part un peu considérable de la probabilité, шифрование du massif n'assure pas son authenticité. En disant la langue криптологии, l'authenticité et le caractère secret l'essentiel les diverses propriétés криптосистем. Ou, il est plus simple : les propriétés des systèmes du traitement de l'information d'assurer le caractère secret et l'authenticité des données travaillées dans le cas total peuvent ne pas coïncider.

2. Le   fait fructueux (au sens du point précédent) расшифрования des données chiffrées sur la clé confidentielle peut confirmer leur paternité seulement aux yeux du destinataire. Le tiers ne pourra pas faire en vertu de cette conclusion univoque sur la paternité du massif de l'information, puisque son auteur peut être chacun des possesseurs de la clé confidentielle, mais eux au minimum deux – l'expéditeur et le destinataire. C'est pourquoi dans le cas présent les discussions sur la paternité du message ne peuvent pas être permises par l'arbitrage indépendant. C'est important pour ces systèmes, où entre les participants il n'y a pas de confiance mutuelle qu'est très caractéristique pour les systèmes bancaires liés à la gestion par les valeurs considérables.

Ainsi, l'existence du problème de la confirmation de l'authenticité et la paternité des tableaux, séparé de la tâche de la garantie de leur caractère secret, ne provoque pas le doute. Dans les paragraphes ultérieurs du présent article on expose les approches de sa décision, fondé sur l'utilisation des chiffres classiques par blocs. Dans le paragraphe 2 on examine les approches de la décision de la tâche de la confirmation de l'authenticité des données, mais dans le paragraphe 3 – vers la tâche de la confirmation de leur paternité. En principe, pour la décision des tâches indiquées on peut utiliser n'importe quel algorithme traditionnel par blocs cryptographique. Dans les codes informatiques joints au présent article, l'auteur utilise le chiffre le plus familier et proche de lui – криптоалгоритм la norme d'État 28147–89.

2. Le    contrôle de la constance des tableaux.

2.1. La    tâche имитозащиты des données.

Sous имитозащитой des données dans les systèmes de leur traitement comprennent la protection contre l'imposition des données fausses. Comme nous avons éclairci déjà, pratiquement toujours à certaines étapes du cycle de vie l'information est en dehors de la zone du contrôle direct après elle. Cela arrive, par exemple, à la transmission de données selon les voies de communication ou à leur conservation sur les porteurs magnétiques de l'ORDINATEUR, l'accès physique vers qui personnes étranger exclure presque il ne semble jamais possible. Seulement si conclure entièrement la ligne de transmission au capot en métal ferme, à l'intérieur du capot pomper le gaz sous la pression et expédier la compagnie des tireurs ratisser le terrain chaque fois, quand dans la section d'un tel système on fixe les moindres changements de la pression, comme cela, d'après ce qu'on dit, les services secrets Russes responsables pour le lien gouvernemental font sera au moins quelque garantie de l'inviolabilité des données transmises, pas toujours, d'ailleurs, suffisant. Mais l'approche semblable renchérit plusieurs fois le coût des voies de communication, en effet, le coût du capot, des locaux protégés pour le traitement du signal et les services des gens armés sur beaucoup d'ordres excède le coût construit витой les vapeurs des fils. Et comment dans ce cas être avec le signal électromagnétique ? – En effet, non jusqu'à toutes les places on peut passer le fil, mais un tel signal, même si cela узконаправленный la touffe laser, sans dire sur le radiosignal ordinaire, tu ne cacheras pas au capot.

Ainsi, physiquement prévenir le dépôt des changements non sanctionnés aux données dans l'immense majorité les systèmes réels de leur traitement, les transmissions et les conservations il ne semble pas possible. C'est pourquoi extrêmement considérablement découvrir en temps voulu le fait lui-même de tels changements – si les altérations semblables accidentelles ou préméditées sont révélées à temps, les pertes des utilisateurs du système seront minimales et se limiteront seulement au coût de la transmission "vide" ou la conservation des données fausses que, certes, dans toutes les situations réelles incommensurablement moins de préjudice possible de leur utilisation. Par le but du malfaiteur, imposant au système l'information fausse, est sa distribution pour original, mais c'est possible seulement dans le cas où le fait lui-même d'une telle imposition ne sera pas découvert à temps, c'est pourquoi la fixation simple de ce fait réduit à rien tous les efforts du malfaiteur. Nous ferons le bilan – par la protection des données contre les changements non sanctionnés dans la cryptographie comprennent non l'exception de la possibilité de tels changements, mais l'assortiment de méthode, permettant de fixer de façon certaine leurs faits, s'ils avaient lieu.

Nous tenterons de trouver les approches universelles de la construction d'une telle protection. Avant tout, à la disposition du destinataire de l'information il y avoir être une procédure du contrôle ou аутентификации A (T), permettant de contrôler l'authenticité du tableau reçu T. Sur la sortie la procédure indiquée doit donner une de deux significations possibles booléennes – le tableau est identifié comme original, ou comme faux : A (T) Î {0,1} pour chacun admissible T. Nous conviendrons que la signification 1 correspond au tableau original, mais la signification 0 – faux. La procédure аутентификации doit posséder les propriétés suivantes limitant la possibilité du malfaiteur choisir le tableau T1, distinguant du massif original T (T ¹ T1), qui néanmoins par cette procédure serait identifié comme original (A (T1) =1) :

· le      malfaiteur n'avoir pas être de possibilité de trouver un tel message autrement comme par voie de l'excédent selon la multitude de messages admissibles – la dernière possibilité est dans sa disposition toujours;

· la      probabilité passer avec succès le contrôle de l'authenticité près du message par hasard choisi T* ne doit pas excéder la signification d'avance établie p.

Maintenant nous nous rappellerons sur l'universalité du schéma construit de la protection, qui signifie, en particulier, que le schéma doit être utile pour la protection de n'importe quel tableau T d'une assez de large classe. Cependant, si réaliser le schéma il est exactement, i.e. utiliser pour le contrôle dans l'exactitude ce message, que l'expéditeur doit transmettre au destinataire, le principe de l'universalité peut venir à la contradiction avec la deuxième exigence à la procédure du contrôle. En effet, à partir de ce principe nous pouvons demander que les messages tous possibles T soient admissibles que violera tout à fait évidemment la deuxième exigence à la fonction du contrôle. Pour leur réconcilier, dans le schéma il est nécessaire d'introduire les pas supplémentaires – la transformation donné par l'expéditeur et la transformation inverse par le destinataire. L'expéditeur accomplit la transformation des données avec l'utilisation d'un certain algorithme F : T ' =F (T). Alors, en dehors de la procédure аутентификации, à la disposition du destinataire il y avoir être une procédure G de la restitution des données initiales : T=G (T '). Tout le sens de ces transformations consiste que la multitude de messages transformés {T '}, mutuellement absolument reflétant sur la multitude de messages admissibles initiaux {T}, soit inconnue au malfaiteur, et la probabilité deviner par hasard l'élément de cette multitude était assez petite pour que l'on pouvait ne pas la prendre en considération.

La dernière exigence à la combinaison avec le principe de l'universalité amène absolument à la nécessité du dépôt de la surabondance définie du message que signifie tout simplement ce fait que le montant du message transformé doit être plus de montant du message initial sur une certaine valeur, tout juste et le degré faisant de la surabondance : |T ' | |T | = D. Il est évident que plus cette valeur, il est plus petit la probabilité accepter le message par hasard pris pour original – cette probabilité est égale 2D. Si non l'exigence du dépôt de la surabondance, à titre des fonctions de la transformation F et G des données on peut utiliser les fonctions зашифрования et расшифрования des données sur une certaine clé K : F (T) =EK (T), G (T ') =DK (T '). Cependant à leur utilisation le montant du massif des données chiffrées T ' est égal au montant du massif des données initiales T : |T ' | = |T |, c'est pourquoi la méthode ne s'approche pas ici.

Il est plus naturel de réaliser l'algorithme de la transformation avec le dépôt de la surabondance par le supplément simple aux données initiales de la combinaison de contrôle du montant fixé calculé comme une certaine fonction de ces données : T ' =F (T) = (T, C), C=f (T), |C | = D. Dans ce cas la mise en relief des données initiales du massif transformé consiste en rejet simple de la combinaison ajoutée de contrôle C : T=G (T ') =G (T, C) =T. Le contrôle de l'authenticité consiste en calcul pour la partie substantielle T du tableau reçu T ' les significations de la combinaison de contrôle C ' =f (T) et sa comparaison avec la signification transmise par la combinaison de contrôle C. S'ils coïncident, le message est considéré original, autrement faux :

.

Maintenant nous examinerons les propriétés, de qui la fonction de la production de la combinaison de contrôle f doit satisfaire :

1.    Cette fonction doit être вычислительно irréversible, c'est-à-dire il n'y avoir pas exister moyen de choisir le tableau T sous la combinaison donnée de contrôle C autrement comme par l'excédent selon l'espace des significations possibles T.

2.    Cette fonction ne doit pas être connue au malfaiteur – il n'avoir pas être de moyen de calculer la combinaison de contrôle C pour aucun tableau T. Cette exigence signifie au fond que la fonction f doit être confidentielle, nous l'examinerons plus en détail :

·      premièrement, conformément à universellement admis dans la cryptographie par le principe de Kirhgoffa il faut remplacer l'exigence du caractère secret de la fonction de la production de la combinaison de contrôle par l'application de la fonction ouverte utilisant le vecteur des paramètres confidentiels la (clé) – ainsi que cela se fait à la construction des chiffres : C=f (T) =fK (T).

·      deuxièmement, il se trouve que dans les cas particuliers on peut beaucoup affaiblir cette exigence. Le fait est que la cible réelle de ce point – exclure pour le malfaiteur la possibilité d'expédier la nouvelle fausse T1, ayant approvisionné en sa combinaison correctement calculée de contrôle C1=f (T1). On peut atteindre cela par deux moyens suivants :

(a)     Avec l'aide de l'exigence utilisée plus haut du caractère secret de la fonction du calcul de la combinaison de contrôle ou sa dépendance du vecteur des paramètres (clé) confidentiels;

(b)    Avec l'aide de l'organisation d'un tel procès-verbal de l'utilisation des moyens de la protection, qui exclurait la possibilité de l'imposition semblable des données fausses.

Il est évident que la possibilité (b) peut être réalisée seulement si la combinaison de contrôle est transmise ou se trouve séparément des données protégées. Malgré l'exotisme semblant, une telle possibilité se rencontre assez souvent, les paroles sur elle en avant.

Nous examinerons certains moyens bien connus du calcul de la combinaison de contrôle et nous estimerons la possibilité de leur utilisation dans le système examiné имитозащиты des données. L'exemple le plus simple d'une telle combinaison est la somme de contrôle des blocs du message, pris selon le module d'un certain nombre, prennent d'habitude deux dans le degré du montant du bloc :

Si T = (T1, T2..., Tm), C=f (T) = (T1+T2 +... +Tm) mod2N,

N = | T1 | = | T2 | =... = |Tm | – le montant des blocs du message.

Cependant une telle transformation ne correspond pas aux deux exigences exposées plus haut à la fonction du calcul de la combinaison de contrôle et c'est pour cela qu'est inapte pour l'utilisation dans le schéma имитозащиты :

·      premièrement, et ce principal – il n'exclut pas la possibilité de la sélection des données sous la combinaison donnée de contrôle. En effet, que l'expéditeur de l'information transmette par le canal incertain le message T et la somme de contrôle C pour lui, calculé selon la formule mentionnée ci-dessus. Dans ce cas tout que demander au malfaiteur pour l'imposition au destinataire d'arbitrairement tableau pris faux T ' = (T ' 1, T ' 2..., T'm ') complétera avec son encore un bloc calculé selon la formule suivante :

T'm ' +1=C - (T ' 1+T ' 2 +... +T ' m ') mod2N.

Tous les blocs de la nouvelle fausse, excepté uns, pas absolument dernier, le malfaiteur peut établir par les arbitraires.

·      deuxièmement, la transformation examinée n'est pas cryptographique, et pour le malfaiteur on pourra fabriquer la combinaison de contrôle pour le message arbitraire choisi par lui que lui permet avec succès de le donner pour original – si la combinaison de contrôle se trouve ou est transmis avec le tableau protégé.

2.2. Les    approches du contrôle de la constance des données.

À présent on savent deux approches de la décision de la tâche de la protection des données du changement non sanctionné, fondé sur deux approches exposées plus haut de la production de la combinaison de contrôle :

1. La   production MACMessage Authentification Code – le code аутентификации des messages. Cette approche consiste en ce que la combinaison de contrôle est calculée avec l'utilisation de la clé confidentielle avec l'aide d'un certain chiffre par blocs. Il est important qu'à la base de n'importe quel tel chiffre on peut créer l'algorithme du calcul MAC pour les tableaux du montant arbitraire. Dans la littérature ÌÀÑ parfois s'appelle pas tout à fait correctement la somme cryptographique de contrôle, ou qu'est plus exact, la combinaison cryptographique de contrôle. L'approche donnée vers аутентификации des données est pratiquement universellement admise et fixée dans tous les standards cryptographiques - имитовставка, formé selon la norme d'État 28147-89 est le modèle typique MAC.

2. La   production MDC Ìànipulation Detection Code – le code de la détection des manipulations (avec les données). Pour le calcul MDC pour le bloc des données on utilise une soi-disante fonction irréversible de la compression de l'information, dans la littérature aussi appelé comme la fonction unilatérale, la fonction de la compression (transformation) unilatérale de l'information, l'hesh-fonction cryptographique, ou simplement par l'hesh-fonction. Il est clair que son irréversibilité doit avoir le caractère calculatoire :

· le      calcul de la fonction directe Y=f (X) est facilement réalisable вычислительно;

· le      calcul de la fonction inverse X=f–1 (Y) est irréalisable вычислительно, c'est-à-dire ne peut pas être accompli par la voie plus effective, que l'excédent selon la multitude de significations possibles X;

Les deux moyens du calcul de la combinaison de contrôle – MDC et MAC acceptent à titre de l'argument le bloc des données du montant arbitraire et donnent à titre du résultat le bloc des données du montant fixé.

Dans le tableau suivant plus bas 1 on amène les caractéristiques comparatives des deux approches :

Le tableau 1. Les caractéristiques comparatives des approches de la décision de la tâche du contrôle de la constance des tableaux.

Le paramètre de la comparaison

L'approche

 

 

Le calcul MAC

Le calcul MDC

1.    

Utilisé »ÓÑ«íÓẫ@óá¡¿Ñ des données

Cryptographique »ÓÑ@«íÓẫóá¡¿Ñ (la fonction зашифрования)

La fonction unilatérale, la fonction de la compression irréversible de l'information

2.    

L'information utilisée confidentielle

La clé confidentielle

N'est pas utilisé

3.    

La possibilité pour le tiers calculer ¬«¡@ÔÓ«½ý¡Ò¯ la combinaison

Le malfaiteur ne peut pas calculer la combinaison de contrôle, s'à lui n'est pas connue la clé confidentielle

Le malfaiteur peut calculer la combinaison de contrôle pour »Ó«¿º@ó«½ý¡«ú« du bloc des données

4.    

La conservation et la transmission ¬«¡@ÔÓ«½ý¡«® les combinaisons

La combinaison de contrôle peut se trouver et »ÑÓÑ@ñáóáÔýßn avec ºáÚ¿Úá@Ѽټ par le tableau

De contrôle ¬«¼í¿¡á@µ¿n doit se trouver et être transmise est séparé du tableau protégé

5.    

Les conditions supplémentaires

Demande la distribution préalable des clés entre les participants ¿¡@õ«Ó¼áµ¿«¡¡«ú« de l'échange

Ne demande pas »ÓÑñóáÓ¿@Ôѽý¡ÙÕ les actions

6.    

Les domaines, à qui »«ñ@Õ«ñ a l'avantage

La protection de ¡Ñßᡬµ¿«¡¿@Ó«óá¡¡ÙÕ des changements ñá¡@¡ÙÕ à leur transmission

La transmission razovaja ¼áß@ß¿ó«ó des données, le contrôle de la constance des fichiers des données et les programmes

Nous commenterons les différences : l'approche à la base de MAC demande pour le calcul de la combinaison de contrôle de la clé confidentielle, pour deuxième cela il ne faut pas. Le malfaiteur potentiel ne pourra pas calculer MAC pour le message arbitraire fabriqué par lui, mais pourra calculer MDC, puisqu'il ne faut pas pour cela d'aucunes données confidentielles, c'est pourquoi MAC peut être transmis de la source vers le récepteur par le canal ouvert, tandis que pour la transmission MDC on demande le canal protégé.

Apparemment, les avantages de la première approche sont tellement évidents que la deuxième approche ne pourra pas trouver à elle-même l'application. Cependant cela non ainsi – l'utilisation MAC demande que préalablement entre les participants de l'échange d'information on distribuait les clés. Si de cela ne s'est pas passé, le canal spécial assurant le caractère secrets et l'authenticité de l'information transmise, selon qui parallèlement avec la transmission de données par le canal non protégé on transmettra les clés est nécessaire à sa réalisation. Pour la transmission MDC on demande le canal assurant seulement l'authenticité des données transmises, l'exigence du caractère secret manque, et cela fait la méthode donnée préférable à la transmission de données à une seule fois : L'information principale est transmise par le canal ordinaire non protégé, mais MDC on communique par l'expéditeur au destinataire par le canal, qui peut être écouté mais ne peut pas être utilisé pour l'imposition des données fausses – par exemple, par la voix par téléphone – si les échangeurs sont personnellement familiers et se connaissent bien les voix. En outre l'approche à la base de la production MDC est plus simple et est confortable pour les systèmes, où la création et l'utilisation des massifs d'information sont divisée dans le temps, mais non dans l'espace, c'est-à-dire pour le contrôle de l'intégrité gardé, et non l'information transmise – par exemple, pour le contrôle de la constance des programmes et les données dans les systèmes informatiques. De plus la combinaison de contrôle (MDC) doit se trouver dans le système pour qu'exclure la possibilité de sa modification par le malfaiteur.

Les deux approches admettent la possibilité de la réalisation à la base de n'importe quel chiffre classique par blocs. De plus la sécurité du système reçu имитозащиты, certes à la condition de sa réalisation correcte, sera définie par la résistance du chiffre utilisé par blocs est une affirmation est prouvé exceptionnellement facilement. Dans deux paragraphes ultérieurs on examine les deux approches du contrôle de la constance des tableaux.

2.3. La    production du code аутентификации des messages.

La production du code аутентификации des messages avec l'utilisation de la procédure de la transformation cryptographique des données officiellement ou est semi-officiellement fixée dans plusieurs standards des algorithmes шифрования. Ainsi, par exemple, dans de divers commentaires sur le standard шифрования il est recommandé d'utiliser les États-Unis DES pour la production de la combinaison de contrôle [5]. Le standard russe шифрования la norme d'État 2814789 [6] prévoit manifestement le régime de la production имитовставки, qui est non que l'autre, comme le modèle MAC.

Le schéma de l'utilisation de la transformation cryptographique EK pour la production du code аутентификации est très simple : le message initial se brise aux blocs, puis il est successif pour chaque bloc il y a un résultat de la transformation selon l'algorithme EK побитовой les sommes du bloc selon le module 2 avec le résultat de l'exécution du pas précédent. Ainsi, nous recevons l'équation suivante pour la production de la combinaison de contrôle :

C=CK (T) =EK (T1ÅEK (T2ÅEK (... ÅEK (Tm)))).

Le schéma de l'algorithme de la production MAC est amené sur le dessin 1.

Øàã 0. Les    données d'entrée – le tableau T cassé sur m des blocs du montant fixé, le bloc égal au montant des données du chiffre utilisé (pour la plupart des chiffres les plus connus – 64 bits) : T = (T1, T2..., Tm). Le dernier bloc donné Tm par quelque moyen est complété jusqu'au bloc complet des données, si a un plus petit montant.

Øàã 1.    MAC reçoit la signification nulle initiale.

Le pas suivant de l'algorithme 2 sont accomplis successif pour chaque bloc des données initiales dans l'ordre de leur parcours.

Øàã 2. La    somme Pobitovaja selon le module 2 blocs suivants initial donné Ti c par la signification en cours MAC S subit la transformation selon l'algorithme зашифрования, le résultat devient une nouvelle signification en cours MAC.

Fig. 1. L'algorithme de la production du code аутентификации pour le tableau.

Øàã 3. Le    résultat du travail de l'algorithme MAC pour le tableau d'entrée est la dernière signification en cours MAC reçue sur le pas 2.

Nous examinerons les propriétés cryptographique »ÓÑ«í@Óẫóá¡¿® EK, utilisé pour шифрования des données, et nous définirons ceux-là d'eux, qui sont nécessaires à la production MAC :

1. La   transformation des données doit utiliser à ¬á@þÑßÔóÑ du paramètre la clé confidentielle K. Son caractère secret définit le caractère secret des données chiffrées.

2. La   transformation des données doit être ¬Ó¿»Ô«úÓáõ¿@þÑ߬¿ ferme, c'est-à-dire il n'y avoir pas exister autre possibilité de définir le bloc d'entrée de l'algorithme au jour férié connu et la clé inconnue, ou définir la clé aux blocs connus d'entrée et de sortie autrement comme par l'excédent selon les significations possibles du bloc d'entrée et la clé dans le premier et dans les deuxièmes cas en conséquence.

3. La   transformation des données doit être convertible – pour que soit réalisable la procédure расшифрования.

Si la transformation chiffrant EK est supposée d'utiliser pour la production du code аутентификации, l'exécution de la troisième propriété n'est pas demandée, puisque de plus la transformation est accomplie toujours dans un sens. En outre криптостойкость que l'algorithme de la transformation peut être un peu plus bas, qu'à шифровании, et cela n'amènera pas à la réduction de la sécurité de tout le schéma. En effet, à la production MAC à la disposition криптоаналитика il y a seulement un bloc des données – MAC, qui est la fonction à la fois tous les blocs du texte initial, mais à зашифровании dans sa disposition il y a un ensemble des blocs шифротекста, chacun de qui dépend seulement d'un bloc du texte initial. Évidemment, dans le premier cas sa tâche est beaucoup plus complexe. Notamment pour cette raison dans la norme d'État 28147–89 pour la production имитовставки est utilisé simplifié 16-raundovyj le cycle de la transformation, tandis que pour шифрования – complet 32-raundovyj.

2.4. La    production du code de la détection des manipulations.

L'approche de la production de la combinaison de contrôle du tableau avec l'aide вычислительно des fonctions irréversibles a reçu le développement seulement ces derniers temps en rapport avec l'apparition des schémas pratiques de la signature en chiffre, puisque à son origine il est le moyen du calcul de l'hesh-fonction, qui est utilisée dans tous les schémas de la signature en chiffre.

Il y a une grande quantité d'approches possibles vers la construction вычислительно des fonctions irréversibles, pratiquement toujours la plus difficile est l'argumentation de la propriété de l'irréversibilité de la fonction proposée. Il y a cependant une classe des moyens, où une telle propriété n'a pas besoin de la preuve, il suit simplement des caractéristiques de la méthode appliquée est une construction des fonctions de la transformation unilatérale à la base des chiffres classiques par blocs. L'approche donnée est connue assez il y a longtemps et est exposé dans nombre des travaux, des russes nous marquerons [7], dans sa base est ce fait que l'équation зашифрования du bloc des données selon le cycle du remplacement simple Y=EK (X) вычислительно est insoluble en ce qui concerne la clé K est est la propriété intégrante de chacun en effet le chiffre ferme. Même à connu ouvert (X) et chiffré (Y) les blocs la clé K ne peut pas être définie autrement comme par l'excédent selon la multitude de significations possibles. L'algorithme de la production de la combinaison de contrôle pour le tableau T le suivant :

· le      tableau T se brise aux blocs du montant fixé égal au montant de la clé du chiffre utilisé :

T = (T1, T2..., Tm);

|T1 | = | T2 | =... = |Tm1 | = | K |, 0 <|Tm|£|K |.

·      en cas de nécessité le dernier bloc (incomplet) est complété avec quelque image jusqu'au bloc du montant complet;

·      MDC ou хэш les messages est calculé selon la formule suivante :

C=H (T) =ETm (ETm–1 (... ET1 (S))),

S – le remplissage initial de l'algorithme – peut sortir arbitrairement, croient d'habitude S=0;

Il est facile de prouver que la tâche de la sélection du tableau T ' = (T ' 1, T ' 2..., T'm ') sous la combinaison donnée de contrôle C est équivalente au système suivant des équations de la sélection de la clé pour les blocs donnés d'entrée et de sortie des données криптоалгоритма :

ET ' 1 (S) =S1,

ET ' 2 (S1) =S2,

...

ET'm ' (Sm '–1) =C,

Il n'y a pas de nécessité de décider à la fois toutes ces équations en ce qui concerne la clé Ti ' – tous les blocs du tableau T ', excepté un, peuvent être choisis arbitraire est définira, toutes les significations Si, et seulement un, chacun d'eux, doit être défini par la décision de l'équation correspondante ET'i (Si–1) =Si relativement T'i. Puisque la tâche donnée вычислительно est insoluble en vertu de l'utilisation криптостойкого de l'algorithme шифрования, le schéma proposé du calcul MDC possède la résistance garantie égale à la résistance du chiffre utilisé.

Cependant le schéma donné ne prend pas en considération le problème des clés du code marginales, qui consiste en suivant : il y avoir exister quelques clés, avec l'utilisation de laquelle à зашифровании les blocs identiques du texte ouvert sont traduits aux blocs identiques шифротекста :

EK1 (X) =EK2 (X) à certains X et K1 ¹ K2.

Une de ces clés – celui-là, sur qui était passé зашифрование – "véritable", mais l'autre – "marginal". Ainsi, la clé marginale pour un certain bloc des données X et une certaine clé véritable K s'appelle la clé K ', qui donne l'exactement même résultat зашифрования du bloc X que la clé véritable K : EK ' (X) =EK (X). Clairement que pour de divers blocs du tableau initial les clés marginales aussi dans le cas total sont diverses – la probabilité rencontrer une paire des clés traduisant simultanément quelques paires des blocs identiques des textes ouverts aux vapeurs des blocs identiques шифротекстов précipitamment diminue avec la croissance du nombre de ces paires. C'est pourquoi la détection de la clé marginale криптоаналитиком au décodage du message n'est pas son succès spécial, puisque avec la probabilité un peu se distinguant de 1, sur cette clé trouvée il ne peut pas correctement déchiffrer aucuns autres blocs шифротекста. Une tout à fait autre affaire dans l'algorithme de la production MDC – ici la détection de la clé marginale signifie que le malfaiteur a choisi tel faux, c'est-à-dire le bloc manquant dans le message des données, l'utilisation de qui amène vers véritable MDC du tableau initial.

Pour diminuer la probabilité de l'imposition des données fausses dans la présence des clés marginales, dans les pas de la transformation cryptographique on applique les blocs non eux-mêmes du message initial, mais le résultat de leur élargissement selon un certain schéma. Le schéma расширениея est considéré ici la procédure de la construction des blocs des données du montant plus grand des blocs des données du plus petit montant. De l'exemple peut servir, par exemple, la fonction de l'élargissement, à qui bloc de sortie est construite d'octets (ou 2-, 4... Etc. les mots de * octets) le bloc initial, énuméré en divers ordre. L'élargissement indiqué se trouve appliquer, si le montant de la clé du chiffre utilisé à excède plusieurs fois le montant de son bloc des données. Ainsi, pour l'algorithme DES, avec le montant du bloc des données de 64 bits et la clé de 56 bits dans l'élargissement il n'y a pas de nécessité. Si dans le schéma on utilise l'algorithme la norme d'État 28147–89 avec le montant du bloc de 64 bits et le montant de la clé de 256 bits, se trouve utiliser 64 ou les blocs de 128 bits du texte initial et les élargir jusqu'aux montants de 256 bits. L'exemple de la fonction de l'élargissement du bloc de 128 bits à de 256 bits peut être, par exemple, le suivant :

Le bloc initial : T = (B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13, B14, B15, B16),

Après l'élargissement : P (T) = (B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13, B14, B15, B16,

B1, B4, B7, B10, B13, B16, B3, B6, B9, B12, B15, B2, B5, B8, B11, B14),

Bi octets du bloc des données, |Bi | = 8.

Le schéma de l'algorithme de la production (hesh-code) MDC avec l'utilisation du chiffre classique par blocs est amené sur le dessin 2.

Fig. 2. L'algorithme de la production du code de la détection manipu - ляций pour le tableau.

Øàã 0. Les    données d'entrée – le tableau T cassé sur m des blocs du montant fixé, la clé n'excédant pas le montant utilisé криптоалгоритма et, en général, divisant lui нацело : T = (T1, T2..., Tm). Le dernier bloc donné Tm par quelque moyen est complété jusqu'au bloc complet des données, si a un plus petit montant.

Øàã 1.    MDC reçoit la signification nulle initiale (cette signification peut être, en principe, chacun).

Les pas ultérieurs 2 et 3 algorithmes sont accomplis successif pour chaque bloc des données initiales dans l'ordre de leur parcours.

Øàã 2.    On accomplit l'élargissement du bloc suivant Ti des données avec l'aide de la fonction de l'élargissement P jusqu'au montant de la clé du code.

Øàã 3.    Est accompli зашифрование de la signification en cours MDC sur la clé reçue sur le pas 2, le résultat devient une nouvelle signification en cours MDC.

Øàã 4. Le    résultat du travail de l'algorithme (i.e. MDC pour tout le tableau d'entrée) est la dernière signification en cours MDC reçue sur le pas 3.

L'algorithme examiné peut être utilisé aussi pour la production de l'hesh-code dans les schémas de la signature en chiffre.

3. La    signature en chiffre à la base des chiffres traditionnels par blocs.

À première vue, cette idée elle-même peut se montrer par l'absurde. En effet, notoirement que soi-disant "moderne", elle la cryptographie deuxclé est apparue et a commencé à se développer vite aux dernières décennies justement puisque l'on ne réussit pas à réaliser une série de nouveaux procès-verbaux cryptographiques comme le procès-verbal de la signature en chiffre, à qui est apparue l'extrême nécessité en rapport avec la pénétration des technologies électroniques aux nouvelles sphères, sur la base de traditionnel криптоалгоритмов, largement connu et bien étudié pour ce moment-là. Néanmoins, c'est possible. Et les premiers, qui a fait l'attention à une telle possibilité, étaient … les fondateurs de la cryptographie avec la clé ouverte d'U.Diffi (W.Diffie) et M.E.Hellman (M.E.Hellman). Dans le travail [8] ils ont publié la description de l'approche, permettant d'accomplir la procédure de la signature en chiffre d'un bit avec l'aide du chiffre par blocs. Avant d'exposer cette idée élégante, nous ferons quelques remarques sur l'essentiel et les réalisations de la signature en chiffre.

3.1.    Qu'est-ce que c'est la signature en chiffre.

Donc, le schéma de la signature en chiffre ou la signature elektronno-en chiffre est un ensemble des algorithmes et les procès-verbaux [1], permettant de construire la coopération d'information entre deux et plus participants pour que le fait de la paternité du tableau transmis "signé" par un des participants, puisse être de façon certaine confirmé ou démentiront par le tiers, «l'arbitrage indépendant». Le schéma semblable est nécessaire à tous les systèmes du traitement des données électronique, où il n'y a pas de confiance mutuelle complète entre les participants du procès d'information, avant tout cela concerne la sphère financière. N'importe quel schéma de la signature en chiffre suppose le supplément au tableau "signé" du code supplémentaire – proprement «la signature en chiffre», élaborer qui peut seulement l'auteur du message possédant la clé confidentielle de la signature, mais tous les autres peuvent seulement contrôler la conformité de cette "signature" aux données signées. C'est pourquoi chaque schéma doit prévoir, au minimum, la définition de trois algorithmes suivants :

1. L'   algorithme GK de la production des paire des clés – les signatures KS et les contrôles de la signature KC avec l'utilisation du vecteur des paramètres accidentels R : (KS, KC) =GK (R), ici :

KS – la clé de la signature, il doit être connu à seulement signant;

KC – la clé du contrôle de la signature, il n'est pas confidentiel et est accessible à chacun, qui doit avoir la possibilité de contrôler la paternité des messages.

2. L'   algorithme S de la signature du message T avec l'utilisation de la clé confidentielle de la signature KS :

s=S (T, KS),

s – la signature en chiffre du message;

3. L'   algorithme de V contrôle de la signature avec l'utilisation de la clé du contrôle de la signature KC, donnant à titre du résultat la signification booléenne – se confirme ou ne se confirme pas la paternité du message :

V (T, s, KC) Î {0,1}.

Pratiquement le résultat logique reçoivent toujours comme le résultat de la comparaison de deux nombres, ou les codes, ou les blocs des données – les paroles sur même. Pratiquement dans tous les schémas connus de la signature en chiffre c'est la comparaison produisent comme il suit :

·      calculent la combinaison de contrôle selon un certain algorithme C avec l'utilisation du message signé et la signature en chiffre :

c=C (T, s);

·      comparent la combinaison de contrôle c et la clé du contrôle de la signature KC, s'ils coïncident, la signature est reconnue fidèle, mais les données – original, dans le cas contraire les données sont considérées fausses.

À proprement parler, il suffit trois algorithmes indiqués pour la réalisation du schéma de la signature en chiffre, cependant pratiquement aux schémas ajoutent encore un algorithme – la fonction de la production de l'hesh-bloc pour le tableau signé T. La plupart des algorithmes cryptographiques manient les blocs des données du montant fixé, mais les massifs du montant plus grand travaillent par parties qu'est nécessaire pour la garantie de l'efficacité et la sécurité de ces schémas. Si la même approche était utilisée à la production de la signature en chiffre, les blocs des massifs de l'information signeraient séparément l'un de l'autre, et le montant de la signature se serait trouvé comparé d'un montant de signé du tableau qu'il n'est pas confortable naturellement. C'est pourquoi dans les schémas pratiques ЭЦП signe le message non lui-même, mais son hesh-code, c'est-à-dire le résultat du calcul de la fonction de la compression irréversible pour ce massif, qui a le montant fixé. Ainsi, au schéma ЭЦП on ajoute le quatrième algorithme :

4. L'   algorithme H du calcul de l'hesh-fonction irréversible pour les massifs signés :

h=H (T).

L'algorithme du calcul de l'hesh-fonction et d'autres algorithmes du schéma ne dépendent pas l'un de l'autre et s'accorderont seulement selon le montant des blocs, qui ils manient. Cela permet en cas de nécessité de changer dans le schéma de la signature le moyen du calcul des hesh-significations.

Pour le schéma apte au travail de la signature elektronno-en chiffre l'exécution des conditions suivantes est nécessaire :

·      personne, excepté la personne possédant la clé confidentielle de la signature KS, ne peut correctement signer le message donné T;

Puisque la partie contrôlant la signature, possède la clé ouverte KC du contrôle de la signature, de la propriété indiquée il faut que ne doit pas exister вычислительно de l'algorithme effectif du calcul de la clé confidentielle KS selon ouvert KC.

·      personne, y compris la personne possédant la clé de la signature, non dans l'état de construire le message T ', approchant sous d'avance signature donnée s.

À la proposition de quelque schéma de la signature il est nécessaire de prouver les deux ces propriétés que quelque autre, qui on sait se fait d'habitude par la preuve de l'équivalence de la tâche correspondante de l'ouverture du schéma qu'elle вычислительно est insoluble. Pratiquement tous les algorithmes modernes de la signature en chiffre et d'autres schémas de «la cryptographie moderne» sont fondés sur soi-disant «les tâches complexes mathématiques» comme la factorisation des plus grands nombres ou логарифмирования dans les champs discontinus. Cependant la preuve de l'impossibilité de la décision effective calculatoire de ces tâches manque, et il n'y a d'aucunes garanties qu'ils ne seront pas décidés dans un proche avenir, mais les schémas correspondants sont forcés – comme cela s'est passé avec «ранцевой» par le schéma de la signature en chiffre [9]. De plus, avec le progrès orageux des moyens des équipements informatiques «les frontières de la sécurité» les méthodes s'éloignent au domaine tout de grands montants du bloc. Au total à la vapeur des décennies en arrière, à l'aube de la cryptographie avec la clé ouverte on croit que pour la réalisation du schéma de la signature RSA il suffit 128 ou même битовых les nombres. Maintenant cette frontière est éloignée jusqu'aux nombres de 1024 bits – pratiquement dix fois, – et c'est éloigné pas encore la limite. S'il faut expliquer qu'avec chaque tel "changement" il faut reconstruire l'équipement et recopier les programmes réalisant le schéma. La chose semblable est absente de rien dans le domaine des chiffres classiques par blocs, sans compter la décision initialement déficiente et incompréhensible du comité des standards des États-Unis de limiter le montant de la clé de l'algorithme DES des 56-ème bits, tandis qu'encore pendant la discussion de l'algorithme était proposé d'utiliser la clé du montant plus grand [5]. Les schémas de la signature fondé sur les chiffres classiques par blocs, sont libres des manques indiqués :

·      premièrement, leur résistance aux tentatives de l'effraction découle de la résistance du chiffre utilisé par blocs;

S'il faut dire que les méthodes classiques шифрования sont étudiées beaucoup plus, mais leur sécurité est incommensurablement argumentée mieux, que la sécurité des méthodes de «la cryptographie moderne».

·      deuxièmement, même si la résistance utilisé dans le schéma de la signature du chiffre se trouvera des équipements informatiques insuffisants sous le jour du progrès, lui on pourra remplacer facilement sur autre, plus stable, avec le même montant du bloc des données et la clé, changer sans nécessité les caractéristiques principales de tout le schéma est demandera seulement la modification minimale du logiciel;

3.2. L'    idée de base de Diffi et Hellmana.

Donc, nous reviendrons au schéma de Diffi et Hellmana de la signature d'un bit du message avec l'aide de l'algorithme fondé sur n'importe quel chiffre classique par blocs. Nous supposerons, il y a à notre disposition un algorithme зашифрования EK, maniant les blocs des données de X montant n et la clé utilisant par le montant nK : |X | = n, |K | = nK. La structure de l'information clé dans le schéma la suivante :

· la      clé confidentielle de la signature KS sort comme la paire arbitraire des clés K0, K1 du chiffre utilisé par blocs :

KS = (K0, K1);

Ainsi, le montant de la clé de la signature est égal au montant doublé de la clé du chiffre utilisé par blocs :

|KS | = 2|K | = 2nK

· la      clé du contrôle est calculée comme la paire des blocs криптоалгоритма selon les équations suivantes :

KC = (C0, C1), où :

C0=EK0 (X0), C1=EK1 (X1),

Où on savent les schémas étant le paramètre les blocs des données X0 et X1 несекретны à la partie contrôlant la signature.

Ainsi, le montant de la clé du contrôle de la signature est égal au montant doublé du bloc du chiffre utilisé par blocs :

|KC | = 2|X | = 2n.

Les algorithmes du schéma de la signature en chiffre de Diffi et Hellmana les suivants :

1. L'   algorithme G de la production de la paire clé :

Nous prenons le bloc accidentel des données du montant 2nK, ce et sera la clé confidentielle de la signature :

KS = (K0, K1) =R.

La clé du contrôle de la signature est calculée comme le résultat de deux cycles зашифрования selon l'algorithme EK :

KC = (C0, C1) = (EK0 (X0), EK1 (X1)).

2. L'   algorithme S de la production de la signature en chiffre pour le bit t (t Î {0,1}) consiste simplement en choix de la moitié correspondante d'une paire faisant la clé confidentielle de la signature :

s=S (t) =Kt.

3. L'   algorithme de V contrôle de la signature comprend dans le contrôle de l'équation EKt (Xt) =Ct, qui, évidemment, doit être accompli pour notre t. Le destinataire sait toutes les valeurs utilisées :

Kt=s – La signature en chiffre du bit,

Ct – la moitié correspondante de la clé du contrôle,

Xt – le paramètre non confidentiel de l'algorithme.

Ainsi, la fonction du contrôle de la signature sera suivant :

.

Si non la vérité, tous trois algorithmes de ce schéma étonnamment la simplicité dans la comparaison avec les schémas RSA et l'ale-gamalja ?! Nous montrerons que le schéma donné est apte au travail, pour quoi nous contrôlerons l'exécution des propriétés nécessaires du schéma de la signature en chiffre :

1. L'   impossibilité de signer le bit t, si la clé de la signature est inconnue.

En effet, pour l'exécution de cela au malfaiteur serait nécessaire de décider l'équation Es (Xt) =Ct relativement s, cette tâche est équivalente à la définition de la clé pour le bloc connu шифротекста et le texte ouvert lui correspondant que вычислительно il est impossible en vertu de l'utilisation du chiffre ferme.

2. L'   impossibilité de choisir une autre signification du bit t, qui s'approcherait sous la signature donnée est évidente, parce que le nombre des significations possibles du bit seulement deux et la probabilité de l'exécution de deux conditions suivantes simultanément пренебрежимо est petite à simplement en vertu de l'utilisation криптостойкого de l'algorithme :

Es (X0) =C0,

Es (X1) =C1.

Ainsi, Diffi proposé et Hellmanom le schéma de la signature en chiffre à la base du chiffre classique par blocs криптостойка tellement, autant des comptoirs le chiffre utilisé, et est très simple de plus. Maintenant c'est le moment idéal raconter, pourquoi ce schéma remarquable n'a pas trouvé l'application un peu considérable pratique. Le fait est qu'elle a deux manques. Seulement deux, mais quel!

Le premier manque se jette à la fois aux yeux – il consiste en ce que le schéma donné permet de signer seulement un bit de l'information. Dans le bloc du montant plus grand il faut séparément signer chaque bit, c'est pourquoi même en tenant compte de хеширования les messages tous les composants de la signature – la clé confidentielle, la combinaison de contrôle et proprement la signature résultent assez grand selon le montant et plus que sur deux ordres surpassent le montant du bloc signé. Nous supposerons que dans le schéma on utilise l'algorithme cryptographique EK avec le montant du bloc et la clé, exprimé aux bits, en conséquence n et nK. Nous supposerons aussi que le montant de l'hesh-bloc en schéma est égal nH. Alors les montants des blocs principaux ouvriers seront les suivants :

· le      montant de la clé de la signature :

nS=nH×2nK=2nHnK.

· le      montant de la clé du contrôle de la signature :

nС=nH×2n=2nHn.

· le      montant de la signature :

nSg=nH×nK=nHnK.

Si, par exemple, à titre de la base dans le schéma donné on utilise le chiffre la norme d'État 28147–89 avec le montant du bloc n=64 le bat et le montant de la clé nK=256 le bit, et pour la production des hesh-blocs on utilise le même chiffre en régime de la production MDC que donnera le montant de l'hesh-bloc nH=64 cela les montants des blocs ouvriers seront les suivants :

· le      montant de la clé de la signature :

nS=nH×2nK=2nHnK=2×64×256=215 Le bit = 4096 octet.

· le      montant de la clé du contrôle de la signature :

nС=nH×2n=2nHn=2×64×64=213 Le bit = 1024 octets.

· le      montant de la signature :

nSg=nH×nK=nHnK=64×256=214 Le bit = 2048 octet.

Acceptez, assez lourd ключики.

Le deuxième manque du schéma donné, peut être, est moins balayé, par contre est beaucoup plus sérieux. Le fait est qu'une paire des clés de la signature et le contrôle dans elle à une seule fois! En effet, l'exécution de la procédure de la signature du bit du message amène au dévoilement de la moitié de la clé confidentielle, après quoi il n'est pas déjà entièrement confidentiel et ne peut pas être utilisé de nouveau. C'est pourquoi l'assortiment des clés de la signature et le contrôle est nécessaire à chaque message signé. Cela exclut la possibilité de l'utilisation pratique du schéma examiné de Diffi-Hellmana dans la variante primordialement proposée dans les systèmes réels ЭЦП.

En vertu de deux manques indiqués proposé les schémas jusqu'au temps relativement récent était examinée seulement comme la possibilité curieuse théorique, personne n'examinait sérieusement la possibilité de son utilisation pratique. Cependant il y a quelques années dans le travail [7] on proposait la modification du schéma de Diffi-Hellmana éliminant en réalité ses manques. Dans le vrai travail le schéma donné n'est pas examiné dans tous les détails, on expose ici seulement les principes de base de l'approche de la modification du schéma initial de Diffi-Hellmana et la description des algorithmes travaillant.

3.3. La    modification du schéma de Diffi-Hellmana pour la signature битовых des groupes.

Dans le paragraphe donné on expose les idées des auteurs [7], permettant de passer de la signature des bits séparés aux schémas initiaux de Diffi-Hellmana à la signature битовых des groupes. Central dans cette approche est l'algorithme "du défilement unilatéral cryptographique», qui peut servir dans une certaine mesure de l'analogue de l'opération de la construction au degré. Comme d'habitude, nous supposerons qu'il y a à notre disposition un algorithme cryptographique EK avec le montant du bloc des données et la clé en conséquence n et nK des bits, et en outre le montant du bloc des données n'excède pas le montant de la clé : n£nK. Qu'à notre disposition il y a aussi une certaine fonction de "l'élargissement" des blocs de n bits des données à de nK bits Y=Pn®nK (X), |X | = n, |Y | = nK. Nous définirons la fonction Rk «le défilement unilatéral» le bloc donné T par le montant n le bit k une fois (k³0) avec l'aide de suivant рекурсивной les formules :

X – le bloc arbitraire non confidentiel de n bits des données étant le paramètre de la procédure du défilement. Selon l'idée la fonction du défilement unilatéral est extraordinairement simple, il faut seulement la quantité nécessaire de fois (k) accomplir les actions suivantes : élargir le bloc de n bits des données T jusqu'au montant de la clé utilisé криптоалгоритма (nK), sur le bloc reçu élargi comme sur la clé chiffrer le bloc des données X, le résultat зашифрования apporter à la place du bloc initial des données (T). En vertu de la définition l'opération Rk (T) possède deux extrêmement importantes propriétés pour nous :

1.   Аддитивность d'après le nombre les défilements :

Rk+k ' (T) =Rk ' (Rk (T)).

2. L'   exclusivisme ou l'irréversibilité du défilement : si on sait seulement une certaine signification de la fonction Rk (T), вычислительно il est impossible de trouver la signification Rk ' (T) pour chacun k ' <k – si c'était possible, il y avait à notre disposition un moyen de définir la clé шифрования selon le bloc connu d'entrée et de sortie криптоалгоритма EK. Que contredit la supposition selon la résistance du chiffre.

Maintenant montreront, comment on peut utiliser l'opération indiquée pour la signature du groupe des bits : nous exposerons la description du schéma de la signature du bloc T comprenant de nT des bits, selon l'exactement même schéma, selon qui dans le paragraphe précédent fait un lapsus le schéma de la signature d'un bit.

· la      clé confidentielle de la signature KS sort comme la paire arbitraire des blocs K0, K1, ayant le montant du bloc des données du chiffre utilisé par blocs :

KS = (K0, K1);

Ainsi, le montant de la clé de la signature est égal au montant doublé du bloc des données du chiffre utilisé par blocs :

|KS | = 2n;

· la      clé du contrôle est calculée comme la paire des blocs ayant le montant des blocs des données utilisés криптоалгоритма selon les formules suivantes :

KC = (C0, C1), où :

C0=R2nT1 (K0), C1=R2nT1 (K1).

Dans ces calculs on utilise aussi les blocs non confidentiels des données X0 et X1, les fonctions étant les paramètres "du défilement unilatéral», ils doivent être absolument divers.

Ainsi, le montant de la clé du contrôle de la signature est égal au montant doublé du bloc des données du chiffre utilisé par blocs :

|KC | = 2n.

Les algorithmes [des 7] schémas modifiés par les auteurs de la signature en chiffre de Diffi et Hellmana les suivants :

1. L'   algorithme G de la production de la paire clé :

Nous prenons le bloc accidentel des données du montant convenant 2n, ce et sera la clé confidentielle de la signature :

KS = (K0, K1) =R.

La clé du contrôle de la signature est calculée comme le résultat "du défilement unilatéral» deux moitiés correspondantes de la clé confidentielle de la signature sur le nombre égal à la signification maxima possible numérique du bloc de nT bits des données, c'est-à-dire sur 2nT–1.

KC = (C0, C1) = (R2nT–1 (K0), R2nT–1 (K1)).

2. L'   algorithme SnT de la production de la signature en chiffre pour le bloc de nT bits T limité, selon la signification, la condition 0£T£2nT–1, consiste en exécution "du défilement unilatéral» les deux moitiés de la clé de la signature T et 2nT–1T une fois en conséquence :

s=SnT (T) = (s0, s1) = (RT (K0), R2nT–1–T (K1)).

3. L'   algorithme VnT du contrôle de la signature comprend dans le contrôle de l'authenticité des rapports :

R2nT–1–T (s0) =C0, RT (s1) =C1, qui, évidemment, doivent être accomplis pour le bloc original des données T :

R2nT–1–T (s0) =R2nT–1–T (RT (K0)) =R2nT–1–T+T (K0) =R2nT–1 (K0) =C0,

RT (s1) =RT (R2nT–1–T (K1)) =RT+2nT–1–T (K1) =R2nT–1 (K1) =C1.

Ainsi, la fonction du contrôle de la signature sera suivant :

Nous montrerons que pour le schéma donné on accomplit les conditions sine qua non de la capacité de travail du schéma de la signature :

1.   Nous supposerons qu'à la disposition du malfaiteur il y a un bloc de nT bits T, sa signature s = (s0, s1), et la clé du contrôle KC = (C0, C1). En se servant de cette information, le malfaiteur tente de trouver la signature juste s' = (s ' 0, s ' 1) pour un autre bloc de nT bits T '. Pour cela il doit décider les équations suivantes relativement s ' 0 et s ' 1 :

R2nT–1–T ' (s ' 0) =C0,

RT ' (s ' 1) =C1.

À la disposition du malfaiteur il y a un bloc des données T avec la signature s = (s0, s1), et cela lui permet de calculer une des significations s ' 0, s ' 1, sans posséder la clé de la signature :

(a)   Si T <T ', s ' 0=RT ' (K0) =RT 'T (RT (K0)) =RT 'T (s0),

(b)   Si T> T ', s ' 1=R2nT–1–T ' (K1) =RTT ' (R2nT–1–T (K1)) =RTT ' (s1).

Cependant pour la présence de la deuxième moitié de la signature (s ' 1 en cas de (a) et s ' 0 en cas de (b)) il lui est nécessaire d'accomplir le défilement en sens inverse, i.e. trouver Rk (X), en disposant seulement de la signification pour plus grand k : Rk ' (X), k '> k qu'est вычислительно impossible. Ainsi, le malfaiteur ne peut pas falsifier la signature sous le message, si ne dispose pas de la clé confidentielle de la signature.

2. La   deuxième exigence est accomplie aussi : la probabilité choisir le bloc des données T ', excellent du bloc T, mais par la même signature possédant en chiffre, est extraordinairement petite et peut ne pas être pris en considération. En effet, que la signature en chiffre des blocs T et T ' coïncide. Alors les signatures des deux blocs seront égales en conséquence :

s=SnT (T) = (s0, s1) = (RT (K0), R2nT–1–T (K1)),

s' = SnT (T ') = (s ' 0, s ' 1) = (RT ' (K0), R2nT–1–T ' (K1)),

s=s', donc :

RT (K0) =RT ' (K0) ET R2nT–1–T (K1) =R2nT–1–T ' (K1).

Nous mettrons pour la précision T£T ', alors suivant justement :

RT 'T (K0 *) = K0 *, RT 'T (K1 *) = K1 *,K0 * = RT (K0), K1 * = R2nT–1–T ' (K1)

La dernière condition signifie que le défilement de deux divers blocs des données le même nombre des fois laisse leurs significations invariable. La probabilité d'un tel événement est extraordinairement petite et peut ne pas être pris en considération.

La modification ainsi examinée du schéma de Diffi-Hellmana rend possible la signature de non un bit, mais entier битовой les groupes. Cela permet à plusieurs fois de diminuer le montant de la signature et les clés de la signature/contrôle du schéma donné. Il faut comprendre cependant que l'augmentation du montant signé битовых des groupes amène à la croissance exponentielle du volume des calculs nécessaires et à partir d'une certaine signification fait le travail du schéma est inadmissible par l'inefficace. La frontière "du montant raisonnable» le groupe signé se trouve quelque part à côté de восемью aux bits, et il est nécessaire de signer les blocs du montant plus grand en tout cas "par parties".

Maintenant nous trouverons les montants des clés et la signature, ainsi que le volume nécessaire à la réalisation du schéma des calculs. Que le montant de l'hesh-bloc et le bloc du chiffre utilisé soient identiques et égaux n, mais le montant signé битовых des groupes est égal nT. Nous supposerons aussi que si le dernier groupe contient un plus petit nombre des bits, elle est travaillée en tout cas comme le groupe complet de nT bits. Alors les montants des clés de la signature/contrôle et la signature coïncident et sont égaux à la valeur suivante :

Le bit,

éxù désigne l'arrondissement du nombre x jusqu'à l'entier plus proche à l'écart de l'augmentation. Le nombre des opérations шифрования EK (X), demandé pour la réalisation des procédures du schéma, sont définis par les rapports suivants :

· à la      production de l'information clé il est égal :

,

· à la      signature et le contrôle de la signature il est deux fois plus petit :

.

Dans le tableau suivant plus bas 2 on amène les significations comptées des montants des clés et la signature, et les nombres des opérations demandées шифрования en fonction du montant signé битовых des groupes à la condition de l'utilisation par blocs криптоалгоритма avec le montant du bloc n=64 le bat :

Le tableau 2. Les paramètres numériques du schéma de la signature en fonction du montant битовых des groupes.

nT

Le nombre du bats.

Le montant de la signature et les clés, octet

Le nombre des opérations шифрования

 

Des groupes

|KS | = | KC | = | s |

WK

WS=WC

1      

64

1024

128

64

2      

32

512

192

96

3      

22

352

308

154

4      

16

256

480

240

5      

13

208

806

403

6      

11

176

1386

693

7      

10

160

2540

1270

8      

8

128

4080

2040

9      

8

128

8176

4088

10  

7

112

14322

7161

11  

6

96

24564

12282

12  

6

96

49140

24570

13  

5

80

81910

40955

14  

5

80

163830

81915

15  

5

80

327670

163835

16  

4

64

524280

262140

On peut en supplément diminuer le montant de la clé de la signature et le contrôle de la signature par les accueils suivants :

1.   Il n'y a pas de nécessité de garder les clés de la signature séparés битовых des groupes, on peut dynamiquement les élaborer au moment nécessaire du temps avec l'aide du générateur криптостойкой les gammes. La clé de la signature dans ce cas sera la clé ordinaire utilisé au schéma de la signature du chiffre par blocs. Pour la norme d'État 28147–89 ce montant est égal à 256 bits, c'est pourquoi si le schéma de la signature sera construit sur la norme d'État, le montant de la clé de la signature sera égal aux mêmes 256 bits.

2.   Exactement aussi, il n'y a pas de nécessité de garder le massif des clés du contrôle de la signature séparés битовых des groupes du bloc, il suffit de garder son hesh-combinaison. De plus l'algorithme de la production de la clé de la signature et l'algorithme du contrôle de la signature seront complété avec encore un pas – le calcul de l'hesh-code pour le massif des combinaisons de contrôle séparés битовых des groupes.

Ainsi, le problème du montant des clés et la signature est entièrement décidé, cependant, un principal manque du schéma – одноразовость des clés – n'est pas surmonté, puisque c'est impossible dans le cadre de l'approche de Diffi-Hellmana. Pour l'utilisation pratique d'un tel schéma compté sur la signature N des messages, l'expéditeur il est nécessaire de garder N des clés de la signature, mais le destinataire – N des clés du contrôle qu'est assez incommode. Cependant ce problème peut être décidé dans l'exactitude ainsi que l'on décidait le problème des clés pour multiple битовых des groupes – la génération des clés de la signature pour tous N des messages d'une maître clé et l'enroulement de toutes les combinaisons de contrôle à une combinaison de contrôle avec l'aide de l'algorithme de la production de l'hesh-code. Une telle approche déciderait le problème du montant des clés gardées, amènerait cependant à la nécessité ensemble par la signature de chaque message d'expédier manquant N–1 des combinaisons de contrôle nécessaires au calcul de l'hesh-code du massif de toutes les combinaisons de contrôle des messages séparés. Clairement qu'une telle variante ne possède pas les avantages en comparaison d'initial. Cependant à [7] on proposait le mécanisme permettant considérablement réduire l'acuité du problème. Son idée principale – calculer la combinaison de contrôle (la clé du contrôle de la signature) non comme хэш du massif linéaire des combinaisons de contrôle de tous les messages, mais par deux – avec l'aide de l'arbre binaire. À chaque niveau la combinaison de contrôle est calculée comme хэш de deux combinaisons de contrôle du niveau cadet. Plus haut niveau de la combinaison, plus clés séparées du contrôle dans elle "est pris en considération". Nous supposerons que notre schéma est compté sur 2L des messages. Nous désignerons par Ci (l) I combinaison de L niveaux. Si le numérotage des combinaisons et les niveaux commencer par le zéro, la condition suivante justement : 0£i <2L–l, mais I combinaison de contrôle de L niveaux est comptée sur 2l des messages avec les numéros de i×2l jusqu'à (i+1) ×2l–1 y compris. Le nombre des combinaisons du niveau inférieur nul également 2L, mais les supérieurs L niveaux, – une, elle est la combinaison de contrôle de tous 2L des messages, sur qui on compte le schéma. À chaque niveau, à partir du premier, les combinaisons de contrôle paient selon la formule suivante :

Ci (l+1) =H (C2 (il) || C2 (il) +1),

Où par A || B on désigne le résultat конкатенации de deux blocs des données – A et B, mais par H (X) – la procédure du calcul de l'hesh-code du bloc des données X.

À l'utilisation de l'approche indiquée avec la signature du message ¡Ñ«íÕ«ñ¿@¼« transmettre non N–1, comme dans la variante initiale, mais seulement log2N des combinaisons de contrôle. On doit transmettre les combinaisons correspondant aux branches contiguës de l'arbre sur la voie du sommet final, à la signature utilisée correspondant au numéro, vers la racine.

Le niveau

аааааа 3 : C0 (3)

аааааа 2 : C0 (2) ааааааааааааааааааааааааааааааааааааа C1 (2)

аааааа 1 : C0 (1) ааааааааааааааа C1 (1) ааааааааааааааа C2 (1) ааааааааааааааа C3 (1)

аааааа 0 : C0 (0) C1 (0) C2 (0) C3 (0) C4 (0) C5 (0) C6 (0) C7 (0)

Fig. 3. Le schéma mutuel des points deux a deux хеширования de contrôle ааааааааааа des combinaisons à la production de la clé totale ааааааааааа les contrôles de la signature.

Le schéma mutuel des points deux a deux ÕÑÞ¿Ó«óá@¡¿n des combinaisons de contrôle à la production de la clé totale du contrôle de la signature sur huit messages »Ó¿@óÑñÑ¡á sur le dessin 3. Ainsi, dans le schéma à 8 messages à la transmission ß««íÚÑ@¡¿n №5 (la combinaison de contrôle est mise en relief par le cadre) avec lui »«ñ@»¿ßý¯ doivent être transmis ¬«¡@ÔÓ«½ý¡án la combinaison du message №4 (C4 (0)), total aux messages №№ 6–7 (C3 (1)) et total pour ß««íÚÑ@¡¿® №№ 0–3 (C0 (2)), eux óÙñѽÑ@¡Ù sur le dessin par l'autre fond. Au contrôle de la signature la signification C5 (0) sera calculée du message et sa signature, mais la combinaison finale de contrôle étant passible de la comparaison avec d'étalon, selon la formule suivante :

C=C0 (3) =H (C0 (2) || H (H (C4 (0) || C5 (0)) || C3 (1))).

Les numéros des combinaisons de contrôle de chaque niveau, qui doivent être transmis avec la signature du message avec le numéro i (0£i <2L), sont calculés selon la formule suivante : Cë (il/) 2lûÅ1, l=0..., L–1, où xÅ1 signifie le nombre résultant à la suite de l'inversion du bit cadet dans le nombre x.

La nécessité d'expédier avec la signature du message l'information supplémentaire nécessaire pour le contrôle de la signature, est pas trop accablante en fait. En effet, dans le système sur 1024=210 des signatures avec le message et sa signature il est nécessaire en supplément de transmettre 10 combinaisons de contrôle, mais dans le système sur 1048576=220 des signatures – seulement 20 combinaisons. Cependant à un grand nombre des signatures, sur qui on compte le système, apparaît un autre problème – la conservation des combinaisons supplémentaires, s'ils sont comptés préalablement, ou leur production au moment de la formation de la signature.

Les combinaisons supplémentaires de contrôle, qui sont transmises avec la signature et sont utilisées à son contrôle, sont élaborés à la formation de la clé du contrôle selon la clé de la signature et peuvent se trouver dans le système et être utilisé au moment de la formation de la signature, ou être calculé de nouveau à ce moment. La première approche suppose les dépenses de la mémoire de disque, puisqu'il est nécessaire de garder 2L+1–2 des hesh-combinaisons de tous les niveaux, mais deuxième demande un grand volume des calculs au moment de la formation de la signature. On peut utiliser et l'approche de compromis – garder toutes les hesh-combinaisons à partir d'un certain niveau l *, mais les combinaisons du plus petit niveau calculer à la formation de la signature. Dans le schéma examiné plus haut de la signature sur 8 messages on peut garder tout les 14 combinaisons de contrôle utilisées au contrôle (tout de ceux-ci 15, mais supérieur n'est pas utilisé), alors au contrôle de la signature il ne faudra pas les calculer de nouveau. On peut garder 6 combinaisons à partir du niveau 1 (C0 (1), C1 (1), C2 (1), C3 (1), C0 (2), C1 (2)), alors au contrôle de la signature du message №5 il sera nécessaire de nouveau de calculer la combinaison C4 (0), mais autre (C0 (2), C3 (1)) prendre du "dépôt", et т.д. L'approche Indiquée permet d'atteindre le compromis entre la puissance et les exigences à la quantité occupée d'espace de disque. Il faut marquer que le refus de la conservation des combinaisons d'un niveau amène à l'économie de la mémoire et la croissance des dépenses calculatoires environ deux fois, c'est-à-dire la dépendance a le caractère exponentiel.

3.4. Le    schéma de la signature en chiffre à la base du chiffre par blocs.

On plus bas amène les paramètres numériques et les algorithmes utilisés auxiliaires du schéma examiné de la signature en chiffre :

·      EK – l'algorithme зашифрования avec le montant du bloc des données et la clé n et nK des bits en conséquence;

·      Гm (s, K) – l'algorithme de la production m des bits криптостойкой les gammes avec l'utilisation du vecteur de n bits des paramètres (synchroenvoi) initiaux s et la clé de nK bits K, représente рекуррентный l'algorithme de la production des blocs de n bits des données et leur ultérieur зашифрования selon l'algorithme EK;

·      Pm®nK – l'ensemble de fonctions de l'élargissement des blocs de m bits des données jusqu'à de nK bits pour divers m (il est typique – pour les multiples n, plus petit nK);

·      L – le facteur de la quantité de signatures (le système est compté sur N=2L des signatures);

·      nT – le nombre des bits à signé битовых les groupes, alors le nombre des groupes également.

On plus bas expose les algorithmes du schéma de la signature :

1. L'    algorithme de la formation des clés de la signature et le contrôle de la signature.

(a) Les   Formations de la clé de la signature.

La clé de la signature est formée comme le bloc de nK bits des données avec l'aide du générateur de matériel des codes accidentels ou криптостойкого du générateur de programme des codes pseudo-accidentels KS=GnT (...). Les bits de la clé doivent être indépendants et avec la probabilité égale accepter les deux significations possibles – 0 et 1.

(b) Les    Formations de la clé du contrôle de la signature. Le schéma de l'algorithme de la formation de la clé du contrôle de la signature est représenté sur le dessin 4.

Øàã 0. Les    données initiales de l'algorithme – le tableau de nK bits KS – la clé de la signature.

Øàã 1.    Nous calculons nG – la quantité de groupes de nT bits dans les blocs signés.

Les pas suivants 2–9 sont accomplis tant de fois, sur combien signatures on compte le schéma, i.e. pour chaque numéro de la signature du système.

Fig. 4. L'algorithme de la production de la clé du contrôle de la signature.

Øàã 2.    Élaborer le bloc de la gamme par le montant 2nnG le bit avec l'aide du générateur криптостойкой les gammes sur la clé KS avec le remplissage initial i (le numéro de la signature) et le placer au massif de 2nnG bits X.

Øàã 3. Le    massif de 2nnG bits X est interprété comme le massif de 2nG des éléments de n bits Xj, X = (X1, X2..., X2nG), |Xj | = n,

Puis pour chaque élément de ce massif on calcule son résultat "du défilement unilatéral» 2nT–1 une fois.

Øàã 4.    Pour le massif X est calculé et s'inscrit au bloc des données S son hesh-code, qu'est la combinaison individuelle de contrôle pour la signature le numéro i.

Les pas suivants 5,6 sont accomplis la quantité des fois égales au facteur de la quantité des signatures L.

Øàã 5.    Si l des bats cadets du numéro de la signature – les unités, le passage vers le pas 6, autrement – l'exécution du cycle cesse la gestion est transmis au pas 7.

Øàã 6. L'   hesh-combinaison en cours S s'unit c coulant õýø-êîìáèíàtsiej Dl du niveau l, et pour le massif reçu on calcule l'hesh-signification, qui devient une nouvelle hesh-combinaison en cours.

Øàã 7. L'   hesh-combinaison en cours S remplace õýø-êîìáèíàtsiju Dl du niveau l.

Øàã 8.    Dernier calculé à l'exécution de l'algorithme l'hesh-combinaison en cours S sera le résultat du travail de l'algorithme – la clé du contrôle de la signature. En outre au cours de l'exécution de l'algorithme on élabore successivement les hesh-combinaisons de tous les niveaux de 0 jusqu'à L, 0£l£L, 0£i <2Ll, qui peuvent se trouver dans le système et être utilisé à la formation de la signature.

2. L'    algorithme de la signature de l'hesh-bloc du tableau.

Le schéma de l'algorithme de la signature de l'hesh-bloc du tableau est représenté sur le dessin 5.

Øàã 0. Les    données initiales de l'algorithme :

·      T – signé – l'hesh-bloc de n bits du tableau;

·      KS – la clé de la signature – le tableau de nK bits;

·      i – le numéro d'ordre de la signature.

Øàã 1.    Nous calculons nG – le nombre des groupes de nT bits dans l'hesh-bloc signé de n bits.

Øàã 2.    Élaborer le bloc de la gamme par le montant 2nnG le bit avec l'aide du générateur криптостойкой les gammes sur la clé KS avec le remplissage initial i (le numéro de la signature) et le placer au massif de 2nnG bits X.

Øàã 3. Le    massif de 2nnG bits X est interprété comme le massif de nG la vapeur des éléments de n bits X = ((X1, X2)..., (X2nG–1, X2nG)), |Xj | = n,

Puis pour chaque composante de chaque élément de ce massif, ß««ÔóÑÔßÔóÒ¯@ÚÑú« défini битовой au groupe de l'hesh-bloc, le nombre nécessaire des fois est accompli la procédure "du défilement unilatéral».

Fig. 5. L'algorithme de la signature de l'hesh-code du message.

Øàã 4. À la    combinaison individuelle de contrôle est ajouté successivement les hesh-combinaisons mutuelles des points deux a deux, selon une combinaison de chaque niveau de 0 jusqu'à L–1, qui sont nécessaires au calcul de la combinaison de contrôle du supérieur niveau (L), total à tous les messages. Le numéro de la combinaison ajoutée de chaque niveau est défini par le rejet de la quantité de derniers bats dans le numéro de la signature, le niveau égal au numéro, et dans l'inversion du bit cadet du nombre reçu.

Øàã 5.    Est finalement reçu la signature en chiffre de l'hesh-bloc du message S = (X, D), comprenant du massif des signatures битовых des groupes du bloc X = (X1, X2..., X2nG) et du massif des combinaisons supplémentaires de contrôle D = (D0, D1..., DL–1), nécessaire à l'exécution de la procédure du contrôle de la signature et les combinaisons mutuelles des points deux a deux de contrôle utilisées au calcul.

 

 

 

3. L'    algorithme du contrôle de la signature de l'hesh-bloc du tableau.

Le schéma de l'algorithme du contrôle de la signature de l'hesh-bloc du tableau est représenté sur le dessin 6.

Fig. 6. L'algorithme du contrôle de la signature.

Øàã 0. Les    données initiales de l'algorithme :

·      T – signé – l'hesh-bloc de n bits du tableau;

·      s – la signature de l'hesh-bloc, comprend le massif X contenant 2nG des éléments de n bits de la signature битовых des groupes, et le massif D contenant L des hesh-combinaisons de n bits;

·      i – le numéro d'ordre de la signature.

Øàã 1.    Nous calculons nG – le nombre des groupes de nT bits dans l'hesh-bloc signé ayant le montant n le bit.

Øàã 2.    Conformément aux règles du contrôle de la signature on produit «le défilement unilatéral» les éléments de la signature битовых des groupes se trouvant dans le massif X, selon deux éléments sur chaque groupe.

Øàã 3.    Pour le massif X est calculé et s'inscrit à S son hesh-code, qui doit être égal par la combinaison individuelle de contrôle pour I signatures.

Les pas suivants 4–6 sont accomplis la quantité des fois égales au facteur de la quantité des signatures L.

Øàã 4.    On produit le choix selon la signification de L bits (le numérotage avec 0 du côté du bit cadet) les numéros de la signature.

Øàã 5. Si la    signification du bit également 0, on ajoute au code à droite l'hesh-combinaison suivante se trouvant dans la signature, pour le bloc reçu est calculée l'hesh-fonction, qui remplace le contenu précédent S.

Øàã 6. Si la    signification du bit également 1, on accomplit le même, seulement l'hesh-combinaison est ajoutée au code à gauche.

Øàã 7.    À la fin de l'exécution de l'algorithme à S le code, qui doit être comparé à la clé du contrôle de la signature, si les codes sont identiques se trouve, la signature est considérée fidèle, autrement – incorrecte.

La conclusion.

La résistance du schéma proposé de la signature en chiffre est définie par la résistance du chiffre utilisé par blocs, mais la stabilité à l'ouverture переборными par les méthodes – le plus petit des nombres n, nK. L'assortiment clé dans le schéma donné est compté sur le nombre défini des signatures que, d'une part, peut être perçu comme le manque du schéma, mais avec l'autre permet d'accorder une licence à la quantité de signatures, en facilitant cette son utilisation commerciale. Le schéma examiné de la signature ne correspond pas au standard de la Russie de la signature en chiffre, mais l'algorithme du calcul MDC – le standard de la production de l'hesh-code du tableau que fait impossible l'attestation dans les organisations correspondantes des installations et les produits de programme, leurs réalisant. Cependant les schémas exposés peuvent être utilisés tout à fait là, où les différends ne peuvent pas être portés au niveau arbitral et les procès, par exemple, dans les systèmes de l'automatisation du traitement des documents intérieur des institutions, particulièrement si le traitement des documents électronique ne remplace pas en papier, mais existe en complément de lui pour l'accélération du passage des documents.

À titre de l'application au présent article on amène les textes initiaux dans la langue de l'assembleur pour les processeurs du clone Intel de 8086 fonctions du calcul MDC pour les blocs des données et les fonctions réalisant les algorithmes du schéma décrit de la signature en chiffre. La fonction de la production de l'hesh-code (MDC) est écrite de manière que permet de travailler les blocs des données par parties, c'est-à-dire pour quelques appels. Toutes les fonctions utilisent à titre de la base l'algorithme зашифрования conformément à GOST 28147–89. Se joignent Aussi les textes des programmes de test dans la langue du Si pour le contrôle de la constance des fichiers à la base de MDC et la signature en chiffre.

La littérature.

1.   A.J.Vinokurov. La norme d'État n'est pas simple..., mais est très simple, М, Monitor.-1995.-N1.

2.   A.J.Vinokurov. Encore une fois sur la norme d'État., М, Monitor.-1995.-N5.

3.   A.J.Vinokurov. L'algorithme шифрования la norme d'État 28147-89, son utilisation et la réalisation pour les ordinateurs du quai Intel x86., le Manuscrit, 1997.

4.   A.J.Vinokurov. Comment on arrange le chiffre par blocs ?, le Manuscrit, 1995.

5.   M.E.Smid, D.K.Bransted. Le standard шифрования des données : le passé et le futur. / la ruelle avec angl./М, le Monde, ТИИЭР.–1988.–т.76.–N5.

6. Les   systèmes du traitement de l'information. La protection cryptographique. L'algorithme de la transformation cryptographique la norme d'État 28147–89, М, l'Étalon national, 1989.

7.   B.V.Berezin, P.V.Doroshkevich. La signature en chiffre à la base de la cryptographie traditionnelle//la Protection de l'information, вып.2., М : МП "Irbis-Ii", 1992.

8.   W.Diffie, M.E.Hellman. New Directions in cryptography//IEEE Trans. Inform. Theory, 22 informatique, vol 6 (Nov. 1976), pp. 644-654.

9.   U.Diffi. Les premiers dix ans de la cryptographie avec la clé ouverte. / la ruelle avec angl./М, le Monde, ТИИЭР.–1988.–т.76.–N5.



[1] Procès-verbaux dans la cryptographie s'appelle l'ensemble de règles et les algorithmes d'un plus haut ordre réglementant l'utilisation des algorithmes de l'ordre inférieur. Sa destination principale – garantir l'utilisation juste des algorithmes cryptographiques.

Яндекс цитирования

Subscribe Subscribe.Ru
The Family Tree of Family