FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
 Algorithme de cryptage de Blaise de Vigénère. Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
 Algorithme de cryptage de Blaise de Vigénère. Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
 Algorithme de cryptage de Blaise de Vigénère. Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
 Algorithme de cryptage de Blaise de Vigénère. Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
 Algorithme de cryptage de Blaise de Vigénère. Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
 Algorithme de cryptage de Blaise de Vigénère. Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
 Algorithme de cryptage de Blaise de Vigénère. Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
 Algorithme de cryptage de Blaise de Vigénère. Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-28%
Le deal à ne pas rater :
-28% Machine à café avec broyeur à grain MELITTA Purista
229.99 € 318.99 €
Voir le deal

 

  Algorithme de cryptage de Blaise de Vigénère.

Aller en bas 
4 participants
AuteurMessage
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 4:11

Ceci est le texte du code suivant, crypté par lui-même  jocolor Difficile de le déchiffrer, hein  ? :


Le programme utilise le répertoire en cours pour donner une liste des fichiers .bas et .txt
Vous pouvez crypter / décrypter vos fichiers.
Un fichier crypté portera l’extension .crp
Un fichier décrypté portera l’extension .dcrp

L’essentiel dans ce code réside dans la SUB Cryptage_Decryptage(Tex$, Clef$, Crypt) qui débute à la ligne 39.
Elle nécessite trois paramètres :
Tex$  : texte à crypter / décrypter
Clefs : clé de cryptage / décryptage : une chaine de caractères quelconque.  Cette clé doit être la MEME pour le cryptage et le décryptage
Crypt :  1 ===> cryptage; toute autre valeur ====> décryptage.

Avec cette SUB vous pouvez crypter / décrypter tout fichier ASCII.


Code:

rem ============================================================================
rem rem        Algorithme de cryptage de Blaise de Vigénère.
rem ============================================================================
label clic
dim t$,clef$,crypt,f$,fich$,ext$
width 0,800 : height 0,600
list 10 : width 10 , 300 : height 10,500  : top 10,50 : left 10,10 : font_bold 10 : on_click 10,clic
list 20 : width 20 , 300 : height 20,500  : top 20,50 : left 20,310 : font_bold 0 : on_click 20,clic

option 30 : top 30,100 : left 30,620 : caption 30,"Cryptage"  : on_click 30,clic : mark_on 30
 font_bold 30 : font_size 30,16 : width 30,150 : height 30,50 : font_color 30,0,0,255
option 40 : top 40,150 : left 40,620 : caption 40,"Décryptage": on_click 40,clic
 font_bold 40 : font_size 40,16 : width 40,150 : height 40,50 : font_color 40,0,0,255
button 50 : top 50,250 : left 50,620 : font_bold 50 : caption 50,"Go" : on_click 50,clic : inactive 50
button 60 : top 60,300 : left 60,620 : font_bold 60 : caption 60,"Quitter" : on_click 60,clic
List_Fichier()
clef$ = "Papydall" : ' Clé de cryptage / décryptage : une chaine de caractères quelconques
                     ' Cette clé doit être la MEME pour le cryptage et le décryptage
end
rem ============================================================================
clic:
    select number_click
       case 10 : Lecture()
       case 20 : Lecture()
       case 30 : crypt = 1
       case 40 : crypt = 0
       case 50
               if (ext$ = ".crp") and (crypt = 1) then message "Le fichier est déjà crypté !" : return
               if (ext$ = ".dcrp") and (crypt = 0) then message "Le fichier est déjà décrypté !": return
               Cryptage_Decryptage(T$, Clef$, Crypt) :  Enregistrer()
               message "C'est fait !"
       case 60 : Quitter()
    end_select
return
rem ============================================================================
' Tex$  : texte à crypter / décrypter
' Clefs : clé de cryptage / décryptage
' Crypt :  1 ===> cryptage; toute autre valeur ====> décryptage
SUB Cryptage_Decryptage(Tex$, Clef$, Crypt)
    if variable("Text_Crypte$") <> 1 then dim Text_Crypte$
    if variable("Text_DCrypte$") <> 1 then dim Text_DCrypte$
    dim_local i, j, k, n, Lclef, alphabet$, Lalphabet,c$,p,L

    Text_Crypte$ = "" : Text_DCrypte$ = ""
    Lclef = len(Clef$) : if Lclef = 0 then exit_sub
    alphabet$ = chr$(13)
    for i = 32 to 255 : alphabet$ = alphabet$ + chr$(i) : next i
    Lalphabet = len(alphabet$) : L = len(Tex$)
    for i = 1 to L
        j = 1 + mod(i-1,Lclef) : c$ = mid$(clef$,j,1)
        k = instr_pos(alphabet$,c$,1) : c$ = mid$(Tex$,i,1)
        n = instr_pos(alphabet$,c$,1)
        if Crypt = 1
           p = 1 + mod(n+k-1,Lalphabet)
           Text_Crypte$ = Text_Crypte$ + mid$(alphabet$,p,1)
        else
           p = 1 + mod(Lalphabet+n-k-1,Lalphabet)
           Text_DCrypte$ = Text_DCrypte$ + mid$(alphabet$,p,1)
        end_if
    next i
    if len(Text_Crypte$) > 0 then Text_Crypte$ = left$(Text_Crypte$,len(Text_Crypte$)-1)
    if len(Text_DCrypte$) > 0 then Text_DCrypte$ = left$(Text_DCrypte$,len(Text_DCrypte$)-1)
END_SUB
rem ============================================================================
SUB List_Fichier()
    f$ = file_find_first$
    while f$ <> "_"
          if file_extract_extension$(f$) = ".bas" or file_extract_extension$(f$) = ".txt"
              item_add 10,f$
          else
              if file_extract_extension$(f$) = ".crp" or file_extract_extension$(f$) = ".dcrp"
                 item_add 20,f$
              end_if
          end_if
          f$ = file_find_next$
    end_while
    file_find_close
END_SUB
rem ============================================================================
SUB Lecture()
    dim_local f$,a$,p
    f$ = item_read$(number_click,item_index(number_click))
    p = instr_pos(f$,".",1)
    fich$ = left$(f$,p-1)
    ext$ = file_extract_extension$(f$)
    t$ = ""
    file_open_read 1,f$
    while file_eof(1) <> 1
          file_readln 1,a$ : t$ = t$ + a$ + chr$(13)
    end_while
    file_close 1
    active 50
END_SUB
rem ============================================================================
SUB Enregistrer()
    dim_local f$
    if crypt = 1
       f$ = text_crypte$ : fich$ = fich$ + ".crp"
    else
       f$ = text_decrypte$ : fich$ = fich$ + ".dcrp"
    end_if
    if file_exists(fich$) = 1
       if message_confirmation_yes_no("Un fichier du même nom existe"+ chr$(13) + "Voulez_vous l'écraser ?") <> 1 then exit_sub
    end_if
    file_open_write 1 ,fich$
    if crypt = 1
       file_write 1,Text_Crypte$
    else
       file_write 1,Text_DCrypte$
    end_if
    file_close 1
END_SUB
rem ============================================================================
SUB Quitter()
    terminate
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 9:16

Papydall, tu sais que tu pourrais faire un article avec ce programme ?
Il touche à plein de notions parfois un peu compliquer à comprendre quand on commence en Panoramic et en plus tu pourrais y développer l'explication du programme et l'algorithme et les principes du cryptage.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 13:03

Testé et approuvé,
C'est simple et efficace.

Une remarque: juste pour chipoter, on ne demande pas la clé (surtout pour le décryptage) , mais je sais que c'est facile à faire soi-même.

Et merci à Blaise de Vigénère

Bravo Papydall.
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 15:49

Wikipédia : « Le chiffre de Vigenère est un système de chiffrement poly-alphabétique, c’est un chiffrement par substitution, mais une même lettre du message en clair peut, suivant sa position dans celui-ci, être remplacée par des lettres différentes, contrairement à un système de chiffrement mono-alphabétique comme le chiffre de César (qu‘il utilise cependant comme composant). »

L’outil du chiffrement est la « table de Vigénère » qui se contente des 26 lettes majuscules de l’alphabet, ce qui est pour moi très insuffisant pour coder un texte qui se respecte.
J’ai pris l’idée de cette table en l’élargissant sur tout le code ASCII (les caractères affichables de 32 à 255 auxquels j’ai ajouté le caractère 13 (retour à la ligne).

La grande caractéristique du code de Vigénère c’est qu’une même lettre (dans le texte en clair) est codée par des lettres différentes ce qui fait qu’il est impossible par une analyse statistique de retrouver cette lettre.
Mais cela ne veut pas dire que ce cryptage est « incassable »

Il est cependant efficace pour crypter / décrypter vos textes (mots de passe, code Panoramic, votre déclaration d’amour à votre dulcinée, etc.)

Jicehel a écrit:
Papydall, tu sais que tu pourrais faire un article avec ce programme ?

Ce n'est pas l'envie qui m'en manque !  No

Jean Claude a écrit:
Une remarque: juste pour chipoter, on ne demande pas la clé (surtout pour le décryptage) , mais je sais que c'est facile à faire soi-même.

Chipote cher ami tant que tu voudras, c’est bon signe : ça veut dire que  tu t’intéresses à ce que je fais et je t'en remercie.
On ne demande pas la clé (ni la clef) parce qu’elle est définie dans le code implicitement.

Ligne 17

Code:

clef$ = "Papydall" : ' Clé de cryptage / décryptage : une chaine de caractères quelconques
                     ' Cette clé doit être la MEME pour le cryptage et le décryptage
 

Tu voudras bien la changer en :
Code:

Clef$ =  "Jean Claude a perdu sa clé, il en invente une autre"


Et, parole de Papydall, ça fonctionnera avec cette clé toute neuve (pour le cryptage ET pour le décryptage, il faut utiliser la MEME clé)
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 17:34

Oui Papydall, j'ai bien vu qu'on pouvait changer la clé dans le code.
Je voulais dire que le programme ne le demande pas à l'utilisateur. Je pense à un ordinateur qui sert à plusieurs personnes, mais comme je l'ai dit: c'est facile de modifier le programme soi-même.
C'est vrai que je me suis mal exprimé, je n'ai pas détaillé mon message suffisamment.

A+
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 17:49

Tu étais clair Jean Claude (je dirais même limpide !), tu t’es bien exprimé et tu as détaillé ton message suffisamment.
J’ai voulu seulement t’imiter en chipotant !

Chipoter ! Chipoter encore ! Il en restera toujours !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: re    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 20:12

Bon, ben, alors, puisque ce n' est pas l' envie qui te manque, il est où cet article ?...
lol!
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. EmptySam 12 Mar 2016 - 21:49

Ben oui, il écrit bien, il programme bien et il a plein de chose à dire (enfin à écrire) alors s'il y en a bien un ui peut nous faire un article original et bien écrit c'est bien lui.... Smile
Revenir en haut Aller en bas
Contenu sponsorisé





 Algorithme de cryptage de Blaise de Vigénère. Empty
MessageSujet: Re: Algorithme de cryptage de Blaise de Vigénère.    Algorithme de cryptage de Blaise de Vigénère. Empty

Revenir en haut Aller en bas
 
Algorithme de cryptage de Blaise de Vigénère.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» cryptage
» Tracé d’arc de cercle par l'algorithme de Bresenham
» Cryptage en 100 % Panoramic
» Cryptage/décryptage
» algorithme de classement

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: