Noms : Prénoms : Classe :



Documents pareils
Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Définitions. Numéro à préciser. (Durée : )

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var - E mail : bij@agasc.fr / Tel : CONSIGNE N 1 :

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

IV- Comment fonctionne un ordinateur?

V- Manipulations de nombres en binaire

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Algorithme. Table des matières

1 Recherche en table par balayage

PROJET ALGORITHMIQUE ET PROGRAMMATION II

LE GUIDE COMPLET PRETS A PARIER

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

La question est : dans 450 combien de fois 23. L opération est donc la division. Le diviseur. Le quotient

Chap III : Les tableaux

Représentation des Nombres

OLYMPIADES ACADEMIQUES DE MATHEMATIQUES. 15 mars 2006 CLASSE DE PREMIERE ES, GMF

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Une ergonomie intuitive

Technique opératoire de la division (1)

Express Import system

Développement décimal d un réel

Manuel d Utilisation Nouvelle Plateforme CYBERLIBRIS : ScholarVox Management

Algorithmique et Programmation, IMA

Module 16 : Les fonctions de recherche et de référence

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

CREG : versailles.fr/spip.php?article803

Guide d utilisation 2012

Géographie CM2. Guide pédagogique. Ressources vidéoprojetables & 14 animations interactives. Jacques Arnaud Nicole Darcy Daniel Le Gal

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Petit lexique de calcul à l usage des élèves de sixième et de cinquième par M. PARCABE, professeur au collège Alain FOURNIER de BORDEAUX, mars 2007

COURS ALGORITHMIE. Mathématiques. Le monde merveilleux des algorithmes!! Croyez-moi, vous allez les adorer. Julien Bordas T.S 3

TP1 - Prise en main de l environnement Unix.

les Formulaires / Sous-Formulaires Présentation Créer un formulaire à partir d une table...3

Groupe Eyrolles, 2006, pour la présente édition, ISBN :

EXERCICES DE REVISIONS MATHEMATIQUES CM2

Programme d Accès Communautaire / Atelier 4 Initiation à Microsoft Excel PLAN DE COURS 3 MICROSOFT EXCEL 4 LANCER EXCEL 4

Vous revisiterez tous les nombres rencontrés au collège, en commençant par les nombres entiers pour finir par les nombres réels.

Créer le schéma relationnel d une base de données ACCESS

Première étape : créer le fichier de données - extraire les données de PMB et les transférer dans Excel

ÉPREUVE COMMUNE DE TIPE Partie D

Atelier Introduction au courriel Utiliser Yahoo.ca Guide de l apprenant

Activité 1. Compter les points Écriture binaire des nombres. Résumé. Liens pédagogiques. Compétences. Âge. Matériel

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Comment accéder à d Internet Explorer

Le langage C. Séance n 4

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Direction générale statistique et information économique. Manuel d usage : l application web pour l enquête sur la structure des entreprises


L informatique en BCPST

TP 1. Prise en main du langage Python

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Guide d implémentation. Réussir l intégration de Systempay

Représentation d un entier en base b

Comment créer votre propre lampes LED

Qu est ce qu un ?

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Le cas «BOURSE» annexe

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

1. Ouvrir Internet Explorer Faire défiler une page Naviguer dans un site Internet Changer d adresse Internet (URL) 2

BACCALAURÉAT GÉNÉRAL SESSION 2012 OBLIGATOIRE MATHÉMATIQUES. Série S. Durée de l épreuve : 4 heures Coefficient : 7 ENSEIGNEMENT OBLIGATOIRE

PROTEGER SA CLE USB AVEC ROHOS MINI-DRIVE

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Initiation à la programmation en Python

Cours Excel : les bases (bases, texte)

Cours 1 : Qu est-ce que la programmation?

Setting Up PC MACLAN File Server

Introduction à MATLAB R

Premiers Pas en Programmation Objet : les Classes et les Objets

Rapports d activités et financiers par Internet. Manuel Utilisateur

Comment créer des rapports de test professionnels sous LabVIEW? NIDays 2002

MAT2027 Activités sur Geogebra

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Fiche Pratique. Présentation du problème. Installation du logiciel. Etape 1. MAJ le 17/10/2011

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

A - Créer une Base de données au format dbase

iil est désormais courant de trouver sur Internet un document

Le cas «BOURSE» annexe

STAGE IREM 0- Premiers pas en Python

Le langage SQL Rappels

TP 1 Outils collaboratifs de base

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

Projet Matlab : un logiciel de cryptage

Solutions du chapitre 4

Les Différents types de Requêtes dans Access

Service des ressources informatiques - Conseil Scolaire de District Catholique Centre-Sud Page 1

Algorithmique et structures de données I

Installation de Windows 2008 Serveur

Atelier Introduction au courriel Utiliser Guide de l apprenant

Probabilités Loi binomiale Exercices corrigés

TD de supervision. J.P. Chemla. Polytech Tours Département productique 2ème année

Services bancaires par Internet aux entreprises. Guide pratique pour : Transfert de fichiers Version

Introduction à l étude des Corps Finis

EVALUATIONS MI-PARCOURS CM2

Sommaire. Images Actives Logiciel libre développé par le CRDP de l académie de Versailles 2 Rue Pierre Bourdan Marly le Roi

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Algorithmique avec Algobox

Bases de programmation. Cours 5. Structurer les données

Transcription:

Groupe : Noms : Prénoms : Classe : Nom de votre équipe : 1

Voici les messages retrouvés par les enquêteurs : Un des messages retrouvés chez Emma (message 1): DRTYV IZVZC DVKRI UVHLF EJVMF ZVJRD VUZAR ZDVIR ZJKRE KHLFE GLZJJ VJVMF ZIKFL JCVJA FLIJA VKRZD VKVCC VDVEK Message retrouvé dans sa poche lors de la découverte de son corps (message 2) : DRTYV IZVKL DVDRE HLVJK IFGIV KIFLM VDFZR CVEUI FZKYR SZKLV CAVLU ZRGIV JCVJT FLIJ Autre message retrouvé chez Emma (message 3) : XCIEX CPVYC PWLJJ RDPDI YTVME RZGSO IKPFY INCYI NOMNP GPMDG PVBID PLRZW OCPXP GYIAI DWBID PLQJR QWNUF SXIXS NWLUZ PLRZV YWZVP TJMDX ZPFWV MOWOU FSXIE ODXAC PVFBO VLJVM WSIQL HCWXO DWUSI IDIDW AONWF FLYTZ HETHX VFEPE CFDZP FVMEW GWTZY INCPZ CODXN SLYTG ZTLGN IPBOV PBJYD WGQLR ZNLTV MEQJQ AFZRO FZTWI NHFBZ JZWNU FWGRP GPTAC MXPFV MEDVW BIZNP TVWDS YYXOG EDOAM WZZNP GVMDE PIEIK IYGZW BIZNP LVKPF ZIEEP IUSYI GFVMD ZVUFW OXPFH ETGEI EONWF FZUFS HIDQM ETBOI DGJRE TJROS ZWZBY IGFVM EDVVE WMXCS NPZWI XZWZX XCDPZ WIHPH JYDQZ WDCPG TGYID EPSYO PVLZZ FLQEI ESEYC SLYZB KECHD VLZJM YHMID ZJMYR DGTON EXSYM XOXLP FDI 2

1) Observez ces messages. a) Que remarquez-vous? b) Que peut-on supposer? 2) Effectuer une recherche sur internet sur les thèmes suivants : Code de César Analyse fréquentielle afin de répondre aux questions suivantes : a) En quoi consiste le code de César? b) A quoi doit-il son nom? c) Coder le mot «oui» à l aide du code de César avec une clé de 10 3

d) Compléter cet algorithme (i.e. = cette suite finie d instructions) vous permettant de construire un disque de chiffrement, c est-à-dire un disque de ce type : Tracer un disque de rayon 5cm Marquer son centre Le découper e) Construire un disque de chiffrement (qui sera à joindre à ce dossier- mettez le nom de votre groupe au dos) f) Coder le mot «MATHEMATIQUES» à l aide du chiffre de César avec une clé de 8 :.. g) Décoder le mot «XNWRK» avec une clé de 22 :.... 3) Quelle est la donnée manquante pour décoder les messages retrouvés par les enquêteurs, à supposer qu ils utilisent un code de César? 4) Comment peut-on «casser» un code de César? 4

5) On considère le texte ci-dessous : «J adore suivre l enseignement d exploration «méthodes et pratiques scientifiques», surtout en mathématiques! Je me demande ce qui a bien pu arriver à cette pauvre Emma et si on va retrouver l assassin.» Notre but est de construire un tableau donnant la fréquence d apparition de chacune des lettres de l alphabet dans ce texte, puis dans les messages 1 et 2 retrouvés par les enquêteurs de la police criminelle. a) Aller à l adresse : http://madamekrafft@e-monsite.com, puis dans la rubrique MPS télécharger la feuille de calcul intitulée «fréquence d apparition». b) Compléter cette feuille puis imprimer. (On fera afficher les fréquences sous forme de pourcentage avec deux chiffres après la virgule). c) Quelles sont les lettres qui ont la plus grande fréquence d apparition? d) D après ce que vous venez de faire, quelle(s) clef(s) êtes-vous tenté de tenter? e) Trouvez quelle est la bonne clef puis décoder la séquence de lettres : «DRTYVIZV» commune aux messages 1 et 2 inscrits en page 2 : ( avec la clef ) Vous pensez avoir découvert la clé des messages, mais décoder toutes les lettres des trois messages risque d être fastidieux. C est pourquoi vous allez écrire un algorithme que vous allez programmer sur Algobox, pour qu il décode le message à votre place. Pour cela vous aurez besoin d être un peu formés : 5

1) Boucle : Il s agit du procédé itératif le plus courant en algorithmique, on demande de faire une action pour i allant de telle valeur initiale à telle valeur finale. Exemple : Ecrire un algorithme faisant afficher à l écran tous les entiers de 1 à 100 (un nombre sur chaque ligne) 2) Faîtes une recherche sur internet sur le code ASCII puis répondre aux questions suivantes : a) Que signifient les initiales ASCII? b) Dans le code ASCII, par quels nombres sont codées les lettres A à Z? c) Quelle opération faudrait-il appliquer au code ASCII des lettres A à Z pour qu elles soient codées cette fois-ci par les nombres 0 à 25? d) Sur Algobox : L instruction a.charcodeat(p) permet d obtenir le nombre égal au code ascii de la lettre figurant à la position p dans la chaîne de caractère a Atttention : dans une chaîne de caractères, le premier caractère est à la position 0, le deuxième à la position 1, etc Application : Si la variable a contient le mot «MATHEMATIQUES» et qu on stocke dans la variable b : a.charcodeat(1), que contient la variable b? L instruction String.fromCharCode(nombre) renvoie une chaîne contenant le caractère dont le code ascii est égal à ce nombre Application : Si on stocke dans la variable b : String.fromCharCode(67), que contient la variable b? 3) Congruences modulo n : En se servant du code ASCII des lettres du message, on se ramène à des nombres, on peut donc faire des calculs. Admettons qu on soit parvenu à représenter chacune des lettres de A à Z par un chiffre de 0 à 25 de la sorte : (cf remarque du 2)c)) 6

Imaginons à présent qu on ait un message crypté par un code de César avec une clé de 5. a) Quel calcul devez-vous faire pour retrouver la lettre dans le message en clair correspondant à un N dans le message codé? b) Même question pour la lettre J : c) Que se passe-t-il si on applique le même raisonnement à la lettre C? Pour pallier ce problème, les mathématiciens ont inventé un ensemble appelé anneau d entiers, noté Z 26Z qui contient des nombres notés 0, 1,, 25. A chaque entier relatif, on associe un et un seul de ces nombres en prenant son reste dans sa division euclidienne par 26. Exemple 1 : 59 = 26 2 + 5, Le reste de 59 dans sa division euclidienne par 26 est donc 5. On dit que 59 est congru à 5 modulo 26. On note aussi : 59 5 modulo26 Le nombre 59 est donc représenté par le nombre 5 dans l anneau des entiers Z 26Z. Exemple 2 : Reprenons l exemple de tout-à-l heure : en voulant décoder le C avec une clé de 5, on était tombé sur le nombre -3. Or : 3 = 26 1 + 23. Donc 3 23 modulo26 On trouve donc que la lettre C cryptait en fait la lettre d) A vous de jouer : Retrouvez à quels entiers de Z 26Z correspondent les nombres suivants : (la 1ère ligne a été remplie d après ce qui précède à titre d exemple) Nombre donné : Nombre Calcul explicatif correspondant dans Z 26Z 59 5 59 = 26 2 + 5 27 79-8 -12 e) Vérifiez les nombres trouvés dans la 2 ème colonne grâce à l instruction nombre%26 d Algobox qui donne le reste d un nombre dans sa division euclidienne par 26. Attention : pour Algobox il faut que nombre soit positif, donc vous pouvez lui rajouter 26 (qui ne changera pas le reste) pour avoir un nombre positif 7

4) L algorithme enfin!! Ci-dessous a été écrit un algorithme en français, permettant de décrypter un message donné si on a la clef. Certaines parties sont manquantes. a) Compléter les pointillés Algorithme en Français : Commentaires : Variables : i est de type. L est de type. a est de type. Clé est de type. b est de type nombre c est de type. Début de l algorithme : Afficher : «entrer le message à décoder en majuscules et sans espace» Lire ce message et le stocker dans.. Afficher : «quel clef dois-je utiliser?» Lire la clef et la stocker dans.. Stocker dans L la longueur du message a Pour i allant de 0 à L-1 : Prendre le code ascii de la lettre en position i, i sera le Compteur de la boucle L contiendra la Longueur du message a contiendra le message à déchiffrer Clé contiendra la clé à utiliser b contiendra le code ascii de chaque lettre après décryptage c contiendra chaque lettre décryptée (avec un retour à la ligne) (avec un retour à la ligne) La fonction a.length donne la longueur du message contenu dans la variable a On utilise : lui enlever Pour se ramener à un nombre entre 0 et 25 soustraire. Pour déchiffrer Rajouter 26 Pour être sûr d avoir un nombre positif prendre le résultat modulo 26 de ce calcul (pour rester entre 0 et 25) : On utilise : rajouter Pour retourner entre 65 et 90 stocker le résultat dans b Stocker dans c la lettre ayant pour code ascii le nombre b On utilise : Afficher c (sans retour à la ligne!) Fin de la boucle pour Fin de l algorithme. b) Programmer l algorithme sur algobox, et s en servir pour décrypter les messages 8

c) Que donne chacun des messages? Message 1 : Message 2 : Message 3 : Vous avez constaté que le message n 3 semble avoir été codé dans un autre langage. En examinant l historique de l ordinateur d Emma, les enquêteurs ont remarqué qu elle avait fait une recherche sur Vigénère. Nous supposons que le message 3 a été codé par un chiffre de Vigénère et allons tenter de le déchiffrer grâce au test de Kasiski. 1) Effectuer une recherche sur les termes en gras et soulignés ci-dessus. 2) Repérer dans le message 3 des séquences répétées puis compléter le tableau ci-après Séquence répétée BID PZWI BIZNP ZJMY Distance entre les répétitions Longueurs de clef possibles (diviseurs de la distance différents de 1) 9

3) Quelle est selon vous la longueur de la clef utilisée?. 4) Soit k ce nombre. Alors les 1 er, (k+1)ème, (2k+1)ème etc. caractères ont été codés par la même lettre : la première lettre de la clef de Vigénère. Retrouvez cette première lettre à l aide d une analyse fréquentielle. Procéder de même avec les autres lettres du code. Selon vous, quel est le code qui a été utilisé?. 5) Programmer Algobox en adaptant l algorithme du 4) de la deuxième partie, puis noter dans le cadre ci-dessous le message 3 après décryptage : Correction pour les groupes qui ont du mal : THE END, alors qu en pensez-vous? qu est-il-arrivé à Emma? 10