On veut attribuer des codes personnels pour y accédez a un coffre-fort pour chaque client, ce code doit être chiffre pour éviter toute utilisation frauduleuse. La méthode qu'on va utiliser s'inspire du << chiffrement de Vigenère>>mais elle a été simplifiée au maximum. Ce travail étant spécifique. Les codes sont formés de 4 nombres, composés de chiffres differents de zero. La méthode est décrite ci-dessous à travers un exemple.
Si le code est: 2885 7624 3189 2227
Données de départ:
A= 2885
B= 7624
C= 3189
D= 2227
A ces 4 nombres on donne une clé random par exemple 3624 qui est un nombre aléatoire composé de chiffres différents les uns des autres de même taille que les nombres de depart.
L a méthode chiffrement:
On ordonne les chiffres de la clé ce qui donne 2346
En observant ces 2 derniers nombres clé ordonnée et clé de départ(3624) on remarque que:
Le 1 chiffre de la clé ordonnée se trouve dans la 3 position (2346) de la clé de depart.
Le 2 chiffre de la clé ordonnée se trouve dans la 1 position de la clé de depart.
Le 3 chiffre de la clé ordonnée se trouve dans la 4 position de la clé de depart.
Le 4 chiffre de la clé ordonnée se trouve dans la 2 position de la clé de depart.
On va appliquer la même chose aux 4 nombre de depart pour obtenir
X1= 8528
X2= 6472
X3= 1938
X4= 2722
Le code chiffré sera composé de 4 nombres suivants:
C1= 8612
C2= 5497
C3= 2732
C4= 8282
On enverra donc sur nos documents: 8612 5497 2732 8282
La méthode du déchiffrement on fera la méthode inverse.
Question: comment faire un programme pascal qui va nous permettre de chiffrer et de déchiffrer ls codes des coffres forts individuelle de la banque n'oublaint pas que pour chaque code donné ( en depart) il faut le séparer en 4 nombre et l'associé avec une clé.
Ce que g essayé:
En gros g découpé le programme en plusieurs module le premier module est spécialisé pour la clé: en premier temps on prend un nombre aléatoire après avoir verifier la taille des 4 nombres puis on vérifie c'est tout les chiffre de ce nombre sont different puis avec un module qui va ordonné la clé d'un ordre croissant mais après ça je suis tout a fait perdue...je ne sais plus ou il faut commencer ....
Merci d'avance.
salut
si on apppelle chiffre() la méthode appliquée à clé pour obtenir clé_ ord
alors
A = 2885
A_ord = 2588
chiffre (A) = 8528 = X1
et idem pour B, C et D
donc oui il faut :
a/ une fonction (ou module) créant et vérifiant la validité de la clé
b/ une fonction ordonnant chaque nombre dans l'ordre croissant
c/ une fonction chiffre() rangeant chaque nombre (A, ..., D) comme pour passer de clé à clé_ord
d/ une fonction permettant de passer de X1, ..., X4 à C1, ..., C4
carpediem enfaite j'ai essayé votre méthode je n'ai eu aucun problème apart concernant le module chiffre() je ne sais vraiment comment ça va marcher?
Merci d'avance.
le module chiffre() est tout simplement
carpediem Je m'excuse encore une fois mais comment va-t-on l'appliquer? comme un mask? puisque je ne pense pas qu'il y une fonction comme celle la sur Pascal?
ce n'est pas un mask c'est simplement une fonction ...
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :