sujet
This commit is contained in:
25
python/5/TP.md
Normal file
25
python/5/TP.md
Normal file
@@ -0,0 +1,25 @@
|
||||
## Implementation du chiffrement de Vernam
|
||||
|
||||
On souhaite construire un ensemble de fonctions qui permet de faire du chiffrement à la Vernam.
|
||||
|
||||
Pour cela on a besoin des fonctions suivantes :
|
||||
|
||||
- Générer une clé dans un fichier dont la longueur sera égale à la longueur du message. On génèrera cette clé dans un fichier ```vernam.txt```. Ce qui est généré c'est une suite d'entiers (compris entre 0 et 127; 7 bits) séparés par un espace.
|
||||
|
||||
```python
|
||||
def genereVernam (long, fic):
|
||||
```
|
||||
|
||||
où ```long``` est la longueur du message et ```fic``` est le nom du fichier dans lequel la clé sera enregistrée.
|
||||
|
||||
|
||||
- Ecrire une fonction (```encode```) qui prend un fichier (le message) en argument et qui génère un fichier (le coder) qui est la suite des caractères du message représentés sous forme d'entiers (compris entre 0 et 127)
|
||||
|
||||
```python
|
||||
def encode(fic_m, fic_enc)
|
||||
```
|
||||
|
||||
- Ecrire une fonction ```chiffrage``` qui prend en arguments 2 fichiers (le message codé et la clé et qui produit le message chiffré : $f[i] + g[i] \mod 256$
|
||||
|
||||
|
||||
|
13
python/5/c2byte.py
Normal file
13
python/5/c2byte.py
Normal file
@@ -0,0 +1,13 @@
|
||||
|
||||
r = ''
|
||||
|
||||
x = ord('a')
|
||||
while ((x/2) != 0):
|
||||
if ((x % 2) == 0):
|
||||
r = r+'0'
|
||||
else:
|
||||
r = r+'1'
|
||||
x = x / 2
|
||||
|
||||
print(c2byte('a'))
|
||||
|
2
python/5/message.txt
Normal file
2
python/5/message.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
La pluie est bleue!
|
||||
Q'en pensez vous?
|
Reference in New Issue
Block a user