Forum

Catégorie : Discussions générales
Forum : Articles
Vues : 5309
Réponses : 49
Type : discussion
Etat : réponses autorisées

Chaos mathématique et cryptage - Page 1 / 3

vibra le 01/11/2007 à 21:02
Je viens de découvrir un phénomène tout à fait fascinant pouvant peut-être avoir une utilisation dans certains algorithmes de codages.
Rentrez le programme suivant :
Code
"X^2"->Y1
Fn-Off
0->Xmin
10->Xmax
-.5->Ymin
1.5->Ymax
For(A,0,10,.01
Pt-On (A,Y1(A)-((1<0)+int (Y1(A)
End

Mettez le programme en route, et là, si je vous dit que ce qui s'inscrit sur l'écran est la fonction "x^2" vous me croyez ? Que c'est-il passé ? Tout simplement la bonne vieille fonction "x^2" s'est littéralement fait hachée menu par une bande de petits rigolo appelés modulos.
Un autre exemple encore plus impréssionnant ?
Code
"7,5+x sin (cos (X^2"->Y1
Fn-Off
0->Xmin
10->Xmax
-.5->Ymin
5.5->Ymax
For(A,0,10,.01
Pt-On (A,Y1(A)-5((5<0)+int (Y1(A)/5
End

On peut donc constater que les fonctions sont complètement dénaturées, et ne ressemblent plus à rien de connu.
Alors, quelle utilité à ce phénomène ? Tout simplement l'utilité est que cette fonction, à moins qu'on repousse les maths dans ces derniers retranchements, les fonctions modulées ne possèdent pas de fonction réciproque. Quésaco ? Quand on marque y=x^2+3, on peut retrouver x si l’on connaît y an faisant x=sqrt(Y-3) ou x=-sqrt(y-3). Les deux fonctions sont des fonctions dites réciproques. En revanche avec une fonction modulée, pas moyen d’exprimer x en fonction de y. (Note : le sqrt signifie [racine])
Ainsi un petit futé qui ferait un algorithme pour protéger un programme du type :
Code
Prompt A
If 36(A+3)/15=35+2
Then
Disp "CODE  CORRECT
Else
Disp "CODE INCORRECT
Stop

aurait tout faux, puisqu’il suffit au « cracker » d’éditer le programme et de résoudre l’équation pour trouver le code. En revanche, avec une fonction modulée, même en connaissant le nombre d’arrivée, il est impossible de remonter jusqu’au code.
Mais il y a mieux : je vous propose un algorithme où il faut entrer 2 codes : le premier pour coder le modulo, et le deuxième pour coder le nombre, et le nombre d’arrivée est lui-même caché derrière un nombre aléatoire (avec Ans). Là c’est du solide ! Si vous pouvez faire en sorte qu’on ne puisse modifier le programme, alors le programme est en sûreté, d’autant plus qu’il y a 184^10^184^10^14 possibilités, ce qui fait…beaucoup de milliards de milliards…
Code
 "(10+X)sin(cos((10+X)^2"->Y1
Input "A=",A
ClrHome
Y1(A)-10[pi]((10[pi]<10)+int (Y1(A)/(10[pi]
Input "B=",A
ClrHome
Y1(A)-Ans((Ans<0)+int(Y1(A)/Ans->B
453->rand
rand
10^-3round(rand,4
If round(B,7)=11,937+Ans
Then
0
" " ->Y1
Disp " CODE ACCEPTE
Pause
Return
Else
0
" " ->Y1
Disp " CODE REFUSE
Stop
End

Le couple de solution est 1610 et 4^282 (soit 1312).
webmaster le 01/11/2007 à 23:24
Un article très intéressant...

@+ Le Webmaster beer.gif
Stupid le 02/11/2007 à 22:40
Citation
"7,5+x sin (cos (X^2"->Y1
Fn-Off
0->Xmin
10->Xmax
-.5->Ymin
5.5->Ymax
For(A,0,10,.01
Pt-On (A,Y1(A)-5((5<0)+int (Y1(A)/5
End


j'ai pas compris l'utilité du truc, ni ce qu'il y'a d'impressionant...
juste un debut de fonction et aprés des points...le graph de fucktime est bien plus impressionant minied.gif
coc5 le 03/11/2007 à 11:56
Il est intéressant dans le sens où on dispose d'une "fonction" dont on ne peut trouver l'origine à partir du résultat vu que c'est un modulo.
vibra le 03/11/2007 à 16:35
Voilà le but c'est pas d'avoir un beau graphique Baby, mais de ne pas pouvoir retrouver le nombre d'origine…
Stupid le 03/11/2007 à 17:00
ça me fait peur...
vibra le 03/11/2007 à 18:59
Baby a écrit :
ça me fait peur...

T'as raison, les modulos sont une bande de bêtes féroces assoiffée de sang Arrgggg… scared.gif
Sangohan38 le 03/11/2007 à 19:16
vibra a écrit :
sans


Jolie faute d'orthographe là.

Sangohan38
vibra le 04/11/2007 à 10:23
minied.gif Mais non c'est parce que les deux touches sont toutes proches… bon d'accord il y a quand même le F et le D entre… minied.gif
unknow le 11/11/2007 à 12:50
en quioi c'est utile?
vibra le 11/11/2007 à 14:10
T'as lu le premier post de l'article ou pas ??
mad67 le 14/11/2007 à 17:50
les modulos si j'ai bien compris divise jusqua ne plus pouvoir?
vibra le 14/11/2007 à 21:21
mad67 a écrit :
les modulos si j'ai bien compris divise jusqua ne plus pouvoir?

On les étudie en spé maths. La définition exacte c'est : (a congru à b modulo n) ssi (a et b ont même reste dans leur division euclidienne par n).
Ex : 15 est congru à 3 modulo 4.
unknow le 16/11/2007 à 19:39
si j'ai lu?? evidemment que oui, mais j'ai eu la flemme de comprendre laugh.gif
non serieusement j'ai absolument pas compris
vibra le 16/11/2007 à 20:42
Ça sert à crypter un code sans pouvoir le découvrir même en éditant le programme.
Stupid le 16/11/2007 à 21:42
au pire, si tu planque dans uen matrice+ un codetouche, si le gars il trouve c'est qu'il sait rpogrammer et si il sait programmer il vire les deux lignes
vibra le 17/11/2007 à 11:59
Oui je sais, mais bon c'était pour le principe…
tahmahal le 21/12/2007 à 17:08
J'aurais beaucoup aimé comprendre mais déja je cale : une fonction réciproque kézako?
vibra le 21/12/2007 à 18:26
Imagine que tu étudie une population de bactéries. Au début tu en as peu, puis le nombre augmente au cours du temps (il y a une augmentation exponentielle). En faisant des relevés régulièrement, tu vas être en mesure de trouver une fonction mathématique (ça s'appelle modéliser), que l'on notera f, et qui nous donne le nombre de bactérie n présentes à la date t. On note f(t)=n.
Mais ce n'est qu'un point de vu, car il est également possible de définir une fonction g qui nous donne la date t en fonction du nombre de bactérie n. On note g(n)=t.
Les fonction f et g sont des fonction réciproques, et on note g=f^-1.
Bref en conclusion, [f(x )=y] <=> [f^-1(y)=x]
Quand je dis que
vibra a écrit :
les fonctions modulées ne possèdent pas de fonction réciproque.
, je veux dire que quand on a une fonction normale f(x )=y, si on connaît y, peut retrouver x (presque tout le temps), alors qu'avec une fonction modulée g(x )=y, si l'on connaît y, on ne peut pas retrouver x, ce qui est particulièrement intéressant pour le cryptage.
J'espère avoir été clair. winkle.gif
webmaster le 25/12/2007 à 18:12
tahmahal a écrit :
J'aurais beaucoup aimé comprendre mais déja je cale : une fonction réciproque kézako?


Plus simplement la fonction racine carrée et la fonction carrée sont des fonctions réciproques car (sqrt(4))²=4. En gros, quand tu appliques la fonction et la fonction réciproque l'une après l'autre tu reviens au point de départ.

@+ Le Webmaster beer.gif
phpMyVisites