Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 17-08-2009 09:32:01

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 11 387

"Kit" d'aide à la cryptanalyse (Présentations - Explications)

Bonjour à tous,

    A la demande de Nerosson, et en tenant compte de ses souhaits, j'ai écrit deux utilitaires destinés à le seconder, lui et ses pairs, dans les travaux de cryptanalyse.
Voir discussion http://www.bibmath.net/forums/viewtopic.php?id=2738 et message #4.

    Le 1er, Crypto_grammes, analyse le texte pour vous et crée plusieurs fichiers, au format .csv, destinés à être ouvert avec un tableur :
1.Bilan_lettres_seules.csv qui contient la liste des lettres utilisées classées par nombre de présences décroissantes, ainsi que ce nombre.
2.X_grammes.csv, liste
tous les quadrigrammes successifs et leur n° d'ordre dans le crypto,
tous les  quadrigrammes triés par ordre alphabétique croissant (et leur n° d'ordre dans le crypto)
tous les  trigrammes triés par ordre alphabétique croissant (et leur n° d'ordre dans le crypto),
les bigrammes triés par ordre alphabétique croissant (et leur n° d'ordre dans le crypto).
Pour plus de clarté des listes triées, une ligne est sautée à chaque changement de première lettre.
3.X_tri_decr.csv  liste tous les quadrigrammes, trigrammes, bigrammes différents triés par ordre de nombre de présences décroissant, ainsi que ce nombre.
4.Bilan_Xgrammes csv  liste   tous les quadrigrammes, trigrammes, bigrammes triés par ordre alphabétique croissant (avec saut de ligne à chaque changement de x_gramme), accompagnés de leur n° de position dans le crypto, ainsi que de l'écart entre ces positions.

Ces 4 fichiers ont été prévus pour être imprimés, après que vous aurez fixé marges haute et basse à 1 cm, et désactivé -si nécessaire- les En-tête et Pied-de-page. Avec OpenOffice.org Calc, ils sont activés par défaut (décocher la case Activer, via le Menu Format --> Page pour les marges et Format --> Page, puis onglets En-tête et Pied-de-page).
Pour une meilleure lisibilité, sélectionner toutes les colonnes et choisir une police à espacement fixe (Courrier New par exemple).

    Maintenant que vous êtes débarrassés du fastidieux travail de comptage, vous  pouvez vous consacrer  pleinement au travail, intellectuellement plus gratifiant, du décryptement !

    Pour vous aider là encore, je vous propose un autre utilitaire : Decoup_crypto. Lui ne crée qu'un seul fichier : lettres_crypto.csv.
Comme son nom l'indique il procède à la découpe, lettre par lettre de votre texte, selon la longueur de ligne que vous fixerez (qui pourra être la longueur de la clé, si le texte a été chiffré à l'aide d'une clé dont vous connaissez  la longueur).

    Chaque ligne de lettres est surmontée de leur position dans le texte, ce qui limite la longueur des lignes à 30 caractères pour des textes jusqu'à 999 caractères, 26 au delà (orientation paysage).
Deux lignes vides sont ensuite laissées à votre disposition pour les substitutions.
Là encore ce fichier  a été optimisé en vue de l'impression : choisir marges H, B, G, D de 1 cm et désactiver En-tête et Haut-de-page.
L'orientation à donner à la page, Portrait ou Paysage, vous sera signalée.
L'économie de papier a été un souci de cet utilitaire ; dans le cas d'un texte de moins de 1000 caractères par exemple et chiffré avec une clé :
si cette clé est longue de 12 caractères, vous trouverez une « double page » comprenant donc deux séries de lignes de lettres et nombres séparées par un espace central,
si la longueur de la clé est un diviseur de 30 : 5, 6, 10 ou 15, les lignes auront donc 30 caractères de long, donc respectivement de 6 fois, 5 fois, 3 fois et 2 fois la longueur de la clé,
si la longueur de la clé est supérieure à 15 et inférieure ou égale à 20, l'impression est prévue en mode Portrait cette fois. Pour une longueur de texte de 1000 et +, forcer la largeur des colonnes à 0,9 cm

Réactions, commentaires, suggestions, bienvenus.

Pour récupérer lesdits utilitaires, Reendez-vous dans le sous-forum Programmation.
                       
@+

[EDIT]
Si vous ne souhaitez pas télécharger et installer Python (logiciel libre et gratuit), il est possible de vous fournir des versions de ces utilitaires  fonctionnant seules : il faut simplement les demander.
Comme disent les italiens :
* Domandare per avere : demander pour avoir,
* Chiedere per sapere   : demander pour savoir.
Maintenant vous savez...  ;-)

Dernière modification par yoshi (17-08-2009 18:07:13)


Arx Tarpeia Capitoli proxima...

Hors ligne

#2 05-09-2009 10:13:15

ju_bicycle
Membre
Inscription : 31-08-2009
Messages : 79

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

Salut Yoshi
Aller je me penche sur ton code. J'ai des p'tites idées dans ma p'tite tête, on va voir ce que ca peux donner: J'imagine bien un petit programme que l'on peut construire a plusieurs ou tout le monde peut ajouter des briques qui permettraient plusieurs fonctionnalités différente. (Cryptage/Décryptage pour des algo donné, Calculs statistiques poussé, Stegano etc...).
Bref un programme sympas quoi, et même pourquoi pas avec une petit GUI?
J'pensais aussi essayer de réaliser une fonction qui essaye de décrypter automatiquement les cryptogrammes. Evidemment ca n'aurai aucun interet pour les cryptographes, mais pour les programmeurs c'est assez interessant je pense.

Bref, donc la je suis sur ce que tu as déja codé.
J'ai une observation et une question (déja)
Question:
Je connais pas du tout la syntaxe print u"blabla" que tu utilise souvent.. C'est quoi ce u? késako?
Observation:
Si ca te tente qu'on fasse un prog a plusieurs, afin de répartir un peu le travail, ca serai plus simple de programmer en orienté objet afin d'éviter tout probleme liés a l'emplois de variable gloable...Il y aura donc un peu de chose a refaire dans ton code (si tu veux je m'en charge)
Voila alors interessé? Quelqu'un d'autre serai chaud?

Hors ligne

#3 05-09-2009 11:15:53

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 11 387

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

Salut,

...pourquoi pas avec une petit GUI?

Tout à fait d'accord... Mais pour le moment, mes compétences en la matière sont très limitées. Ca viendra...
Si je fais ça, il va falloir que je crée des Classes et ça aussi ça m'interpelle...
Quelles variables globales ? Je n'ai déclaré aucune variable globale...

Quant à print u"blabla"...
C'est facile, Essaie d'enlever le u tu verras... Je constate d'ailleurs que j'en ai oublié, je vais réparer cela de suite...
Quand on teste un code, c'est un genre de truc à essayer...Bon... u pour unicode, qui est une forme d'encodage 'universelle' des caractères : je pense que mes progs récents tournent aussi sous Linux sans modifs..
Au début du prog, est défini l'encodage : # -*- coding:UTF-8 -*-
Tu peux, après copier/coller depuis le site :
- Remplacer la décla par : # -*- coding:CP1252 -*- ou # -*- coding: Latin-1 -*-
- Enlever le u...

Mon code est libre de droits, t'en fais bien ce que tu veux... ;-)
Des questions sur la forme de codage proprement dite ?

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#4 05-09-2009 11:34:56

ju_bicycle
Membre
Inscription : 31-08-2009
Messages : 79

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

hello yoshi,
Et non pour l'instant aucune variable globale, evidemment, puisque tu as juste un "main" et deux fonctions
Mais si quelqu'un veut ajouter des fonctionnalités, ca risque de poser probleme. (Des noms de variables identiques par exemple). Et puis a ce moment la il faudrai encapsuler ton main dans une fonction du style "xgrammes" qui serai rappelé par un main (selon les choix de l'utilisateur).Et la, paf! A tout les coup apparition de variables globales!
Bref, voila
Sinon oui oui bien sur j'ai lancé ton prog mais il bug sous windows, donc j'essaye de comprendre un peu le tout pour voir ce qui se passe...

PS: j'ai déja changé en coding latin en premiere ligne, ca bug en utf-8. Il me semble que c'est lié a windows

Hors ligne

#5 05-09-2009 12:13:42

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 11 387

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

Salut,

lequel bugue ? Qu'est-ce qui bugue ? L'affichage ? Je t'ai dit avoir oublié au moins un u...

Parce que si le programme a été mis en ligne, c'est qu'il a été testé... et qu'il ne bugue pas : son fonctionnement est identique à ce que j'ai annoncé
J'en ai envoyé des versions Stand-alone à Nerosson, il n'a pas eu de pb non plus...

Je viens de retester : aucun pb de fonctionnement... Alors ?
Python chez toi, quelle version ?

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#6 05-09-2009 12:21:23

ju_bicycle
Membre
Inscription : 31-08-2009
Messages : 79

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

chez moi : 2.6 (comme tu le spécifie)
config: zindows XP
alors les bug, bizzarement semblent être du au fameux "u". Si je les enleves pas de prob, (a part certains affichage de charactere accentué), mais si je les laisse. Hop, il arrive pas a décodé certaines lettre. et donc petit plantage de la machine

Ne t'inquiete pas, je sais bien que tu as testé et que ca marche. Mais bon , vu le nombre de machines et de config, y'as parfois des trucs qui passe pour certains et pas chez d'autres: Les myseres de l'info

PS: je preferai continuer ca par mail, plutot que de polluer ton post
ju_bicycle at yahoo point fr

Hors ligne

#7 05-09-2009 12:29:19

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 11 387

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

Re,

yoshik at no-log.org

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#8 30-04-2017 08:32:04

Thitwi54
Invité

Re : "Kit" d'aide à la cryptanalyse (Présentations - Explications)

Salut j'aimerais bien débutais dans la cryptographie quelqu'um pourrais mexplique. Jai déjà regarder des forome mes je comprend pas ^^ :-)

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de cette opération? 3+7=

Pied de page des forums