Prototypage d`interfaces par langage de script Le Python, c

Prototypage d’interfaces par langage de script
Le Python, c’est bon
Cours 6 : Messages et Ivy
Le but de ce (dernier) TD est triple. Il doit vous montrer :
une application professionnelle ´ecrite en python,
un moyen simple et efficace de communication entre programmes,
comment comprendre et utiliser le code d’une autre personne.
Nous allons ici vous donner uniquement quelques informations parcellaires
et une liste de choses `a faire. Vous devriez vous en sortir tr`es bien.
1 Ivy
Commencez par t´el´echarger la derni`ere version de Ivy pour python (la 2.1)
l`a : http://www.tls.cena.fr/products/ivy/. Attention `a bien t´el´echarger
la version (dans download/sources).
Lisez le document ci : http://www.tls.cena.fr/products/ivy/documentation/
ivy-ihm2002-02.pdf. Vous savez maintenant `a quoi sert Ivy.
1.1 Fonctionnement
Nous allons utiliser Ivy via le programme ivyprobe.py que vous trouverez dans le
r´epertoire examples. Copiez le dans son r´epertoire p`ere et ex´ecutez la commande
python ivyprobe.py -h.
Ex´ecutez maintenant la commande python ivyprobe.py -b 172.16:2010 -n
votreNom.`
A quoi servent ces param`etres ? Assurez-vous que tout le monde ai
un nom diff´erent.
Tapez ensuite la commande
.bind (.*)
Vous devriez recevoir maintenant tous les messages qui vont transiter par le
bus Ivy.
1
2 Expression r´eguli`ere
Dans Ivy on s’abonne `a des messages par expression r´eguli`ere. Pour plus de
renseignements sur les expressions r´eguli`eres et leurs utilisations dans python,
vous pouvez lire :
http://www.amk.ca/python/howto/regex/
http://docs.python.org/lib/module-re.html
http://diveintopython.adrahon.org/regular_expressions/index.html
On s’abonne en “bindant” une expression r´eguli`ere, les param`etres re¸cu ´etant
ceux entre parenth`eses. Ainsi :
.bind ˆtoto : (.*) vous abonnera `a recevoir tous les textes plac´es apr`es
“toto : pl´ec´e en d´ebut de ligne,
(.*) et (.*) vous abonnera aux deux parties entre parenth`eses plac´ees entre
“ et ”.
Faites quelques essais.
3 Communication
On vous demande de modifier le code de l’application ivyprobe.py pour y inclure
les fonctions que vous avez cr´ees lors du TD de cryptographie. Vous devez ˆetre
capable de d´ecoder un message cod´e `a la vol´ee si vous connaissez la cl´e, et de
d´ecrypter un message dont vous ne connaissez pas la cl´e.
Pour communiquer vos messages, on utilsera 3 expressions r´eguli`eres :
“ˆcesar : (.*)” pour envoyer sur le bus des messages encoes selon le code
de c´esar,
“ˆvigenere : (.*)” pour envoyer sur le bus des messages encod´es selon le
code de Vigen`ere,
“ˆrsa : (.*)” pour envoyer sur le bus des messages encod´es selon le code
RSA.
Pour vous envoyer les diff´erentes cl´es, proc´edez avec vos propres canaux.
Attention cependant aux espions !
Vous pouvez bien-sur proposer d’autres canaux, il suffit de les ´ecrire au
tableau pour que d’autres puissent vous entendre.
2
1 / 2 100%

Prototypage d`interfaces par langage de script Le Python, c

La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !