26 lines
1.0 KiB
Markdown
26 lines
1.0 KiB
Markdown
## 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$
|
|
|
|
|
|
|