Travaux Pratiques 9 : Trouver un mot de passe automatiquement
Transcription
Travaux Pratiques 9 : Trouver un mot de passe automatiquement
Lycée Madeleine Michelis - ECE1 Mathématiques - 2016/2017 Travaux Pratiques 9 : Trouver un mot de passe automatiquement Dans ce TP, nous nous intéressons aux méthodes permettant de trouver un mot de passe automatiquement à l'aide de structures de programmations usuelles. 1 Situation 1 : le mot de passe est un entier naturel On considère un compte quelconque dont nous savons que le mot de passe est un entier naturel. Pour se connecter à ce compte on appelle la fonction login1 dont le code, donnée ci-dessous, est à taper dans l'éditeur et à compiler. Code 1 2 3 4 5 6 7 8 9 10 global password ; password = 5 5 6 1 ; function [ y ] = l o g i n 1 ( x ) i f ( x == password ) then else y = "Vous e t e s c o n n e c t e s " ; y = " Echec " ; end endfunction Que fait cette fonction ? Essayer les instructions suivantes dans la console : Code login1(4513) login1(9899) Les lecteurs attentifs auront compris que le mot de passe correct est 5561. Imaginons que nous ne connaissons pas le contenu de la fonction login1. Comment faire pour que Scilab retrouve automatiquement le mot de passe correct et l'ache ? 1 Lycée Madeleine Michelis - ECE1 Mathématiques - 2016/2017 Exercice 1 Créer un programme qui permette d'acher automatiquement le mot de passe du compte associé à login1. 2 Situation 2 : la longueur du mot de passe est connue Dans cette section, le mot de passe n'est plus nécessairement un entier naturel mais nous supposons qu'il s'agit d'un string de 4 caractères, choisis parmi les chires 0, 1 . . . 9 et les lettres minuscules a, b, . . . , z . Comme dans la section 1, nous considérons une fonction login2 qui permet de se connecter au compte. Code 1 2 3 4 5 6 7 8 9 10 global password ; password = " f 5 q 7 " ; function [ y ] = l o g i n 2 ( x ) i f x == password then else y = "Vous e t e s c o n n e c t e s " ; y = " Echec de c o n n e x i o n " ; end endfunction Tester la fonction login2 sur quelques exemples. Puis : Exercice 2 Créer un programme qui permette d'acher automatiquement le mot de passe du compte associé à login2. 3 Situation 3 : la longueur du mot de passe est inconnue. Cette fois, la longueur du mot de passe est inconnue. Comme précédent, on introduit la fonction login3. Code 2 Lycée Madeleine Michelis - ECE1 1 2 3 4 5 6 7 8 9 10 Mathématiques - 2016/2017 global password ; password = " e7x " ; function [ y ] = l o g i n 3 ( x ) i f x == password then else y = "Vous e t e s c o n n e c t e s " ; y = " Echec de c o n n e x i o n " ; end endfunction Tester la fonction login3 sur quelques exemples. Puis : Exercice 3 Créer un programme qui permette d'acher automatiquement le mot de passe du compte associé à login3. Fin 3