Cryptographie
dans Arithmétique
Bonsoir tout le monde.
Bon, alors, j'ai découvert cette année le système RSA et j'ai été assez fasciné....
Cependant, sans parler du bienfait de la clé publique, je me demande pourquoi une bonne vieille méthode ne convient pas....
Par exemple celle-ci : un Vigenère amélioré ?
On a une phrase à coder.
La méthode consiste à coder chaque lettre une à une, et que le codage de la lettre n+1 dépende de la lettre n, de manière à ce que le décodage de la lettre n+1 ne puisse se faire qu'en connaissant la lettre n.
La clé secrète sera une lettre choisie parmis les 26, et un arrangement des 26 lettres de l'alphabet.
Par exemple : K = { M , (A;B;C;D;......W;X;Y;Z) }
Cas Général : (un conseil, voyez l'exemple qu'il y a après)
Soit E l'ensembles des lettres de l'alphabet
K={N(0); (L1,L2,....,L25,L26)} avec N(0), L1, ..., L26 appartenant à E et L1...l26 distincts
Soit N(n) la n-ième lettre de la phrase
Soit C la fonction qui code N(n)
Soit f la fonction qui associe à une lettre son rang dans l'alphabet
Soit g la fonction qui associe à une lettre son rang suivant l'odre défini par le 26-uplet de K
Alors C est tel que f(N(n))-f(N(n-1)) [mod 26]= g(C(n))
Exemple :
K={M, (BACDEFGH.......WXYZ) }
On veut coder : JNO
La lettre de départ est fixée par K : c'est M
Soit f la place d'une lettre dans l'alphabet
f(J)-F(M)=-3=23[mod 26]
Donc C(J)=W
f(N)-F(J)=4
Donc C(N)=D
f(O)-F(N)=1
Donc C(O)=B
Donc la phrase codante est WDB
Notons qu'il vaut mieux hasher avant de coder car il ne faut pas que le cryptanaliste sache s'il connait la nème lettre car cela lui otera des possibilités pour la n+1e lettre...
Bref, ce post n'est pas clair.....
Mais en définitive, ma question ets la suivante : Pourquoi ce système de cryptographie serait-il moins sur que des systèmes qui paraissent bien plus modernes ?
Notons qu'il y a 27! clés possibles soit environ 10^27 ....
Jean
Bon, alors, j'ai découvert cette année le système RSA et j'ai été assez fasciné....
Cependant, sans parler du bienfait de la clé publique, je me demande pourquoi une bonne vieille méthode ne convient pas....
Par exemple celle-ci : un Vigenère amélioré ?
On a une phrase à coder.
La méthode consiste à coder chaque lettre une à une, et que le codage de la lettre n+1 dépende de la lettre n, de manière à ce que le décodage de la lettre n+1 ne puisse se faire qu'en connaissant la lettre n.
La clé secrète sera une lettre choisie parmis les 26, et un arrangement des 26 lettres de l'alphabet.
Par exemple : K = { M , (A;B;C;D;......W;X;Y;Z) }
Cas Général : (un conseil, voyez l'exemple qu'il y a après)
Soit E l'ensembles des lettres de l'alphabet
K={N(0); (L1,L2,....,L25,L26)} avec N(0), L1, ..., L26 appartenant à E et L1...l26 distincts
Soit N(n) la n-ième lettre de la phrase
Soit C la fonction qui code N(n)
Soit f la fonction qui associe à une lettre son rang dans l'alphabet
Soit g la fonction qui associe à une lettre son rang suivant l'odre défini par le 26-uplet de K
Alors C est tel que f(N(n))-f(N(n-1)) [mod 26]= g(C(n))
Exemple :
K={M, (BACDEFGH.......WXYZ) }
On veut coder : JNO
La lettre de départ est fixée par K : c'est M
Soit f la place d'une lettre dans l'alphabet
f(J)-F(M)=-3=23[mod 26]
Donc C(J)=W
f(N)-F(J)=4
Donc C(N)=D
f(O)-F(N)=1
Donc C(O)=B
Donc la phrase codante est WDB
Notons qu'il vaut mieux hasher avant de coder car il ne faut pas que le cryptanaliste sache s'il connait la nème lettre car cela lui otera des possibilités pour la n+1e lettre...
Bref, ce post n'est pas clair.....
Mais en définitive, ma question ets la suivante : Pourquoi ce système de cryptographie serait-il moins sur que des systèmes qui paraissent bien plus modernes ?
Notons qu'il y a 27! clés possibles soit environ 10^27 ....
Jean
Réponses
-
Si c'est pas clair je vais le dire autrement....
Une lettre ca peut bien équivalent à un nombre entre 1 et 26
On associe 1 à A, 2 à B, ..., 26 à Z
Le principe de ce codage est de coder la n-ième lettre par le nombre de lettres la séparant de la (n-1)ième
Or ce nombre de lettre est compris entre 1 (lettre suivante) et 26 (la même) et ce nombre peut donc être codé de nouveau par une lettre.
Et pour établir une clé de codage, à chaque lettre on associe un nombre compris entre 1 et 26....
Bon, et vu qu'il n'y a pas de lettre avant la première lettre, on en choisit une qu'on considèrera comme la lettre précédant la première lettre. Cette lettre constitue aussi la clé secrète.
Je n'ai pas eu le temps de réfléchir à l'utilité de cette lettre, je ne suis pas sur qu'elle soit nécessaire... Mais ce n'est pas le plus important....
Jean -
Une attaque statistique ne permettrait-elle pas de cracker ce code ?
Je dis ca, je dis rien...
Joaopa -
Bonjour,
Quelques remarques pour Jean :
1) L'intérêt principal d'un système de cryptage à clef publique est .... d'avoir une clef publique. C'est l'apport fondamental du système RSA. Il ne manque pas de systèmes n'ayant pas cette propriété.
2) Peut-on à la fois solliciter l'attention du lecteur et déclarer "ne pas avoir le temps de réfléchir à l'utilité" de ce que l'on écrit ? -
Je ne connais pas de méthode particulier pour ta méthode, mais je sais par exemple que Vigenere se casse en 20 secondes avec un indice de coïncidence.. Je pense qu'il en est de même pour ta méthode ! Il existe aujourd'hui des méthodes très très modernes de cryptanalyse, et le nombre de clés n'est pas un critère suffisant. Il faut aussi se poser d'autres questions :
- 2 messages proches auront-ils des codages très différents ?
- Est-il possible de retrouver la clé connaissant un message en clair et son équivalent codé ?? ( il me semble que c'est le cas chez toi.. )
Et bien bien d'autres... Quand tu vois que des systèmes comme DES, voire triple DES sont considérés comme non sûr, tu peux être convaincu de la fragilité de ce Vigenere amélioré.. à nuancer : Si dans un Vigenere la clé est au moins aussi longue que le message, alors le cryptage est parfait.. mais pas très pratique !
Accessoirement, bonne remarque de GPP29 : RSA sert surtout parce qu'il a une clé publique, et donc résout le problème de l'échange de la clé. Par ailleurs il permet de signer les messages ! Il y a aussi la méthode de Diffie et Hellman
Pour voir des méthodes "modernes" de cryptage symétriques, jette un cou d'oeil à wikipedia, genre :
AES, Blowfish, et surtout réseau de Feistel ! -
Merci pour vos réponses.
Le truc auquel je n'avais pas le temps de réfléchir, c'était vu l'heure...
Et donc la première clé n'a pas d'utilité (On peut choisir, prendre A par défaut)
Deux messages proches ont des messages codant proches à condition, si vous avez compris ... que le début du message soit identique, car le moindre changement d'une lettre de la phrase modifie le codage des lettres suivantes...
Si on a le msg codé et le msg décodé, on a en effet la clé....
Un moyen d'y remédier ?
Et j'ai bien dit dans mon message que j'otais l'argument de la clé publique.
Bon, mais ma question était la suivante : si on a un message codé de cette manière, comment une méthode statistique peut-elle marcher étant donné que le codage de la nème lettre dépend de la (n-1)e lettre ?
Jean -
en fait, une fois connue la premiere lettre ( qui fait office de cle secrete ), tout le reste en decoule. dans ton premier post, tu suggere aussi d'utiliser une permutation de l'alphabet.. j'avoue que je ne suis pas forcement tres calé, et ne connais donc pas de methode pour casse une permutation.
<BR>
<BR>pour eviter qu'on puisse retrouver la clé a partir d'un message clair connu ( situation plus frequente qu'on ne le croit..) il faut justement faire appel a des tecnhiques plus modernes. par exemple, le principe des reseaux de feistel est d'utiliser en serie des fonctions tres complexes, et non necessairement bijective, pour en faire un truc qui lui est bijectif. cela permet d'utiliser des fonctions qui brouillent au maximum le message sans avoir a se soucier de la possibilité de les inverser.<BR> -
J'ai une question :
Est-ce-que la méthode que je décris dont le principe est en résumé que le codage de la nème lettre dépende la (n-1)ième a déjà été pensée ?
Par qui ?
Cela me permettrait de trouver des documents qui en parlent....
Jean -
oui, cela a deja ete pense, et cela s'appelle ( si je me souvient bien) le cipher chaining, et c'est utilisé dans des procédés de cryptographie complexe.
<BR>
<BR>apres, cela porte peut etre un autre nom dans le cas de cryptographie "historique"...
<BR>
<BR>j'ai cherché vite fait sur ce site :
<BR><a href=" http://www.apprendre-en-ligne.net/crypto/menu/index.html"> http://www.apprendre-en-ligne.net/crypto/menu/index.html</a>
<BR>
<BR>qui est tres bien fait, je n'ai pas trouvé mais je me souviens qu'il en parle.. je ne sais plus ou ! mais ils ont un forum aussi.
<BR>
<BR>une autre idee, serait d'utiliser vigenere normalement avec une cle de longeur k, en decoupant le message en bloc de longeur k. on crypte "nomalemet" le prmier bloc avec la cle, puis on crypte le deuxieme normalement <B>et</B> en lui ajoutant le premier bloc (modulo 26) et ainsi de suite. je pense que c'est plutot sous cette forme que cette technique est utilisé ! a priori, cela evite les attaques par indice de coincidence.
<BR>
<BR>si tu cherche un algo un peu solide et simple a mettre en ouevre "a la main", regarde du cote du chiffre de playfair.<BR> -
pardon, c'est cipher <B>block</B> chaining<BR>
-
Merci !
-
je ne sais pas si mon explication est claire, alors un petit exemple !
<BR>soit a coder ADRIEN avec la cle KEY :
<BR>
<BR>vigenere normal :
<BR>
<BR>ADR+KEY=KHP
<BR>IEN+KEY=SIL
<BR>
<BR>donc le message est KHPSIL. etant polyalphabetique, ce message n'est pas sensible aux attaques par analyse statistiques de frequences. par contre, on peut l'attaquer avec l'indice de coincidence ( enfin, s'il etait plus long, la c'est peine perdue de toute facon :-) )
<BR>
<BR>vigenere avec enchainement de bloc :
<BR>
<BR>ADR+KEY=KHP
<BR>IEN+ADR+KEY=SLC
<BR>
<BR>ce message sera beaucoup plus resistant. ici, on utilise le texte en clair, parce que l'addition modulo est commutative avec elle meme. si on avait un procede de cryptage plus complexe (notons le ×) dans ce cas on aurait interet a faire :
<BR>
<BR>ADR×KEY=KHP
<BR>(IEN+KHP)×KEY=SLC
<BR>
<BR>cad a reutiliser le texte precedemment crypté plutot que le texte en clair. cela ne fonctionne que si + et × ne commute pas, cad que si on ne peut pas "sortir" le KHP, sinon cela annule le truc.
<BR>
<BR>au passage, on peut avantageusement remplacer le + par un ou exclusif qui permet un procede plus general et applicable a n'importe quel type de donnée representable en informatique.<BR> -
aarf, mon dernier exemple est idiot, par definition on ne sait pas ce que donne ADR×KEY puisque × represente un codage quelquonque. mais vous aurez compris l'idée !!<BR>
-
ADR+KEY=KHP
IEN+ADR+KEY=SLC
mais on a
KHP-SLC = IEN !!
qui casse immediatement le code.
Dans le cas du code initial proposé par Jean:
notons A1....An ... les lettres du messages apres permutation.
ton cryptage revient ensuite a construire Cn = An-A(n-1)
Il suffit de commencer par le "deconvoluer" en calculant Bn=Cn+B(n-1)
(on initialise au pif, ca va juste changer la permutation.)
On est alors ramené au simple cas d'un cryptage par permutation de l'alphabet, qui se casse immediatement par l'analyse des frequences des lettres. -
exact ! j'ai tout faux.. et quand je parlais de la difficulté a casser une permutation, je pensais a une permutation de l'ordre des lettres dans le message.. bien vu !
<BR>
<BR>par contre, ce que 'ai mis en 2e reste valable, mais ne s'applique pas a vigenere.<BR> -
Salut,
On peut facilement trouver des algo tres puissants de cryptage
(sous entendu tres difficiles a casser meme avec des moyens modernes)
mais l'interet des methodes du type pgp est que les algorithmes
sont suffisamment rapides. On peux donc crypter a la volée des grands
volumes de données (pages web, bases de données, etc ...).
Dans ce domaine le top aujourd'hui c'est l'ECC (Elliptic Curve Cryptography). C'est exactement le meme principe que les algos
utilisés dans le cadre de pgp (DES, 3DES etc) sauf qu'au lieu
d'utiliser l'arithmetique des nombres entiers, on utilise celle
des points a coordonnées rationnelles sur une courbe elliptique.
On obtient un cryptage avec des clés tres courtes beaucoup
plus difficiles a casser qu'avec les algo classiques, et dont le
temps de calcul est sensiblement du meme ordre.
A+
eric -
Bon je suis pas très calé en crypto...
Mais comment calculer B(n)=C(n)+B(n-1)
si on ne connait pas la veleur de C(n)
En effet, A ne vaut plus 1, B ne vaut plus 2, etc....
A moins que j'ai mal compris, ce qui est probable car je suis très fatigué.....
Donne un exemple....stp
Jean -
oups, tu appliques ta permutation des lettres apres la 'convolution' (ton codage avec une lettre et la precedente). Dans ce cas, c'est effectivement un peu plus robuste. Il faut d'abord retrouver la permutation. Comment faire ? par une analyse des probabilités de transition d'une lettre a la suivante dans la langue utilisée.
Exemple : si tu as 2 fois la meme lettre a la suite dans ton message, la deuxieme est, avant la permutation, codée par la lettre 'a'. On regarde la probabilité d'apparition d'une lettre doublée dans la langue, on compare aux frequence des lettres dans le message, et avec un volume de données suffisante celle dont la frequence est la plus proche corresponds certainement a 'a'. De meme, on va regarder les probas d'avoir une lettre suivie (dans le texte)de la lettre suivante de l'
alphabet pour trouver 'b', ou de le lettre encore apres pour obtenir 'c', etc...
Une fois qu'on a retouvé toute la permutation, la fin du decodage ne pose plus de problemes. -
Je n'ai pas bien compris ton exemple, en revanche, je suis d'accord avec une méthode "par une analyse des probabilités de transition d'une lettre a la suivante dans la langue utilisée."
Il faut donc faire une étude statistique de la "distance" entre deux lettres consécutives dans une langue.
Par exemple, la distance entre A et B est 1, le distance entre A et C : 2, la distance entre A et A est 26, etc....
Pour "Je suis le", on aurait :
1*5 1*2 1*14 1*10 1*19
Bon, alors là, que va révéler cette "étude statistique" ? Personnellement, je ne pense pas que cela va révéler un échantillon très hétérogène.... contrairement à l'apparition des lettres dans l'alphabet....
Donc je pense que c'est plus difficile....
Cependant, ca me dirait de faire cette étude statistique, il faut juste que je trouve un grand texte écrit en francais, ou en anglais....
Jean -
au contraire, c'est justement parce que cela va donner des resultats tres variable que c'est interressant, vu que plus les differences sont fortes, plus les valeurs sont "caracteristique" d'un certain groupe de lettre. c'est ainsi qu'une analyse par frequence des bigrammes est en general beacoup plus efficaces qu'une analyse des frequences de lettres.<BR>
-
"je ne pense pas que cela va révéler un échantillon très hétérogène"
Je ne suis pas le maitre absolu de langue francaise mais il me semble que cela veut dire qu'il ne vas pas y avoir des résultats très variables....
Quoi que....
En effet, peut-être notamment à cause des terminaisons, des préfixes, etc... il risque d'y avoir des différences....
Bon.... je vais faire une étude statistique sur la langue francaise sur un texte long mais pas trop...
Du genre long comme un livre....
Je propose qu'en attendant chacun fasse des paris !
Qui parie que c'est hétérogène ?
Qui parie que c'est homogène ?
Qui parie que c'est peu très variable ?
Qui parie que c'est peu variable ?
Jean -
Quelqu'un pourrait me trouver un long texte sur le net pour réaliser une étude statistique svp ?
-
J'ai trouvé l'étude des bigrammes, ca va m'aider !
-
J'ai trouvé l'étude des bigrammes, ca va m'aider !
http://www.apprendre-en-ligne.net/crypto/stat/francais.html -
Je vais le faire d'ici ce soir....
C'est que c'est long et chiant lol !
Jean -
Cependant, je tiens à remarquer que même si l'analyse statistique donne un échantillon hétérogène, cette méthode de cryptanalise me semble très difficile à mettre en oeuvre dans notre cas, car lorsqu'il s'agit de substitution, il est clair qu'une erreur pour une lettre n'est pas grave car le mot Jean sera par exemple remplace par Jian qui est très compréhensible...
Cependant, dans notre cas, la moindre erreur entraine un décallage sur toutes les lettres ! Ce qui rend le message incompréhensible...
Donc, selon moi, cette méthode est l'une des meilleures méthodes utilisant le système alphabétique, d'autant qu'elle est très simple à mettre en oeuvre, cad rapide ....
Jean -
je maintiens que le chiffre de Hill est un tres bon choix pour du cryptage "alphabetique".. sinon, je te conseilles quand meme de poster sur le forum d'apprendre en ligne....
<BR>
<BR>en fait, j'avoue que j'ai repondu sans trop regarder ce que donnais ton algo en pratique, tu pourrais donner un petit exemple ?? pour etre sur qu'on parle de la meme chose.<BR> -
Ouais mais le chiffre de Hill me semble un tout petit peu plus compliqué à mettre en oeuvre....
En plus je ne connais pas encore les matrices....
Mais utilisons la méthode que je décris avec le système décimal, ca rendra les choses plus simples...
La méthode consiste à donner la différence entre le chiffre n et le chiffre n-1 plutot que de donner le chiffre n directement....
On définit notre nombre par réccurence en quelque sorte.
Par exemple : 1256 signifie quoi ?
On part de 0. On rajoute 1. Donc le 1er chiffre est 0+1=1.
On est à 1. On rajoute 2. Donc le 2e chiffre est 1+2=3.
On est à 3. On rajoute 5. Donc le 3e chiffre est 3+5=8.
On est à 8. On rajoute 6. Donc le 4e chiffre est 8+6=14=5(mod 9)
Ici, dans 1256, le 1 signifiait qu'on avancait de 1, le 2 signifiait qu'on avancait de 2, le 5 qu'on avancait de 5, etc....
Donc le message est déchiffrable très rapidement puisqu'on connait la règle....
Cependant, on peut donner une valeur différente à 0,1, 2, 3 .... 9
Ce sera notre clé secrète.
On veut coder 158952585 soit le nombre minimal de conneries que je dis chaque jour....
Choisissons comme clé 69324570
Donc 6 signifie qu'on avance de 0.
Donc 9 signifie qu'on avance de 1.
Donc 2 signifie qu'on avance de 3.
Donc 3 signifie qu'on avance de 2.
Donc 4 signifie qu'on avance de 4.
Donc 5 signifie qu'on avance de 5.
Donc 7 signifie qu'on avance de 6.
Donc 0 signifie qu'on avance de 7.
Donc 1 signifie qu'on avance de 8.
Donc 8 signifie qu'on avance de 9.
Condons notre message.
On est à 0. On veut aller à 6. Il faut ajouter 6 qui est codé par 7.
On est à 6. On veut aller à 9. Il faut ajouter 3 qui est codé par 2.
On est à 9.On veut aller à 2. Il faut ajouter 3(mod 10) qui est codé par 2.
On est à 2. On veut aller à 3. Il faut ajouter 1 qui est codé par 9.
On est à 3. On veut aller à 4. Il faut ajouter 1 qui est codé par 9.
On est à 4. On veut aller à 5. Il faut ajouter 1 qui est codé par 9.
On est à 5. On veut aller à 7. Il faut ajouter 2 qui est codé par 3.
On est à 7. On veut aller à 0. Il faut ajouter 3 qui est codé par 2.
Notre message codé est donc 72299932
Voilà...
Il me semble que cette méthode est bonne, mais je ne suis pas spécialiste -
aaarg, ma langue a fourché, je voulais dire le chiffre playfair... effectivement le chiffre de hill est bourrin a faire a la main, et pas si solide..<BR>
-
je ne comprend pas tout.. a priori le concept "d'avancer" n'a rien a voir avec la cle.. en plus, au vu des longueurs des messages, j'ai l'impression que tu as codé la cle :-)<BR>
-
on va voir si j'ai compris :
<BR>codons adrien avec KEY
<BR>
<BR>on commence par tranformer Adrien en decalage comme tu suggeres :
<BR>
<BR>ADRIEN = 0 3 17 8 4 13
<BR>
<BR>on code le decalage :
<BR>
<BR>0 3 14(=17-4) 17(=8-17[26]) 22 9
<BR>
<BR>puis on code avec vigenere :
<BR>
<BR>0 3 14 17 22 9
<BR>
<BR>10 4 24 10 4 24
<BR>_______________________
<BR>10 7 12 1 0 7
<BR>
<BR>j'ai bien compris ??<BR> -
Bien compris au niveau du décallage...
Ensuite, coder avec vigenère, ce n'est pas ce que j'avais suggéré, je disais une simple substitution.
Si la clé est 69324570 on remplace 0 par 6, 1 par 9, etc....
Mais coder par vigenère est très bien aussi, c'est même mieux mais plus chiant à coder/décoder....
Vigenère est mieux encore.
Mais si on fait juste une substitution, on aurait pu notamment si le message est long utiliser une méthode statistique en étudiant au préalable la répartition des distances entre deux lettres consécutives dans la langue francaise ce que j'ai fait (cf pièces jointes)
Est-ce-qu'une telle répartition permet une attaque statistique ?
Car comme je l'ai dit, si on se trompe une fois, c'est mort pour toute la suite du message ?
En tout cas, la distance 4 est très dominante ! C'est incroyable ! Je vérifierai que j'ai pas fait d'erreur.
J'ai utilisé la répartition des bigrammes donnée ici http://www.apprendre-en-ligne.net/crypto/stat/francais.html
Jean -
En tout cas je pense que de manière générale, dès qu'on code par bloc, en cryptographie, il semble préférable de coder le ne bloc en fonction du n-1 e de manière à embeter le cryptanaliste qui ne peut continuer à décrypter s'il ne commence pas par le début !!
Jean -
Ouais donc finalement, ce que je propose, ce n'est pas une méthode de codage.... C'est simplement un préalable à tout cryptage par bloc permettant une meilleure sécurité.
Donc est-il raisonnable de dire qu'avant tout cryptage par bloc, il vaut mieux toujours coder la distance avec le bloc précédant plutot que le bloc lui-même ?
Jean -
a priori oui, mais ca n'est pas toujours utilisé, je ne sais pas pourquoi.. peut etre que les algos actuels sont suffisamment solide pour se permettre de s'en passer !<BR>
-
Peut etre...
Mais personnellement je n'ai jamais vu aucun document parlant de l'utilisation de la méthode que je décris ...
Je cherche mal ? -
non, mais mon pessimisme habituel me dit que c'est mauvais signe, il doit y avoir quelque chose qui cloche, meme si je ne vois pas comme ca.
-
Oui je me dis la même chose...
Il me semble pourtant à moi pauvre petit élève de terinale assez évident que cette méthode serait bien !
Mais bon... Apparemment, si personne ne l'a jamais utilisé, et que les génis de la cryptographie ne l'utilisent pas, je me résigne.... ! -
non, le plus interressant n'est pas de trouver un algo revolutionnaire, mais de trouver la faille dans celui la.. j'ai l'impression que ca n'est pas loin et que ca m'echappe, c'est rageant !
<BR>
<BR>en fait, je pense que ce coup des bigrammes n'est pas forcement idiot.
<BR>
<BR>et puis un probleme de ce genre de codage, est que si le message arrive avec une erreur il est foutu.
<BR>
<BR>en fait, on peut resumer en disant que tu utilise le message lui meme comme clé ( on appelle ca un codage autoclave). quelque chose me dit qu'on doit pouvoir bidouiller l'attaque par l'indice de coincidence pour que ca marche..<BR> -
Non mais il est certain que ce codage où on fait juste une substitution des distances est faclement cassable par statistique, mais.....
Moi je parle juste du principe de coder chaque bloc en fonction du précédant, avec n'importe quel codage 5DES, RSA, etc....)
La raison que tu évoques, que si ya une erreur, c'est foutu est très maline !
Je n'y avais pas pensé !
Et je pense que c'est juste pour cela qu'on n'utilise pas cette méthode !
Car n'importe quel message qui transite dans les réseaux n'arrive quasiment jamais intact non ?
Jean -
Je ne sais pas si c'est pour ça qu'on ne l'utilise pas, mais :
- il y a des chiffrements par bloc et des chiffrements par flux. Dans le deuxième cas ça n'est tout simplement pas possible d'utiliser cette méthode !
- en informatique, on utilise généralement des "codes correcteurs" qui permettent de reconstituer une partie du message défectueux. Donc les risques sont limités, mais tout dépend du contexte !! Si tu envoies un mail, le problème ne se pose pas de la même façon que si tu as une conversation téléphonique ! -
Ouais... Enfin j'aimerais quand même savoir si cette méthode a déjà été utilisée....
Mais bon je ne connais rien à la cryptographie, ca m'intéresse, mais sans plus....
Jean -
je pense que le plus malin est quand meme de demander sur le forum d'apprendre en ligne..<BR>
-
Je viens de me rendre compte que j'ai oublié de mettre ma pièce jointe donnant la fréquence des distances entre deux lettres consécutives ... !
-
De taille mieux adaptée
-
Si on fait juste une substitution, si le texte est long, la lettre codant "avancer de 4 lettres" sera très vite repérée !!!!
Jean
PS : Bizarre la langue francaise....
La différence la plus fréquente entre deux lettres consécutives est +4 !! -
J'ai tout simplement fait une erreur !
Connectez-vous ou Inscrivez-vous pour répondre.
Bonjour!
Catégories
- 164.7K Toutes les catégories
- 46 Collège/Lycée
- 22.1K Algèbre
- 37.4K Analyse
- 6.3K Arithmétique
- 57 Catégories et structures
- 1.1K Combinatoire et Graphes
- 13 Sciences des données
- 5.1K Concours et Examens
- 19 CultureMath
- 50 Enseignement à distance
- 2.9K Fondements et Logique
- 10.6K Géométrie
- 80 Géométrie différentielle
- 1.1K Histoire des Mathématiques
- 73 Informatique théorique
- 3.9K LaTeX
- 39K Les-mathématiques
- 3.5K Livres, articles, revues, (...)
- 2.7K Logiciels pour les mathématiques
- 24 Mathématiques et finance
- 331 Mathématiques et Physique
- 4.9K Mathématiques et Société
- 3.3K Pédagogie, enseignement, orientation
- 10.1K Probabilités, théorie de la mesure
- 792 Shtam
- 4.2K Statistiques
- 3.8K Topologie
- 1.4K Vie du Forum et de ses membres