Cryptographie

et

 

Conception & réalisation d'un calendrier crypté

 

Mais qu'est-ce qu'on va faire cette semaine? 🤔

Qu'est-ce qu'on va faire cette semaine? 🤔

gravures laser des symboles que VOUS aurez dessiné!

impression 3D du cache que VOUS aurez modélisé!

morceau de bois que VOUS aurez choisi!

design (horizontal? Vertical? Autre?) que VOUS aurez choisi!

Qu'est-ce qu'on va faire cette semaine? 🤔

  • Dessiner


     
  • Imaginer
  • Concevoir
  • Fabriquer
  • Persévérer
  • S'amuser!

en 3D

en 2D

au crayon

à la souris

...Mais aussi...

Essayer de gagner le cadeau-surprise de vendredi en résolvant la "grande énigme"!

 

Pour cela, on découvrira quelques techniques de "hackers" :-)

Programme

  • Introduction
  • Règles communes
  • Agenda
  • On commence!

Règles communes

  • les gsm uniquement aux pauses

  • connexion internet : jouer sans avoir la réponse à la grande énigme = coupure d'internet = 100% chances de perdre

  • Respect des autres...cela va de soi :-)

  • Respect du lieu : déchets à la poubelle, canettes à la poubelle PMC, ...

Parce qu'il faut bien...

ça, c'est fait ^^

Agenda

  • lundi : introduction, présentations et brise-glace, présentation du FabLab, notions de base de la cryptographie, début dans Inkscape + laser

  • mardi:  choix du design, de la police, du bois, mesures, dessin dans Inkscape

  • mercredi: intro à la modélisation et à Tinkercad, modélisation du cache et impressions 3D, fin du dessin

  • jeudi: gravures laser des calendriers, fin des dessins.

  • vendredi: finitions du calendrier + solutions de la grande énigme + vainqueur

sur la semaine

Agenda

  • 9h - 10h30        : 

  • 10h30 - 10h45 : pause

  • 10h45 - 12h30 : 

  • 12h30 - 13h15 : pause de midi

  • 13h15 - 14h30 : 

  • 14h30 - 14h45 : pause

  • 14h45 - 16h00 : 

sur une journée

On commence!

On commence!

par quoi?

On commence!

par se connaître!

GAME TIME 😎

Présentations, puis...

Présentations

- Comment tu t'appelles? 

- ton hobby préféré?
- ta couleur préférée?

- ta matière préférée à l'école?
- Une idée pour améliorer le monde?

Et maintenant un petit jeu brise-glace :-)

Hackons un message chiffré!

Avec cette roue

C'est une méthode de chiffrement de la cryptographie, qu'on appelle "chiffrement par substitution mono-alphabétique"

Dans ce cas-ci, la substitution est simplement un décalage dans l'alphabet : on apelle cela une "permutation circulaire"

 

 

C'est la méthode dite "de Cesar"

Hackons le nom d'un animal!

1. Tu écris le nom de ton animal préféré

2. Tu utilises la double roue de l'alphabet pour chiffrer ton message, en choisissant un décalage (+2, -3, ...)

3. Tu écris sur un morceau de papier ton animal chiffré chiffré
----on attend que tout le monde aie fini.

4. Tu passes le papier à ton voisin de devant

5. Tu décryptes le message chiffré de ton voisin de derrière :-)

On commence?!

Les machines du FabLab qu'on va utiliser

Les machines

du FabLab
 

Les machines du FabLab

  • Découpeuse/graveuse laser
  • imprimante 3D
  • découpeuse vinyle (autocollants)
  • fraiseuse numérique (CNC)
  • scanner 3D
  • outils de menuiserie
  • électronique...(lumières? sons?)

Les machines

du FabLab
 

Les machines du FabLab

Découpeuse graveuse laser

Quels fichiers numériques?  Des dessins en 2D

- découpe : vectoriels

- gravure : vectoriels ou "matriciels" (photo, image bitmap)

 

Quel logiciel pour dessiner? Inkscape

 

Quels matériaux?

- découpe : tout, sauf les métaux (et pas trop épais)

- gravure : tout, sauf les métaux

Les machines

du FabLab
 

Les machines du FabLab

Découpeuse graveuse laser

Exemple

Les machines

du FabLab
 

Les machines du FabLab

Découpeuse graveuse laser

Exemple

Les machines

du FabLab
 

Les machines du FabLab

Découpeuse graveuse laser

Exemple

Les machines du FabLab

Imprimante 3D

Quels fichiers numériques?  Des modèles en 3D

- origine : modélisation, banque de fichier (thingiverse, ...) ou scan 3D

- format : .stl, .obj, ...

 

Quel logiciel pour dessiner? Tinkercad

 

Quels matériaux?

- PLA, ABS, ...

Les machines

du FabLab
 

Les machines du FabLab

Imprimante 3D

Exemple

La cryptographie

Qu'est-ce que c'est?

La cryptographie

Qu'est-ce que c'est?

La cryptographie

Qu'est-ce que c'est?

La cryptographie est l'art (ou la science) de protéger des messages en s'aidant souvent de secrets ou clés pour chiffrer le message

La stéganographie est l'art de faire passer inaperçu un message dans un autre message (exemple : sous les cheveux)

 

La cryptanalyse est l'art de déchiffrer des messages chiffrés (hacking)

 

La cryptologie est la science qui allie la cryptographie (chiffrer) et la cryptanalyse (déchiffrer).

La stéganographie

Exemple de stéganographie

 

- dans des images

- dans des fichiers sons

- dans des textes (acrostiches, une ligne sur 2, premier mot de chaque ligne, ...)

 

Si on ne sait pas qu'il y a un message codé, il passe inaperçu.

Si on sait qu'il y a un message codé, il est "facile" à décoder (il n'est pas "chiffré")

 

La cryptanalyse

Deux cas de figure de la cryptanalyse:

 

- attaque sur texte chiffré seul (on n'a que des messages chiffrés : pas d'infos sur la méthode de chiffrement ==> hacking)

- attaque à texte clair connu (on a des parties de messages clairs et leurs chiffrement correspondant. On déduit la méthode)

Plus facile!

Dans notre petit jeu toute à l'heure, quelle type d'attaque avez-vous fait?

 

La cryptanalyse est la technique qui consiste à déduire un texte en clair d’un texte chiffré sans posséder la clé de chiffrement. Le processus par lequel on tente de comprendre un message en particulier est appelé une attaque.

La cryptographie

Encore une page de vocabulaire et puis on est paré pour la suite!

  • chiffrement : transformation à l'aide d'une clé d'un message en clair (dit texte clair) en un message incompréhensible (dit texte chiffré) pour celui qui ne dispose pas de la clé de déchiffrement 
  • chiffre : un ensemble de règles permettant d'écrire et de lire dans un langage secret (= méthode de cryptage)
  • cryptogramme : message chiffré ;
  • décrypter : retrouver le message clair correspondant à un message chiffré sans posséder la clé de déchiffrement

La cryptographie

Techniques de chiffrement:

 

- algorithmes de chiffrement faible (ROT/Cesar, Vigenère, ...)
- algorithmes symétriques (clé secrète commune)
- algorithmes asymétriques (clé secrète + clé publique)

La cryptographie

Exemples

1. Technique de chiffrement faible : ROT/Cesar

La cryptographie

Message à chiffrer :

YOURLAB

Algorithme de chiffrement : ROT3

(A     D, B     E, C      F, etc.)

Méthodes pour réaliser le chiffrement :

- "à la main" : on écrit l'alphabet sur papier

- avec la roue

- automatiquement : avec un tableur

- automatiquement : en programmant l'algorithme

Exemples

1. Technique de chiffrement faible : ROT/Cesar

La cryptographie

Message à chiffrer :

YOURLAB

Algorithme de chiffrement : ROT3

(A     D, B     E, C      F, etc.)

 

 

A vous! (à la main ou avec la roue)

Exemples

1. Technique de chiffrement faible : ROT/Cesar

La cryptographie

Exemples

2. Attaque sur texte clair (déchiffrement)

Message chiffré :

AYPLYTYJ

 

clé de chiffrement : connue (méthode de Cesar)

On ne connait juste pas le décalage...
 

Une idée?

La cryptographie

Exemples

2. Attaque sur texte clair (déchiffrement)

Message chiffré :

AYPLYTYJ

 

clé de chiffrement : connue (méthode de Cesar)

On ne connait juste pas le décalage...
 

Mais! Je vous donne un indice: On sait que le cryptogramme de "TOUSSAINT" est "RMSQQYGLR" avec le même décalage


Alors, plus facile maintenant?

La cryptographie

Exemples

2. Attaque sur texte clair (déchiffrement)

On sait que le cryptogramme de "TOUSSAINT" est "RMSQQYGLR" avec le même décalage


Je vous donnais autant d'information en vous disant qu'un T se transforme en R, ou qu'un C se transforme en A.

Autrement dit, en vous donnant simplement le décalage.

 

Ce décalage, ainsi que la méthode associée (méthode de César) constitue la clé qui permet le chiffrement et la clé "inverse" (le décalage opposé ici) permet le déchiffrement.

La cryptographie

Exemple : plus difficile!

3. Attaque sur texte chiffré (déchiffrement)

Message chiffré :

KJQNHNYFYNTSX

 

Algorithme de chiffrement : inconnu!

 

Quel est le message clair?

A vous de jouer!

 

bonus : laisser l'ordinateur trouver pour vous en utilisant un tableur

La cryptographie

Exemple

4. Algorithme de chiffrement : Vigenère

Cette technique de chiffrement utilise comme clé un "mot" (=une suite de lettres)

 

 

La cryptographie

Exemple

4. Algorithme de chiffrement : Vigenère

Pour chaque couple de lettres:

- on regarde la colonne de la lettre du texte clair

- on regarde la ligne de la lettre de la clé

- on obtient une lettre, qui est la lettre chiffrée

Dans ce cas-ci : colonne J, ligne M, c'est la lettre V

La cryptographie

Exemple

4. Algorithme de chiffrement : Vigenère

On obtient:

La cryptographie

Comment déchiffrer un message codé avec l'algorithme de Vigenère?

Pour chaque couple de lettre:

- On regarde la ligne de la lettre de la clé

- On cherche la lettre du texte chiffré

- On regarde la colonne correspondante : c'est la lettre du texte clair

 

Ici : à la ligne de la lettre M, la lettre V se trouve dans la colonne J

La cryptographie

Cryptographie appliquée

texte clair : CORONAVIRUS

Clé : GESTE

 

Quel est le message chiffré?

 

A vous!

La cryptographie

Cryptanalyse appliquée

Message chiffré : CHUZF-CF BWTZZNIMC?

 

Clé : YOURLAB

 

Quel est le texte clair?

 

A vous!

La cryptographie

Déchiffrage de Vigenère

Message chiffré : SDFLKAOVOC

 

Clé : ???????

 

Quel est le texte clair?

 

C'est beaucoup plus difficile! Voire impossible! (Il y a une "infinité" de possibilités! En tout cas un trèèèèèès grand nombre!)

La cryptographie

clé privée / clé publique

Imaginons que l'on veuille envoyer un message secret à quelqu'un.

 

Le but de chiffrer le message, c'est qu'il soit incompréhensible par quelqu'un qui l'intercepte.

 

Or, si le message est chiffré avec l'algorithme de Vigenère, le destinataire aura besoin de la clé pour le déchiffrer.

Le message chiffré peut être public (par définition)

Est-ce que la clé peut être publique?

Il est temps de parler comme les cryptologues:

A

B

Il est temps de parler comme les cryptologues:

A

B

La cryptographie

clé privée / clé publique

Le message chiffré peut être public (par définition)

Est-ce que la clé peut être publique?

 

Que se passe-t-il si Eve connaît la clé?

 

Comme il n'exise pas une infinité d'algorithmes de chiffrement, elle peut en essayer plusieurs, et donc essayer l'algorithme de Vigenère.

 

Dans ce cas, elle déchiffrera facilement le message!

Il ne faut donc PAS que la clé soit publique!

La cryptographie

clé privée / clé publique

Supposons qu'Alice veuille envoyer un message codé à Bob.

 

La serrure représente l'algorithme de chiffrement.

L'algorithme de Vigenère est symétrique, car le chiffrement et le déchiffrement se font avec la même clé

La cryptographie

clé privée / clé publique

clé : YOURLAB

serrure :

algorithme de Vigenère

coffre fermé : message chiffré

message clair

La cryptographie

clé privée / clé publique

clé : YOURLAB

serrure :

algorithme de Vigenère

coffre fermé : message chiffré

message clair

Si Eve connait la clé : elle peut ouvrir le coffre ( = déchiffrer le message) !

La cryptographie

clé privée / clé publique

On communique donc secrètement la clé à son correspondant...mais...faut-il chiffrer la clé pour éviter que quelqu'un l'intercepte? :-)

Car...si on chiffre un message, c'est justement parce qu'il ne peut pas être intercepté!

On n'a donc pas fondamentalement avancé si on doit communiquer une clé secrète qui permet de déchiffrer le message, car elle peut tout autant être interceptée!

Si elle est interceptée, le message peut être déchiffré!

La cryptographie

clé privée / clé publique

Imaginons qu'Alice veuille envoyer un message secret à Bob.

 

Alice a sa propre clé, qu'elle garde pour elle.

Bob a sa propre clé, qu'il garde pour lui.

 

La clé d'Alice ferme le cadenas vert.

La clé de Bob ferme le cadenas rouge.

 

Comment faire pour que Bob puisse lire le message d'Alice, si tout ce qu'ils peuvent faire est de s'envoyer le coffre par la poste, et qu'il soit toujours fermé apr au moins un cadenas?

La cryptographie

clé privée / clé publique

Comment faire pour que Bob puisse lire le message d'Alice en ne faisant que s'envoyer (par la poste) le coffre fort?

La cryptographie

clé privée / clé publique

Comment faire pour que Bob puisse lire le message d'Alice en ne faisant que s'envoyer (par la poste) le coffre fort?

La cryptographie

clé privée / clé publique

C'est ce qu'on appelle un algorithme de chiffrement asymétrique! (car Alice et Bob ont chacun une clé différente)

La cryptographie

Chiffrement asymétrique

C'est l'algorithme le plus utilisé en pratique aujourd'hui!


Une clé publique, ça résoud notre problème de toute à l'heure : même si elle est interceptée, elle ne permet pas, à elle seule, de déchiffrer le message!

 

Le message ne peut être déchiffré que grâce à la connaissance de la clé publique (qu'on communique) ET d'une clé privée (qu'on ne communique jamais)!

La cryptographie

Chiffrement asymétrique

C'est l'algorithme le plus utilisé en pratique aujourd'hui!


Le protocole le plus courant est le protocole RSA

 

exemple :

- pour la sécurité des transactions bancaires sur Internet

- pour la sécurité des pages web (https)

- pour la sécurité des cryptomonnaies (Bitcoin, ...)
- pour protéger un mot de passe

La cryptographie

Chiffrement asymétrique

C'est l'algorithme le plus utilisé en pratique aujourd'hui!

Le protocole le plus courant est le protocole RSA

La cryptographie

Chiffrement asymétrique

C'est l'algorithme le plus utilisé en pratique aujourd'hui!

Le protocole le plus courant est le protocole RSA

Comment se fait-il que la clé publique puisse être...publique?

 

Comment faire en sorte que l'information qu'elle contient soit "secrète"?

La cryptographie

Chiffrement asymétrique

Comment faire en sorte que l'information que contient la clé publique soit "secrète"?

On utilise des opérations mathématiques qui sont faciles à faire dans un sens, mais difficiles à faire dans l'autre sens!

Ces opérations sont :

- dans le sens "facile" : la multiplication de deux nombres :-)

- dans le sens "difficile" : la factorisation du produit des deux nombres!

La cryptographie

Chiffrement asymétrique

Ces opérations sont :

- dans le sens "facile" : la multiplication de deux nombres :-)

- dans le sens "difficile" : la factorisation du produit des deux nombres!

Exemple :

Si je vous donne les nombres 11 et 17, vous pouvez très facilement calculer leur produit:

11 x 17 = 

 

 

La cryptographie

Chiffrement asymétrique

Ces opérations sont :

- dans le sens "facile" : la multiplication de deux nombres :-)

- dans le sens "difficile" : la factorisation du produit des deux nombres!

Exemple :

Si je vous donne les nombres 11 et 17, vous pouvez très facilement calculer leur produit:

11 x 17 = 187

 

Mais si je vous donne uniquement le nombre 437, et que je vous dit que c'est le produit de deux nombres, pouvez-vous retrouver ces deux nombres aussi facilement?

La cryptographie

Chiffrement asymétrique

Qu'est-ce que la factorisation?

 

Factoriser un nombre (entier), c'est le décomposer en un produit de nombres (entiers) qu'on ne sait plus décomposer

 

Exemple : 24 = 2 x 12 = 2 x 2 x 6 = 2 x 2 x 2 x 3

 

On ne sait pas décomposer 2 car 2 = 1 x 2

On ne sait pas décomposer 3 car 3 = 1 x 3

La cryptographie

Chiffrement asymétrique

Qu'est-ce que la factorisation?

 

Factoriser un nombre (entier), c'est le décomposer en un produit de nombres (entiers) qu'on ne sait plus décomposer

 

Comment appelle-t-on ces nombres qu'on ne sait pas décomposer?

La cryptographie

Chiffrement asymétrique

Factoriser un nombre (entier), c'est le décomposer en un produit de nombres (entiers) qu'on ne sait plus décomposer

 

On appelle les nombres qu'on ne sait plus décomposer des nombres premiers.

 

Chaque nombre entier a une décomposition (en facteurs premiers) qui est unique!

 

Exemple : Quelle est la décomposition du nombre 100? et 99?

La cryptographie

Chiffrement asymétrique

Chaque nombre entier a une décomposition (en facteurs premiers) qui est unique!

Donc si la clé publique est le produit de deux nombres premiers, alors en connaissant un des deux facteurs (la clé privée d'Alice), on trouve l'autre!

Mais si on ne connait pas un des deux facteurs, on ne sait pas les retrouver (en un temps raisonnablement court)

La cryptographie

Chiffrement asymétrique

Mais si je vous donne uniquement le nombre 437, et que je vous dit que c'est le produit de deux nombres, pouvez-vous retrouver ces deux nombres facilement?

C'est le principe du chiffrement RSA

La clé publique est le produit de deux nombres très grands*.

Le temps qu'il faudrait à un ordinateur pour tester toutes les possibilités et retrouver les deux nombres (donc la clé privée d'Alice) est...des millions d'années!

*Actuellement: 2048 bits = 2          = ?

2048

La cryptographie

Chiffrement asymétrique

Mais si je vous donne uniquement le nombre 437, et que je vous dit que c'est le produit de deux nombres, pouvez-vous retrouver ces deux nombres facilement?

Si vous avez envie de gagner 1.000.000 de dollars: 

Distribution des nombres premiers parmi les nombres entiers

Factorisation, problème du voyageur de commerce, etc...

Text

La cryptographie

Quelle heure est-il?

La cryptographie

Autres méthodes de chiffrement :

Arrivez-vous à déchiffrer ce message?

Alphabet des templiers

La cryptographie

Autres méthodes de chiffrement :

Alphabet des templiers

De quel type de chiffrement s'agit-il?

On substitue les lettres, non pas par d'autres lettres (comme dans les méthodes de susbstitution mono-alphabétiques) mais par...

Un symbole (un signe) moins connu
==>
clé privée à moitié publique
==> chiffrement pauvre!

C'est un intermédiaire entre un chiffre et un code

La cryptographie

La cryptographie

La cryptographie

Autres méthodes de chiffrement :

Arrivez-vous à décoder ce message?

Le Morse (c'est plutôt un code qu'un chiffre)

La cryptographie

Autres méthodes de chiffrement :

caractères ASCII

 

C'est aussi un code plutôt qu'un chiffre.

 

C'est une "méthode d'encodage" informatique.

encodage en informatique = transformer une information en langage binaire

La cryptographie

Autres méthodes de chiffrement :

Dans un ordinateur, chaque caractère de texte est traduit en une suite de 0 et de 1 (langage binaire)

 

Avec une suite de 8 '0' ou '1', on peut faire 2   = 256 combinaisons différentes : bien assez pour encoder la majorité des caractères de l'alphabet! (minuscules, majuscules, chiffres, caractères spéciaux)

 

On dit que l'encodage est en 8 bits.

8

La cryptographie

Autres méthodes de chiffrement :

Arrivez-vous à décoder ce message?

Caractères ASCII

84 114 111 117 118 101 122 45 118 111 117 115 32 113 117 101  32 99 171101 115 116 32 112 108 117 115 32 102 97 99 105 108 101 32 113 117 101 32 108 101 32 77 111 114 115 101 63

(tableau en plus grand page suivante)

touche ALT + code ASCII sur le pavé numérique du clavier

La cryptographie

Autres méthodes de chiffrement :

Il s'agit de faire correspondre chaque lettre de l'aphabet avec une autre, à l'aide d'un mot qui sert de clé

Exemple :

On écrit le mot qui sert de clé, et ensuite, on "distribue" les lettres restantes de l'alphabet en les écrivant par ligne ou colonne.

Avec la clé "citron" :

La cryptographie

Autres méthodes de chiffrement :

Exemple :

 

Ensuite, on réécrit l'alphabet dans l"ordre des colonnes, en-dessous de l'alphabet normal : 

 

ABCDEFGHIJKLMNOPQRSTUVWXYZ

CAHQYIBJSZTDKURELVOFMWNGPX

Donc le A se transforme en C, le B en A, le C en H, etc.
Et donc finalement, si on veut chiffrer le mot "BONJOUR" avec cette méthode (et cette clé!), on obtiendra:

AEUZEMO

La cryptographie

ABCDEFGHIJKLMNOPQRSTUVWXYZ

CAHQYIBJSZTDKURELVOFMWNGPX

C'est un méthode par substitution mono-alphabétique, tout comme la roue de Cesar!

Sauf que la permutation de lettres n'est pas circulaire, mais dépendante d'une clé privée, et selon une logique particulière!

La cryptographie

Résumé/rappel des choses qu'on a vues:

 

a) Méthodes de chiffrement avec :
- clé privée / clé publique
- symétrique / asymétrique

Dans quelles catégories sont les méthodes suivantes ? A quoi correspond la clé dans chaque cas?

- par substitution mono-alphabétique:

méthode de Cesar (permutation = circulaire)

méthode de Vigenère
méthode du carré de substitution

- le protocole RSA. Qu'est-ce qui garantit sa fiabilité?

b) Méthodes de codage : Morse, ASCII

La cryptographie

Faisons un peu de hacking!

 

La cryptographie

Faisons un peu de hacking!

 

2 Alices, 2 Bob, 1 Eve.

 

Chacun sera une fois Eve!

 

Le but pour Eve est de réussir à ouvrir le coffre en entrant le bon code.


Le but pour Alice et Bob est de vérifier qu'ils peuvent entrer le bon code.

La cryptographie

Les 2 Alices choisissent un nombre premier entre10 et 100 (P)

 

Les 2 Bob choisissent un nombre premier entre 10 et 100 (Q)

 

Vous me le communiquez secrètement.
Je vous communique à tous le produit N = P x Q

 

Le digipass déclenche l'ouverture du coffre si  :

on entre P, puis la touche ENTREE, puis on entre Q, puis la touche ENTREE

La cryptographie

Les 2 Alices choisissent un nombre premier entre10 et 100 (P)
Les 2 Bob choisissent un nombre premier entre 10 et 100 (Q)

Vous me le communiquez secrètement.
Je vous communique à tous le produit N = P x Q

Le digipass accepte:
Q pour Alice
P pour Bob
P ou Q pour Eve.

Exemple:

Les Alices choisissent XX

Les Bobs choisissent XX

Je vous communique à tous le nombre 143
 

Le digipass s'ouvre si on entre cette séquence :

 

La cryptographie

La cryptographie

Un petit calcul...

La cryptographie

Programmer l'algorithme de Cesar avec Scratch

 

 

Facilement transposable dans MITAppInventor pour créer son application Android!

La cryptographie

Programmer l'algorithme de Cesar avec Scratch

La cryptographie

Programmer l'algorithme de Cesar avec Scratch

Stage Cryptographie

By simongiz

Stage Cryptographie

du 15 au 19 février 2021

  • 590