TD/TP11 - Réseaux (corrigé)



Documents pareils
Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Séance d ED n 5 : HTML et JavaScript

TP JAVASCRIPT OMI4 TP5 SRC

Les services usuels de l Internet

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

Création de formulaires interactifs

Formulaire pour envoyer un mail

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

Module BD et sites WEB

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

< Atelier 1 /> Démarrer une application web

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Atelier Le gestionnaire de fichier

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

BTS SIO option SISR Lycée Godefroy de Bouillon Clermont-Ferrand

Assistance à distance sous Windows

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Programmation Internet Cours 4

Environnements informatiques

Fais ton site internet toi-même

Principales Evolutions Version

Network musical jammin

Exécution de PCCOMPTA à distance sous Terminal Server 2003.

Création, analyse de questionnaires et d'entretiens pour Windows 2008, 7, 8 et MacOs 10

Sélection du contrôleur

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Tutorial Terminal Server sous

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INSTALLATION ET LANCEMENT DU CONNECTEUR E-SIDOC

Notes pour l utilisation d Expression Web

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Tuto 2 : Configuration Virtual box, Configuration et installation du serveur XiBO

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Le serveur web Windows Home Server 2011

Les possibilités de paramétrage réseau des logiciels de virtualisation sont les suivantes quant à la connexion réseau :

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

CSI351 Systèmes d exploitation Instructions pour rouler Linux avec Virtual PC dans la salle de labo 2052

NAS 109 Utiliser le NAS avec Linux

NetCrunch 6. Superviser

Le serveur communication unifiée IceWarp. Guide de mise à jour. Version 10. Février IceWarp France / DARNIS Informatique

Guide Numériser vers FTP

Utiliser le portail d accès distant Pour les personnels de l université LYON1

Utilisation des ressources informatiques de l N7 à distance

Activités HTML. Code: act-html

Saisie sur un ordinateur OS/390 Ici sur jedi.informatik.uni-leipzig.de ou

Les outils de création de sites web

Bernard Lecomte. Débuter avec HTML

Business Talk IP Centrex. guide. web utilisateur. pour. les services standards

Utilisez Toucan portable pour vos sauvegardes

Étude de l application DNS (Domain Name System)

Création d une connexion VPN dans Windows XP pour accéder au réseau local de l UQO. Document préparé par le Service des technologies de l information

Guide d installation CLX.PayMaker Office (3PC)

GUIDE D UTILISATION ADSL ASSISTANCE

COMMUNICATION TECHNIQUE N TCV060 Ed. 01. OmniVista 4760 Nb de pages : 18 Date : URGENTE NON URGENTE TEMPORAIRE DEFINITIVE

Compte Rendu d intégration d application

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

Authentification unique Eurécia

TP1 - Prise en main de l environnement Unix.

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

Figure 1a. Réseau intranet avec pare feu et NAT.

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

WIMS. Découvrir et utiliser

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

CREATION d UN SITE WEB (INTRODUCTION)


Conférence et partage avec NetMeeting

Introduction au protocole FTP. Guy Labasse

Programmation sous QT

Utilisation de KoXo Computers V2.1

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

MAILING KOMPOZER... 2 CREEZ UNE PAGE... 2 FORMAT DE LA PAGE... 2 AJOUTER DU TEXTE SUR UNE PAGE... 4

Installation et utilisation du client FirstClass 11

HTML. Notions générales

But de cette présentation

Le Registre sous Windows 8 architecture, administration, script, réparation...

Groupe Eyrolles, 2006, ISBN : X

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Manuel Utilisateur Téléphone IP Thomson ST 2030

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Manuel d'installation de GESLAB Client Lourd

TP 1. Prise en main du langage Python

Préparation à l installation d Active Directory

RTE Technologies. RTE Geoloc. Configuration avec Proxy ou Firewall

Techniques de Programmation pour Internet

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

1.Introduction - Modèle en couches - OSI TCP/IP

Mettre en place un formulaire dans le site avec le module webform

Gilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068

TP Sur SSH. I. Introduction à SSH. I.1. Putty

Powershell. Sommaire. 1) Étude du cahier des charges 2) Veille technologique 3) Administration sur site 4) Automatisation des tâches d administration

Introduction à l informatique en BCPST

Le routeur de la Freebox explications et configuration

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

Windows Serveur 2012 : DHCP. Installation et mise en place

WINDOWS NT 2000: Travaux Pratiques. -Boîtier partage d'imprimante- Michel Cabaré Janvier 2002 ver 1.0

Transcription:

Université de Bretagne Occidentale UFR Sciences Département d Informatique Licence STS, 2005-2006 L1, S1, Parcours A-IMP Introduction à l informatique TD/TP11 - Réseaux (corrigé) 1 Travaux Dirigés Exercice 1 Des protocoles de communication (TCP/IP, FTP, etc.) ont été mentionnés en cours. Ces protocoles permettent les échanges d informations sur les réseaux. Nous ne présentons pas les détails de fonctionnement de ces protocoles car cela nécessite des connaissances techniques trop spécifiques. Il existe cependant dans la vie courante des protocoles de communication ayant le même type de fonctionnement. Dans cet exercice, il s agit de caractériser le protocole téléphonique à travers son protocole d appel, son protocole de réception d appel et la manière dont ils interagissent. Question : Représenter le protocole téléphonique sous la forme d un diagramme temporel. Solution : Cf. figure 1. On peut aussi parler du protocole social (bonjour je suis untel... au-revoir). On pourra se baser sur cet exemple pour faire quelques parallèles avec le fonctionnement des protocoles des réseaux informatiques. Par exemple, pour instaurer une communication entre deux machines A et B : émission d un message de synchronisation de A vers B, A se met en attente d un accusé de réception de B, B reçoit le message de synchronisation de A et émet un accusé de réception vers A (pour refuser ou accepter la communication), A reçoit l accusé de réception de B, si ok : le canal de communication est alors utilisable par A et B pour échanger des informations, etc. sinon, fin de la (tentative) de communication. Exercice 2 : cryptographie par substitution simple Dans cet exercice et les deux suivants, nous illustrons les méthodes historiques de cryptographie. Ces méthodes ne sont plus utilisées car elles n ont plus aucun secret pour personne aujourd hui. Cependant, les techniques actuelles sont souvent basées sur les mêmes principes que ces premiers algorithmes, et leur nouvelle complexité provient en général de la combinaison de plusieurs de ces principes et du recours à des clés (au sens général) de plus grande taille. Pour chaque méthode, on considère des messages clairs et chiffrés représentés avec les 26 lettres de l alphabet et l espace. 1

2.1. Substitution simple ou monoalphabétique Dans ce système, la clé est une permutation de l alphabet, et chaque lettre du clair est remplacée par son image par la permutation. Le déchiffrement se fait en utilisant la permutation inverse. En pratique, la clé peut être représentée par une séquence de 26 lettres UXEB... (A U, B X, C E, D B, etc.), et les espaces sont souvent supprimés lors du chiffrement. Cette méthode est très facilement décryptable par analyse de fréquence (par exemple, on sait qu en général la lettre la plus fréquente est un E, et ainsi de suite...). Question : Chiffrer le message MON MESSAGE EN CLAIR avec la clé LEPANIER- DECRABESPUISTOUTLEWAGONZOOKYQUEVAHJXFM. message chiffré = TWOTNYYLRNNOPULCK 2.2. Substitution de multigramme A lieu de substituer une lettre, on substitue une séquence de lettres (digramme, trigramme, multigramme). Une substitution de digrammes peut se faire à la main (grâce à une clé sous forme de tableau 26*26 ayant en abscisse la première lettre, en ordonnée la seconde, et le chiffré dans la case correspondante). Au-delà, la clé devient vite difficle à représenter car sa taille croît très rapidement. Cette méthode est encore décryptable par analyse de fréquence de multigrammes. Question : Soit la substitution de digramme selon la clé qui chiffre un digramme par : la lettre suivant la première lettre du digramme suivie de la lettre précédent la seconde lettre du digramme (par exemple, TU UT ). Chiffrer le message UN MULTIGRAMME. message chiffré = VMNTMSJHSZNLF Exercice 3 : cryptographie par transposition Etant donné un entier d, une transposition de longueur d consiste à diviser le clair en blocs de longueur d, puis à permuter les lettres à l intérieur de chaque bloc à l aide d une permutation fixée. Par exemple, avec d=4 et la permutation (4,2,1,3), le message ABCDEFGHIJKL devient DBACHFEGLJIK. L avantage de la transposition par rapport à la substitution est qu elle ne conserve que la fréquence des lettres, et pas celle des multigrammes. Question : Soit d=6 et la permutation (6,5,4,3,2,1). Chiffrer le message CRYPTOGRA- PHIE PAR TRANSPOSITION. message chiffré = OTPYRCIHPARGRTRAPESOPSNANOITI Exercice 4 : les chiffres de Vigenère et de César 4.1. Chiffre de Vigenère La clé du chiffre de Vigenère est une séquence finie de d lettres. Le chiffrement de la première lettre du clair se fait en ajoutant modulo 26 la première lettre du clair et la première lettre de la clé (A=0,..., Z=25). La deuxième lettre du chiffré s obtient en ajoutant les deuxièmes lettres du clair et de la clé. Lorsque la clé est épuisée, on la reprend au début. Par exemple, si l on chiffre CRYPTOGRAPHIE avec BATO, on obtient DRR- DUOZFBPAWF. 2

On appelle chiffre de César le cas particulier du chiffre de Vigenère avec une clé de taille 1. Le chiffre de César est très facile à décrypter par analyse de fréquence (une fois repérée la lettre E, le décalage est connu). Question 1 : En utilisant le chiffre de César avec la clé = D, chiffrer le message C EST TROP FACILE. message chiffré = FHVWWURSIDFLOH Question 2 : En utilisant le chiffre de Vigenère avec la clé = VIGENERE, chiffrer le message VRAIMENT ETONNANT CECI. message chiffré = QZGMZIEXZBURAEEXXMIM 4.2. Chiffre de Vigenère en auto-clé C est le même principe que le chiffre de Vigenère sauf que lorsque la clé est épuisée, on utilise le clair lui-même comme clé (au lieu de reprendre la clé à son début). Par exemple, si l on chiffre CRYPTOGRAPHIE avec BATO, on obtient DRRDV- FEGTDNZE (la clé complète étant BATOCRYPTOGRA au lieu de BATOBATOBA- TOB ). Question : Avec la clé = SECRET, chiffrer le message ENCORE PLUS ETONNANT CELA. message chiffré = WREFVXTYWGVXDYHSRMQRYA avec la clé totale SECRE- TENCOREPLUSETONNA. Exercice 5 : Html et Javascript Le langage Html permet de créer des pages web statiques. Pour écrire des pages dynamiques, il est nécessaire d utiliser un langage de script, en plus, à l intérieur de la page html. Dans cet exercice, nous donnons quelques rudiments du langage de script Javascript et les appliquons sur des exemples simples de type formulaire. Structure d une page web dynamique : <HTML> <HEAD> <TITLE> Le titre de ma page </TITLE> <Script language=javascript> morceau de code Javascript -> permet la définition de données, structures de données et algorithmes (fonctions, procédures) utilisables dans la page web (zone Body). </Script> </HEAD> <BODY> 3

</BODY> </HTML> Le corps de mon document... <Form> -> Balise pour créer des zones dynamiques (type formulaire). -> Les définitions de la zone Script sont utilisables ici. </Form> Quelques balises utiles dans les formulaires : <form name= formulaire >...</form> : une zone de formulaire est toujours matérialisée par cette balise ; <input type= text name= nom size= 25 > pour créer une zone linéaire de texte (de taille 25 caractères ici), le champ name est utile pour accéder plus tard à l objet texte et à ses caractéristiques (par exemple sa valeur) ; <textarea name= comments rows=4 cols=30>...</textarea> pour créer une zone de texte plus importante (ici, 4 lignes et 30 colonnes, avec un ascenseur sur la droite si le nombre de lignes dépasse 4) ; <input type= checkbox name= caseacocher > pour créer un bouton de type case à cocher ; <input type= radio name= c1 onclick= q1=0 > pour créer un bouton rond radio (ici, l action d affectation de 0 à la variable q1 est effectuée si on clique sur le bouton) ; <input type= radio name= c2 onclick= q1=1 checked> idem ci-dessus avec présélection du bouton (attribut checked ) ; <input type= button name= boutonresultat value= Voir le résultat! onclick= calculer() > pour créer un bouton rectangulaire, dans lequel s affiche sa valeur (ici, Voir le résultat! ), et qui déclenche la fonction calculer() lors de l évenement clic (la fonction calculer() doit être définie dans la partie Script) ; <input type= reset value= Effacer les données > pour créer un bouton avec l affichage Effacer les données, qui lors de l évenement clic, effacera le contenu de toutes les zones de saisie du formulaire ; liste déroulante (ici, avec codage sur 1 caractère et 6 possibilités de choix) : <select name= pays size=1 lenght=6> <option>suisse <option>allemagne <option>france <option>etats-unis <option>italie <option>autres </select> Pour accéder à la valeur d un bouton quelconque ou d une zone de texte de nom toto, dans un formulaire de nom form1, on écrit : document.form1.toto.value (accès à l attribut value). Pour accéder à la valeur choisie dans une liste déroulante de nom liste, dans un formulaire de nom form1, on écrit : document.form1.liste.selectedindex. Question 1 : Ecrire le code Html/Javascript correspondant à la page de la figure 2. 4

Question 2 : Ecrire le code Html/Javascript correspondant au quizz de la figure 3. Question 3 : Ecrire le code Html/Javascript permettant d afficher une page web calculatrice très simple (on ne fera qu une seule opération à la fois). Solution : On ne fait pas un cours Javascript, mais faire remarquer que Javascript ressemble beaucoup à VB. On retrouve l aspect impératif au niveau algorithmique (variables, affectations, conditionnelles, boucles...), les pseudo-notions d objets, librairies d objets graphiques avec méthodes et attributs pour récupérer des caractéristiques des objets (value, name, type...) et associer des actions à des évenements (onclick, onchange...). Ils doivent réussir à faire la partie html, avec les balises spécifiques au formulaire. Par contre, il vaut mieux leur demander d écrire la partie script en langage de description, et leur donner la version Javascript en correction (comme ça ils ne seront pas bloqués, et je pense que leur connaissance du VB les aidera à comprendre sans problème la correction javascript). On profitera de la question 2 pour tester leurs connaissances réseaux (plus que basiques) avec le quizz. --------------------------> Question 1 : <HTML> <HEAD> <TITLE> Votre avis nous intéresse!</title> </HEAD> <BODY> <h1>enqu^ete de satisfaction</h1> Veuillez indiquer vos noms et prénoms, puis nous donner vos commentaires. <BR> <form> Votre Nom <input type="text" name="nom" size=15> <p> Votre Prénom <input type="text" name="prenom" size=15> <p> Vos commentaires <textarea name="comment" rows=5 cols=30></textarea> <p> <input type="reset" value="effacer"> </form> </BODY> </HTML> --------------------------> Question 2 : <HTML> <HEAD> <TITLE>Quizz général sur les réseaux</title> <script language=javascript> var q1,q2,q3,q4,q5; 5

function calculer () { score = q1+q2+q3+q4+q5; alert("votre score : " + score + "/5.") } </script> </HEAD> <BODY> <H1>Quizz général sur les réseaux </H1> Répondez aux questions suivantes afin d évaluer votre connaissance du cours : <P> <hr> <form> Dans le protocole IPv4, l adresse IP 120.34.56.317 existe-elle? <input type="radio" name="c1" onclick="q1=0">oui <input type="radio" name="c1" onclick="q1=1">non L adresse IP 120.54.21.2 est-elle sur le m^eme sous-réseau que l adresse IP : <input type="radio" name="c2" onclick="q2=1"> 120.55.37.1 <input type="radio" name="c2" onclick="q2=0"> 67.3.21.2 Quelle est la différence entre Internet et le Web? <input type="radio" name="c3" onclick="q3=0"> aucune <input type="radio" name="c3" onclick="q3=1"> internet est un support physique et le web un support logique (d informations) <input type="radio" name="c3" onclick="q3=0"> le web est un support physique et internet un support logique (d informations) Lequel de ces services permet d exécuter un programme à distance sur une machine cible : <input type="radio" name="c4" onclick="q4=0"> FTP <input type="radio" name="c4" onclick="q4=1"> SSH <input type="radio" name="c4" onclick="q4=0"> IRC Laquelle de ces topologies réseau n existe pas? <input type="radio" name="c5" onclick="q5=0"> en bus <input type="radio" name="c5" onclick="q5=0"> en étoile <input type="radio" name="c5" onclick="q5=1"> en guirlande <input type="radio" name="c5" onclick="q5=0"> en maillage <P> <input type="button" name="bouton_resultat" value="voir le résultat!" onclick="calculer()"> </form> </BODY> </HTML> 6

--------------------------> Question 3 : <HTML> <HEAD> <TITLE>Calculatrice web</title> <script language=javascript> var op1,op2,op,r; function appliquer (op,op1,op2) { if (op==0) {r = op1 + op2;} else if (op==1) {r = op1 - op2;} else if (op==2) {r = op1 * op2;} else {r = op1 / op2;}; alert("résultat = " + r) } </script> </HEAD> <BODY> <H1>Une calculatrice (très) simple</h1> <hr> <form name="calc"> <strong>première opérande : </strong> <input type="text" name="op1" size="5"><p> <strong>deuxième opérande : </strong> <input type="text" name="op2" size="5"><p> <strong>opération : </strong> <select name="select_op" size=1 lenght=4> <option>addition <option>soustraction <option>multiplication <option>division </select><p> <input type="button" name="bouton_calcul" value="voir le résultat!" onclick="appliquer(document.calc.select_op.selectedindex,eval(document.calc.op1.value), eval(document.calc.op2.value))"> </form> </BODY> </HTML> 7

Protocole d appel Protocole de réception A B décrocher téléphone sonnerie téléphone sonnerie attendre tonalité libre décrocher composer numéro arret sonnerie parler! (protocole social) (écoute signal d écho) interruption signal d écho tonalité de fin de communication parler! (protocole social) tonalité de fin de communication Fig. 1 Le protocole téléphonique 2 Travaux Pratiques Exercice 1 : manipulations réseaux sous Linux Cet exercice a pour but de manipuler quelques commandes systèmes et réseaux en Linux. Pour cela, se connecter sous Linux, ouvrir une fenêtre terminal (console), taper les commandes suivantes et noter à chaque fois les résultats obtenus : 1. hostname (ou hostname -f) : nom de la machine long 2. hostname -i : adresse IP de la machine 3. hostname -s : adresse courte 4. hostname -d : domaine 5. finger votrenomutilisateur : quelques caractéristiques de l utilisateur 6. ping nommachinevoisine : test de connection avec la machine voisine 7. traceroute www.free.fr : donne le routage pour accéder à www.free.fr 8. ssh nommachinevoisine : accès distant à la machine voisine 9. talk nomvoisin@nommachinevoisine (arrêt du processus avec contrôle+c) 10. ll 8

Outre le listing des fichiers, cette commande affiche les droits d accès sur les fichiers. Ainsi, on voit les droits d accès en lecture, écriture et exécution des groupes tout le monde, groupe et utilisateur sous la forme rwxrwxrwx pour chaque fichier ou répertoire. La commande chmod [ugoa][+-][rwx] nomfichier permet de changer les droits d accès d un groupe d utilisateurs à un fichier. 11. Appliquer chmod sur au moins un exemple. Exercice 2 : manipulations réseaux sous Windows Cet exercice a pour but de manipuler quelques commandes systèmes et réseaux en Windows. Pour cela, se connecter sous Windows, ouvrir une fenêtre invite de commandes (Démarrer Programmes Accessoires invite), taper les commandes suivantes et noter à chaque fois les résultats obtenus : 1. hostname : nom de la machine 2. finger votrenomutilisateur : quelques caractéristiques de l utilisateur 3. ping nommachinevoisine : test de connection avec la machine voisine 4. netstat : donne l état des connections actives 5. telnet nommachinevoisine (sortie avec quit ) : accès distant à la machine voisine 6. dans un navigateur, entrer l adresse ftp : ftp ://ftp.inria.fr aller dans le répertoire pub/ puis TeX/ puis GUTenberg/ par exemple Vous êtes prêts à télécharger une version du célèbre traitement de texte Latex! Exercice 3 : cryptographie Les sites http ://www.bibmath.net/crypto/ et http ://lwh.free.fr/pages/algo/crypto/cryptologie.htm proposent des applets implantant de nombreux algorithmes de cryptographie (dont ceux vus en TD). Question : Tester quelques-uns de ces algorithmes sur différents exemples pour bien en comprendre le fonctionnement. Exercice 4 : création de pages web Question 1 : Ecrire une page Html sur le sujet de votre choix avec au moins une image, un lien vers un site web, des listes ou tableaux, et quelques traitements sur l affichage (couleurs, différentes tailles de texte, gras, italique, etc.). Question 2 : Ecrire une page Html/Javascript réalisant un questionnaire sur le sujet de votre choix. Question 3 : Créer un site web en liant entre elles les deux pages précédentes, et en y ajoutant de nouvelles pages s il reste du temps. Références Pour le langage Html : http ://www.w3.org (site du World Wide Web Consortium, avec des tutoriels etc.) Pour le langage Javascript : http ://www.javascriptkit.com/javatutors/index.shtml (tutoriels...) 9