61 lines
1.7 KiB
Markdown
61 lines
1.7 KiB
Markdown
|
# Vernam
|
||
|
|
||
|
Programme permettant d'encoder, de décoder et de créer une clé avec le système de Vernam.
|
||
|
|
||
|
## Compilation
|
||
|
|
||
|
Utilisez la commande suivante pour compiler le programme :
|
||
|
|
||
|
```bash
|
||
|
make
|
||
|
```
|
||
|
|
||
|
## Utilisation
|
||
|
|
||
|
### Création d'une clé
|
||
|
|
||
|
La clé de Vernam doit posséder la même longueur que celle du message, lors de l'execution de la commande le programme prend donc en argument le **message à encoder en fichier d'entrée** pour obtenir sa longueur. Le programme prend également en argument le nom du **fichier de sortie qui contiendra la clé générée**.
|
||
|
|
||
|
```bash
|
||
|
./vernam -k [fichier d'entrée] [fichier de sortie]
|
||
|
```
|
||
|
|
||
|
Exemple :
|
||
|
|
||
|
```bash
|
||
|
./vernam -k message.txt cle.txt
|
||
|
```
|
||
|
|
||
|
### Encodage
|
||
|
|
||
|
Pour encoder un message, utilisez la commande suivante où le **fichier d'entrée correspond au message à encoder**, le **fichier clé au fichier contenant la [clé de Vernam généré préalablement](#création-dune-clé)** et le **fichier de sortie qui contiendra le message codé** :
|
||
|
|
||
|
```bash
|
||
|
./vernam -c [fichier d'entrée] [fichier clé] [fichier de sorite]
|
||
|
```
|
||
|
|
||
|
Exemple :
|
||
|
|
||
|
```bash
|
||
|
./vernam -c message.txt cle.txt message_codé.txt
|
||
|
```
|
||
|
|
||
|
### Décodage
|
||
|
|
||
|
Pour décoder un message, utilisez la commande suivante où le **fichier d'entrée correspond au message à décoder**, le **fichier clé au fichier contenant la clé de Vernam utilisé pour l'encodage du message** et le **fichier de sortie qui contiendra le message décodé** :
|
||
|
|
||
|
```bash
|
||
|
./vernam -d [fichier d'entrée] [fichier clé] [fichier de sorite]
|
||
|
```
|
||
|
|
||
|
Exemple :
|
||
|
|
||
|
```bash
|
||
|
./vernam -d message_codé.txt cle.txt message_décodé.txt
|
||
|
```
|
||
|
|
||
|
## Limites
|
||
|
|
||
|
### Caractères utilisés
|
||
|
|
||
|
Certains caractères tels que les caractères accentuées ne peuvent pas être décodés correctement.
|