Idée de cryptage

Résolu
mJuJu Messages postés 56 Date d'inscription jeudi 20 octobre 2005 Statut Membre Dernière intervention 27 mai 2014 - 27 nov. 2007 à 02:55
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 1 déc. 2007 à 20:44
Bonjour à tous et particulièrement les experts en cryptage.


Voilà. Depuis quelque temps je m'intéresse un peu à la crypto, aux moyens de crypter un fichier par exemple. J'ai lu pas mal d'articles là-dessus depuis la crypto de Jules (César) , du sieur Vigenère pour en arriver aux documentations sur des algorithmes assez costauds et qui restent pour l'instant, un peu abscons pour moi. Puis m'est venue une idée aussi sotte que grenue dont j'aimerais bien que vous me disiez si ça tient la route ou si c'est une grosse fumisterie.
Voilà. Je dispose donc d'un fichier texte par exemple que je voudrais crypter. J'ai, dans un répertoire un certain nombre d'images, mettons une centaine pour faire bonne figure. Je prends chaque pixel de l'image et j'en extrais la valeur RGB dans une variable de type Long. Je triture un peu cette valeur pour en dégager 3 octets. J'utilise alors ces 3 octets pour XORer 3 octets de mon fichier. Et ainsi de suite ...  
Quand je veux crypter un fichier je propose alors de choisir une image et le début du balayage de cette image sous la forme des 2 coordonnées x  (> 0 et < ScaleWidth) et y (> 0 et < ScaleHeight). Puis je lance ma procédure de cryptage.
Voilà le principe. Est-ce qu' un hacker diabolique ou un expert en cryptage saurait alors déchiffrer mon fichier ainsi crypté? Si oui comment ferait-il? Que pensez vous de tout celà?
Je vous remercie d'avance pour toutes vos remarques, commentaires, critiques ou éventuels éloges.

JuJu 

9 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
1 déc. 2007 à 20:44
Salut,

Je tente juste de te montrer que ton idée est loin d'être nouvelle, et qu'elle n'est pas infaillible.

Si tu utilise un tel algo dans une application commerciale, tu sera bien obligé de livrer les images avec ton application... et un cracker pourra surveiller le process de ton application et voir ainsi qu'il accède à ces fameux fichiers images, qui ne sont utilisés que pour cà... il fera très vite la relation entre le décryptage de ton fichier et tes fichiers images !

Après c'est sûr que si tu fais un prog de cryptage avec cet algo pour envoyer des messages cryptés à ton amante histoire que ta femme ne les lise pas, l'algo sera suffisament robuste (à moins que ta femme soit une crackeuse... lol).

Disons que plus les données doivent être confidentielles, et plus l'algo se doit d'être perfectionné. Ton idée de cryptage étant une idée banale (cryptage d'un fichier à partir d'une simple clé et d'une simple opération grâce à cette clé, que la clé soit longue ou pas, c'est l'algo ici qui bride la compléxité du cryptage !!!). Disons que ton idée est un peu plus évoluée que le cryptage de vigenère, qui consistais à utiliser une clé d'un seul caractère et faire à peu près la même chose que toi : modifier caractère par caractère un message grâce à cette clé. Dans le même ordre d'idée : le chiffre de césar ou encore celui de Trithème. Ce genre d'algo est très simple à cracker, et ils peuvent être crackés avec un crayon et une feuille de papier en quelques minutes ! Bien entendu, ca dépend de la longueur de la clé, et ca ne fait que ralonger le temps de décryptage, avec un bon programme, c'est instantané ou presque !

Le chiffrement de Hill est déjà un algo plus évolué qui consiste à utiliser des opérations linéaires sur des groupes de caractères, déjà plus compliqué il demande un peu d'entraînement pour être cracké, mais ce n'est pas infaisable (là encore, à la main, c'est possible !).

Après tu as des algo beaucoup plus évolués et compliqués à casser (enigma, DES, AES, Diffie-Hellman (qu'on a eu à notre exam de cryptographie justement !))

Bref, la cryptographie ne manque pas de bonnes idées, et se complique d'année en année, mais tout reste cassable avec une machine suffisament performante, et des cracker qui sont au moins aussi doué (si ce n'est plus) que ceux qui inventent les algo de cryptage (si quelqu'un a inventé un algo, tu peux être sûr que les crackers peuvent trouver la parade !).

Allez, un petit lien pour te faire plaisir, et qui te montrera que ton algo de XOR avec une clé est loin d'être originale :
http://www.bibmath.net/crypto/plan.php3

______________________________________
DarK Sidious
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
27 nov. 2007 à 05:35
Salut,

Ta méthode est déjà bien connue : crypter un texte (ou tout autre document) grâce à une clé, sauf que là, la clé est une image, mais ca ne change rien au principe. Surtout qu'avec un algo aussi basique (prendre chaque pixel et appliquer un OR sur ton document) sera sûrement vite cassée par un cracker aguéri !
______________________________________
DarK Sidious
0
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
27 nov. 2007 à 07:25
Je suis d'accord avec DARKSIDIOUS, le cryptage par XOR est du déja vu et revu,  Un hacker peut  cassé ça seulement en lançant une analyse statistique,  ceci est surtout valable lorsque la clé est plus petite que la taille du texte, biensur dans ton cas la clé risque d'etre plus grande que le texte ce qui  peut etre bien, mais un Xor est trop facile a cassé sincèrement, tu devrais t'interessé au algo plus puissant, meme si tu dois passé plus de temps a les étudié

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
0
mJuJu Messages postés 56 Date d'inscription jeudi 20 octobre 2005 Statut Membre Dernière intervention 27 mai 2014
28 nov. 2007 à 03:46
OK pour étudier les algo plus puissants. Toutefois j'ai utilisé 3 fois ma méthode de cryptage sur le même texte de 30 caractères, avec 1 seule image mais avec 3 débuts de balayage différents. Elle donne les résultats suivants que je livre en hexadecimal car la plupart des caractères cryptés ne sont pas lisibles :

1) 54 15 19 79 6C 1A 64 01 5C 7B 04 1A 64 04 52 84 6A 42 6A 5B 1C 1A 13    4F 90 0F 7C 4F 0F 0B

2) 66 98 54 9F 43 09 7B 78 16 65 62 63 EA FC 77 5B 61 DB 78 4E 00 4D 56  
   4C 47 66 7C 7C 4D 13

3) 20 5A 36 21 02 65 65 BA 22 59 15 7F 44 4D 4C 5B 75 65 0F 16 42 19 61 
   58 B0 66 0A 64 79 12

Voilà.
Quel est le hacker diabolique, à la science divinatoire exceptionnelle, aux pouvoirs extralucides, avec toute ses batteries d'analyse en tous genres qui pourra dire que le texte crypté correspond à ... une suite de 30 "A"? Je vous assure que je ne triche pas et je ne vois pas comment une analyse statistique quelle qu'elle soit pourrait décrypter mes 3 exemples sans problème. Alors, bien entendu on pourra m'opposer que le texte est court et que des analyses poussées sur un fichier assez gros pourraient arriver à décrypter le fichier. Permettez-moi d'en douter.

J'utilise tout bonnement le XOR juste pour retrouver le caractère d'origine. C'est un moyen très simple et je ne vois pas pourquoi je devrais réinventer la roue. C'est à mon avis largement suffisant.

J'attends avec impatience vos remarques.
JuJu  
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
28 nov. 2007 à 06:14
Salut.
Évidement quand la clé est plus longue que le texte c'est déja plus dur a cassé, mais dit toi que si le hacker a accès au programme qui a servis a crypter, il est alors très facile de trouvé le genre d'encodage et de le cassé, ce qui n'est pas possible avec les aglos plus puissant, les ordinateurs actuelle prenderais énormément de temps a factorisé tout les résultats.

Tu ne sembles pas avoir de très grandes connaissance en cryptographie, ce n'est pas un reproche, je ne suis pas moi meme un expert, mais c'est pour ça que tu n'arrive pas a concevoir que quelqu'un pourrait le cassé, tout simplement parce que pour croire quelques choses, on a souvent besoin de le comprendre

Par contre, entre toi et moi, il est ou l'avantage de crypter un fichier si la clée pour être efficace doit etre au moin aussi longue que le fichier a crypter ?

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
28 nov. 2007 à 07:02
Salut,

C'est bien beau de crypter un fichier avec une clé, mais cela nécessite de livrer la clé avec le fichier crypté ainsi que l'index de début du cryptae... et c'est là où le bât blesse : un hacker un tant soit peu expérimenté connaît très bien le cryptage avec l'opérateur XOR, et s'il voit que tu envoie une image avec le fichier crypté, il aura aucun mal à faire le rapport entre les deux... et là, il suffit d'utiliser un algo de brute-force pour casser ta protection. Et il suffit qu'il y arrive une fois pour connaître ton algo et l'appliquer alors systèmatiquement sur tout les autres fichiers crypté que tu enverras.

Crois-moi, ce genre de cryptage est loin d'être impossible à décrypter ! (de toute façon, l'histoire nous a montré qu'il est toujours possible de casser une protection).
______________________________________
DarK Sidious
0
mJuJu Messages postés 56 Date d'inscription jeudi 20 octobre 2005 Statut Membre Dernière intervention 27 mai 2014
29 nov. 2007 à 19:19
Dark Sidious


Pourquoi devrais-je livrer l'image avec mon fichier crypté? Le destinataire de mon fichier crypté aura évidemment le même jeu d'images que moi. Soit je lui donne un coup de fil pour lui donner le numéro de mon image (position dans son dossier) avec le début de balayage, soit éventuellement je peux fournir ces informations dans mon fichier. De toutes façons, aussi bien le programme de cryptage, le fichier d'origine ainsi que le jeu d'images, se trouvent à l'abri dans une clé USB par exemple. Comment un hacker trouverait l'algorithme de cryptage, l'image qui servirait de clé ou les informations de balayage? Il faudrait alors que le hacker ait un oeil permanent dans mon ordinateur pour y arriver et qu'il tombe pile poil sur le moment exact ou je crypte un fichier.
Si on admet cette possibilité, il n'y a alors pas besoin de décrypter un fichier: le hacker n'a qu'à rechercher directement le fichier origine. Point barre. 
Si on écarte cette possibilité, alors je n'arrive pas bien à comprendre comment il s'y prendrait Xor ou pas, vu que chaque caractère a sa propre clé de cryptage (issue du balayage de l'image).
Tu me parles de brute force, me dis péremptoirement que tout ça est cassable. Mais bon sang comment? Dans ce forum, j'ai trouvé des tutoriaux concernant les problèmes de cryptage. Comme je l'ai déjà dit c'est parfois un peu compliqué mais bon, avec de la patience, j'arrive petit à petit à comprendre. J'ai trouvé aussi plein de sources qui cryptent en expliquant que ça va être dur de décrypter. Des experts qui utilisent des algorithmes de ouf en assurant que ca va être très très dur de décrypter. Et puis immanquablement derrière ces sources, on trouve les commentaires usuels qui assurent que tout ça est déchiffrable etc .. et qu'un expert n'aura aucune difficulté. Bon. Admettons. Mais si je trouve beaucoup d'algorithmes de cryptage, en revanche je n'en ai trouvé aucun concernant le décryptage! Comment les déchiffreurs s'y prennent-ils? 
Même des hommes ayant des compétences inouïes se sont cassé les dents sur le cryptage d'Enigma. Il a fallu piquer des machines et des pages de codes pour y arriver. Ca n'a pas été très facile tout de même.
Enfin voilà.
Merci de ta réponse.
JuJu    
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
30 nov. 2007 à 06:04
Salut,

A l'époque de l'enigma, les machines étaient loin d'être aussi évoluées qu'aujourd'hui, et le cryptage était loin d'être un simple algorithme de xor à partir d'une seule clé !

Tu dis que tu n'a pas besoin de fournir l'image... mais tu dis aussi que tu livre ton prog avec le jeu d'image... donc c'est bien cà : tu DOIS livrer l'image (ou les images si tu préfère).

Je ne suis pas un cracker, mais si je sais que tu envois des messages cryptés qui sont décrypté par tel logiciel, et que je vois que ce même logiciel ouvre tel ou tel fichier image à chaque décryptage... j'aurai aucun mal à me dire que l'algo de décryptage utilise les images, et que la clé est certainement contenu dans l'image. Du coup, je serais curieux de voir comment l'image peut décoder ton texte, et je me ferais un petit prog qui prendrais une image et ton fichier crypté en entrée, et essaierai de décrypter ton texte selon différents algorithme "classique" de type césar, vigenère, etc. en utilisant ton fichier image pour générer les clés (en déplacant l'offset de lecture nottament) : c'est ce qu'on appelle le brute-force : essayer toutes les clés possibles et comparer le résultat avec un dictionnaire par exemple.

Donc sans être un cracker, je vois très bien comment je m'y prendrais pour casser ton cryptage (sans toutefois te garantir d'y arriver).  Mais un gars qui s'amuse à faire cà toute la journée, je me doute bien que c'est la première chose qu'il ferais... vu que la majorité des petites protections font de même...

C'est pas pour rien que les algo de cryptage utilisés dans le monde professionnels sont bien plus compliqués que cà avec des mécanismes de brouillages sophistiqués en 2 voir 4 passes avec des permutations de valeurs, des multiplications, des xor, etc. Et même ces algo là arrivent à être craqués de toute manière... pas forcément rapidement, mais il suffit de comprendre l'algo et trouver une clé une fois pour que les prochaines fois, le cracker puisse optimiser son programme de cracking.

C'est ce qu'on nous apprends en cours de cryptologie (enfin, nous apprenais ) : on nous montrais des algo, et ensuite, ils nous laissaient cherché quelques heures pour décrypter un texte pour nous montrer que les algo en question avait tous une faille. Et crois moi, que ce soit césar, vigenère, ou les autres (me rappelle plus de leur nom !) avec de la méthode et de la patience, on arrivait à trouver la clé assez rapidement et à la main même ! (bon ok, les clés n'étaient pas très très longue non plus).

Je ne dis pas que ton algo vaut rien, je te dit juste que tu n'a pas encore trouvé l'algo de la mort qui tue qui ne sera jamais percé à jour. Y'a de l'idée, mais elle est loin d'être révolutionnaire.

Ce que nous disais notre prof : Le meilleur algo possible c'est celui qui pour chaque caractère attribue une clé aléatoire, mais le problème, c'est qu'il faut alors trouver un moyen d'envoyer la clé complète permettant de décrypter le texte et donc de la crypter avec une clé aléatoire sur chaque caractère, ce qui impliquait qu'il fallait trouver le moyen d'envoyer la clé de la clé complète, etc, etc.
 ______________________________________
DarK Sidious
0
mJuJu Messages postés 56 Date d'inscription jeudi 20 octobre 2005 Statut Membre Dernière intervention 27 mai 2014
1 déc. 2007 à 20:14
Dark Sidious


Je suis perplexe. Bon, nous sommes d'accord sur le fait qu'une photo ou une image que je choisi dans un dossier me permet de générer des clés différentes pour chaque caractère à crypter. Je pense que c'est un moyen prartique. Le cryptage suivant, je choisis une autre photo. Si tu ne dispose pas de la photo je présume que tu ne pourras rien décrypter. Encore une fois, dans mon fichier crypté, il n'y a rien d'autre que le texte crypté. Tout au plus je ne donne que le numéro de la photo et encore ...
Je pourrais avoir un autre fichier crypté avec une autre photo qui donnerait les infos pour décrypter le premier, par exemple. Bref.
En fait la question que je me pose est de quoi le déchiffreur est au courant. Le logiciel de décryptage? le dossier des photos? les 2 à la fois? Si c'est toujours le cas, pas besoin de crypter dans ce cas. Il suffit de faire tourner le logicield de décryptage pour tout détricoter et encore une fois, pourquoi pas, il suffit d'aller chercher directement le texte en clair.
Bon. Je suppose que je dois poursuivre mes études sur le cryptage car finalement je ne saisis pas quelles sont les situations qui obligent à crypter, quelles sont les raisons profondes de celui qui veut déchiffrer, de quoi le hacker dispose pour casser le code, etc.... Connais-tu de bons tutoriaux sur la question? Ou des livres? Pas trop compliqués au départ mais intéressants tout de même. J'attends impatiemment ta réponse qui cloturera définitivement cette discussion.
Avec mes remerciements.
JuJu  
est
0
Rejoignez-nous