Crypidit le crypteur decrypteur de texte

Programmation d'applications complexes
Akra Laya
Messages : 11
Inscription : sam. 29/mai/2010 16:04

Crypidit le crypteur decrypteur de texte

Message par Akra Laya »

alors voila je vous présente crypidit.
il crypte le texte avec la methode du Ché :)

il crypte avec 2 passe la premiere un decallage ascii.
la deusième est defini par la mot de passe que vous choisissez :).

code Linux :

crypidit.pb

Code : Tout sélectionner

Enumeration
    #Fenetre_0
    #Fenetre_1
    #Menu_0
    #ElementMenu_01
    #ElementMenu_02
    #ElementMenu_03
    #ElementMenu_04
    #ElementMenu_05
    #ElementMenu_06
    #ElementMenu_07
    #ElementMenu_08
    #ElementMenu_09
    #Editeur_0
    #Fichier_0
    #Bouton_0
    #Texte_0
    #Texte_1
    #Texte_2
    #Texte_3
    #Creefichier_0
    #Lien_0
    #Clef_0
    #BarreVertical_0
EndEnumeration

Define.w FenetreEvent, EventFenetre, EventGadget, EventMenu, EventType
Global Version$ = "1.0"
Global FichierOuvert.a = 0 ,FichierEnregistrer.a = 0 , FichieraOuvrir$, Fichieraenregistrer$
Global FichierCrypte.a = 1, FichierDecrypte.a = 0
Global clef$ = ""

IncludeFile "Lib.pb"

If OpenWindow(#Fenetre_0, 0, 0, 1000, 700, "Crypidit", #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget)
    ;-Création du Menu
    CreeMenu()
       
    
    EditorGadget(#Editeur_0,2,2,996,676)    
    Repeat  
          
        If FichierEnregistrer = 1 Or FichierOuvert = 1
            DisableMenuItem(#Menu_0,#ElementMenu_03,0)
        ElseIf FichierEnregistrer = 0 And FichierOuvert = 0
            DisableMenuItem(#Menu_0,#ElementMenu_03,1)
        EndIf
        If FichierCrypte = 1
            DisableMenuItem(#Menu_0,#ElementMenu_06,0)
        Else
            DisableMenuItem(#Menu_0,#ElementMenu_06,1)
        EndIf
        If FichierDecrypte = 1
            DisableMenuItem(#Menu_0,#ElementMenu_07,0)    
        Else
            DisableMenuItem(#Menu_0,#ElementMenu_07,1)
        EndIf
        
        FenetreEvent = WaitWindowEvent()
        Select FenetreEvent
            Case #PB_Event_Menu
                ;- Menu
                EventMenu = EventMenu()
                Select EventMenu
                    Case #ElementMenu_01
                        ;-Réinitialise l'editeur
                        Nouveau()
                        
                    Case #ElementMenu_02
                        ;- Ouvrir un fichier
                        Ouvrir()                        
                        
                    Case #ElementMenu_03
                        ;-Enregister
                        Enregistrer(FichierOuvert, FichierEnregistrer)
                        
                    Case #ElementMenu_04
                        ;-Enregistrer sous
                        EnregistrerSous()
                        
                    Case #ElementMenu_05
                        ;-Ferme le prog
                        CloseWindow(#Fenetre_0)
                        End
                    
                    Case #ElementMenu_06
                        ;-Cryptage du texte
                        Cryptage()
                    
                    Case #ElementMenu_07
                        ;-Decryptage du texte
                        Decryptage()
                    
                    Case #ElementMenu_08
                        ;-Options Cryptage
                        OptionsCryptage()
                    
                    Case #ElementMenu_09
                        ;-Aide
                        AProposDe()
                        
                EndSelect
                
            Case #PB_Event_CloseWindow
                EventFenetre = EventWindow()
                Select EventFenetre
                    Case #Fenetre_0
                        CloseWindow(#Fenetre_0)
                        End
                EndSelect
        EndSelect
    ForEver         
EndIf   
et Lib.pb

Code : Tout sélectionner

Procedure CreeMenu()
  If CreateMenu(#Menu_0,WindowID(#Fenetre_0))
        MenuTitle("Fichier")
            MenuItem(#ElementMenu_01,"Nouveau")
            MenuItem(#ElementMenu_02,"Ouvrir")
            MenuBar()
            MenuItem(#ElementMenu_03,"Enregistrer")
            MenuItem(#ElementMenu_04,"Enregistrer sous")
            MenuBar()
            MenuItem(#ElementMenu_05,"Quitter")
            
        MenuTitle("Cryptage")
            MenuItem(#ElementMenu_06,"Crypter Texte")
            MenuItem(#ElementMenu_07,"Décrypter Texte")
            MenuItem(#ElementMenu_08,"Option")

        MenuTitle("Aide")
            MenuItem(#ElementMenu_09,"A propos de ...")
    EndIf
    
EndProcedure

Procedure Nouveau()
    
    ClearGadgetItems(#Editeur_0)
    FichierEnregistrer = 0
    FichierOuvert = 0
    FichierCrypte = 1
    FichierDecrypte = 0

EndProcedure

Procedure Ouvrir()
    
    FichieraOuvrir$ = OpenFileRequester("Ouvrir",GetCurrentDirectory(),"Crypidit (*.Cryii)|*.Cryii;*.Cryii |Epidit (*.eii)|*.eii;*.eii |PureBasic (*.pb)|*.pb;*.doc |Texte (*.txt)|*.txt;*.doc |Tous Fichier (*.*)|*.*",0)
    If FichieraOuvrir$
        If ReadFile(#Fichier_0,FichieraOuvrir$)
            ClearGadgetItems(#Editeur_0)
            ligne = 0
            Texte = 0
            FichierOuvert = 1
            Extension$ = GetExtensionPart(FichieraOuvrir$)
            If Extension$ = "Cryii"
                FichierCrypte = 0
                FichierDecrypte = 1
            EndIf
            While Eof(#Fichier_0) = 0
                text$ = ReadString(#Fichier_0,#PB_UTF8)
                AddGadgetItem(#Editeur_0,ligne,text$)
                ligne = ligne + 1
            Wend
            CloseFile(#Fichier_0)
        EndIf
    EndIf

EndProcedure

Procedure Enregistrer(FichierOuvert.a, FichierEnregistrer.a)
    If FichierOuvert = 1      
        ligne = 0
        If OpenFile(#Fichier_0,FichieraOuvrir$)
            While ligne < CountGadgetItems(#Editeur_0) 
                WriteStringN(#Fichier_0,GetGadgetItemText(#Editeur_0,ligne), #PB_UTF8)
                ligne = ligne + 1
            Wend
            CloseFile(#Fichier_0)
        EndIf 
    ElseIf FichierEnregistrer = 1
        ligne = 0
        If OpenFile(#Fichier_0,FichieraEnregistrer$)
            While ligne < CountGadgetItems(#Editeur_0) 
                WriteStringN(#Fichier_0,GetGadgetItemText(#Editeur_0,ligne), #PB_UTF8)
                ligne = ligne + 1
            Wend
            CloseFile(#Fichier_0)
        EndIf
    EndIf

EndProcedure

Procedure EnregistrerSous()

    If FichierCrypte = 1
        FichieraEnregistrer$ = SaveFileRequester("Enregistrer sous",GetCurrentDirectory(),"Epidit (*.eii)|*.eii;*.eii |Texte (*.txt)|*.txt;*.doc",0)
        If FichieraEnregistrer$
            ligne = 0
            Index = SelectedFilePattern()
            FichierEnregistrer = 1
            If Index = 0
                If CreateFile(#Creefichier_0,FichieraEnregistrer$+".eii")
                    While ligne < CountGadgetItems(#Editeur_0) 
                        WriteStringN(#Creefichier_0,GetGadgetItemText(#Editeur_0,ligne), #PB_UTF8)
                        ligne = ligne + 1
                    Wend
                    CloseFile(#Creefichier_0)
                EndIf
            ElseIf index = 1
                If CreateFile(#Creefichier_0,FichieraEnregistrer$+".txt")
                    While ligne < CountGadgetItems(#Editeur_0) 
                        WriteStringN(#Creefichier_0,GetGadgetItemText(#Editeur_0,ligne), #PB_UTF8)
                        ligne = ligne + 1
                    Wend
                    CloseFile(#Creefichier_0)
                EndIf
            EndIf
        EndIf
    ElseIf FichierCrypte = 0
        FichieraEnregistrer$ = SaveFileRequester("Enregistrer sous",GetCurrentDirectory(),"Crypidit (*.Cryii)|*.Cryii;*.Cryii",0)
        If FichieraEnregistrer$
            ligne = 0
            Index = SelectedFilePattern()
            FichierEnregistrer = 1
            If Index = 0
                If CreateFile(#Creefichier_0,FichieraEnregistrer$+".Cryii")
                    While ligne < CountGadgetItems(#Editeur_0) 
                        WriteStringN(#Creefichier_0,GetGadgetItemText(#Editeur_0,ligne), #PB_UTF8)
                        ligne = ligne + 1
                    Wend
                    CloseFile(#Creefichier_0)
                EndIf
            EndIf
        EndIf
    EndIf

EndProcedure

Declare OptionsCryptage()

Procedure Cryptage(text$ = "")

    If text$ = ""
        ligne = 0
        crypte = 0
        While crypte = 0       
            If CountGadgetItems(#Editeur_0) <> 0
                If Clef$ <> ""
                    While ligne < CountGadgetItems(#Editeur_0)
                        
                        crypte = 1
                        textcrypte$ = ""
                        text$ = GetGadgetItemText(#Editeur_0,ligne)
                        
                        If text$ <> ""
                        
                            FichierCrypte = 1
                            FichierDecrypte = 1
                                           
                            d = 1
                            While d <= Len(text$)
                                text$ = InsertString(text$, "$", d)
                                d = d + 2
                            Wend
                                            
                            dollar$ = "$"
                            ascii$ = "300"
                            ascii = Val(ascii$)
                            For Aski = 32 To 255
                                lettre$ = Chr(Aski)
                                text$ = ReplaceString(text$,dollar$+lettre$,ascii$)
                                ascii = Val(ascii$)
                                ascii = ascii + 1
                                ascii$ = Str(ascii)
                            Next
                                            
                            text$ = RemoveString(text$, "$")
                                            
                            a = 1
                            longclef = Len(Clef$)
                            While a <= Len(text$)
                                text$ = InsertString(text$, " ", a)
                                a = a + (longclef+1)
                            Wend
                            text$ = LTrim(text$)
                                           
                            For b = 1 To CountString(text$," ")+1
                                bloc$ = StringField(text$, b, " ")
                                longbloc = Len(bloc$)
                                c = 1
                                While c < longbloc+1
                                    Mbloc$ = Mid(bloc$,c,1)
                                    Mclef$ = Mid(clef$,c,1)
                                         
                                    Mtextcrypte = Val(Mbloc$) + Val(Mclef$)
                                    Mtextcrypte$ = Right(Str(Mtextcrypte),1)
                                    textcrypte$ = textcrypte$ + Mtextcrypte$
                                    c = c + 1
                                Wend
                            Next
                            d = 1
                            While d <= Len(textcrypte$)
                                textcrypte$ = InsertString(textcrypte$, " ", d)
                                d = d + 6
                            Wend
                            textcrypte$ = LTrim(textcrypte$)
                            SetGadgetItemText(#Editeur_0, ligne, textcrypte$)
                            text$ = ""
                        EndIf
                        ligne = ligne + 1
                    Wend
                Else
                    OptionsCryptage()
                EndIf
            Else
                crypte = 1
                clef$ = ""
            EndIf
        Wend
    EndIf
    
EndProcedure

Procedure Decryptage(textcrypte$ = "")

    ligne = 0
    FichierDecrypte = 1
    FichierCrypte = 1
    While ligne < CountGadgetItems(#Editeur_0) 
        a = 1
        text$ = ""
        If textcrypte$ = ""
            textcrypte$ = GetGadgetItemText(#Editeur_0,ligne)
        EndIf
        If Clef$ = ""
            OptionsCryptage()
        EndIf
        
        If FindString(textcrypte$,Chr(32-255),1) = 0
            textcrypte$ = RemoveString(textcrypte$," ")

            longclef = Len(clef$)
            While a <= Len(textcrypte$)
                textcrypte$ = InsertString(textcrypte$, " ", a)
                a = a + (longclef+1)
            Wend
            textcrypte$ = LTrim(textcrypte$)
            
            For b = 1 To CountString(textcrypte$," ")+1
                bloc$ = StringField(textcrypte$, b, " ")
                longbloc = Len(bloc$)
                c = 1
                While c < longbloc+1
                    Mbloc$ = Mid(bloc$,c,1)
                    Mclef$ = Mid(clef$,c,1)
                    Mtextcrypte = Val(Mbloc$) - Val(Mclef$)
    
                    If Mtextcrypte = -1
                        Mtextcrypte = 9
                    ElseIf Mtextcrypte = -2
                        Mtextcrypte = 8
                    ElseIf Mtextcrypte = -3
                        Mtextcrypte = 7
                    ElseIf Mtextcrypte = -4
                        Mtextcrypte = 6
                    ElseIf Mtextcrypte = -5
                        Mtextcrypte = 5
                    ElseIf Mtextcrypte = -6
                        Mtextcrypte = 4
                    ElseIf Mtextcrypte = -7
                        Mtextcrypte = 3
                    ElseIf Mtextcrypte = -8
                        Mtextcrypte = 2
                    ElseIf Mtextcrypte = -9
                        Mtextcrypte = 1
                    EndIf
                    
                    Mtext$ = Right(Str(Mtextcrypte),1)
                    text$ = text$ + Mtext$
                    c = c + 1
                Wend
            Next
            d = 1
            While d <= Len(text$)
                text$ = InsertString(text$, "$", d)
                d = d + 4
            Wend
            text$ = LTrim(text$)
            
            dollar$ = "$"
            ascii$ = "100"
            ascii = Val(ascii$)
            
            dollar$ = "$"
            ascii$ = "300"
            ascii = Val(ascii$)
            For Aski = 32 To 255
                lettre$ = Chr(Aski)
                text$ = ReplaceString(text$,dollar$+ascii$,lettre$)
                ascii = Val(ascii$)
                ascii = ascii + 1
                ascii$ = Str(ascii)
            Next
                    
            SetGadgetItemText(#Editeur_0, ligne, text$)
            textcrypte$ = ""
            ligne = ligne + 1
        EndIf
    Wend
    
    
EndProcedure

Procedure OptionsCryptage()

    If OpenWindow(#Fenetre_1,0,0,300,100,"Option Cryptage", #PB_Window_WindowCentered | #PB_Window_SystemMenu,WindowID(#Fenetre_0))
        TextGadget(#Texte_0,0,5,300,15,"Veuillez saissire votre Mot de passe :",#PB_Text_Center)
        StringGadget(#Texte_1,50,30,200,20,MDP$,#PB_String_Password)
        ButtonGadget(#Bouton_0,130,65,30,20,"Ok")
        ;SetActiveGadget(#Texte_1)
        Repeat
            FenetreEvent = WaitWindowEvent()                            
            Select FenetreEvent
                Case #PB_Event_Gadget
                    EventGadget = EventGadget()
                    Select EventGadget
                        Case #Bouton_0
                            MDP$ = GetGadgetText(#Texte_1)
                            d = 1
                            While d <= Len(MDP$)
                                MDP$ = InsertString(MDP$, "$", d)
                                d = d + 2
                            Wend

                            dollar$ = "$"
                            ascii$ = "300"
                            ascii = Val(ascii$)
                            For Aski = 32 To 255
                                lettre$ = Chr(Aski)
                                MDP$ = ReplaceString(MDP$,dollar$+lettre$,ascii$)
                                Clef$ = MDP$
                                ascii = Val(ascii$)
                                ascii = ascii + 1
                                ascii$ = Str(ascii)
                            Next
                            
                            CloseWindow(#Fenetre_1)
                            Break 
                    EndSelect
                    
                Case #PB_Event_CloseWindow
                    EventFenetre = EventWindow()
                    Select EventFenetre
                        Case #Fenetre_1
                            CloseWindow(#Fenetre_1)
                            Break
                    EndSelect
            EndSelect
        ForEver
    EndIf

EndProcedure

Procedure AProposDe()

    If OpenWindow(#Fenetre_1,0,0,300,160,"A propos de ...", #PB_Window_WindowCentered | #PB_Window_SystemMenu,WindowID(#Fenetre_0))
        TextGadget(#Texte_0,0,5,300,15,"Fait par Akra-Laya.",#PB_Text_Center)
        TextGadget(#Texte_1,0,25,300,115,"Pour tous problèmes ou toute"+#LF$+"suggestions veuillez me contacter par"+#LF$+"e-mail : akra-laya@orange.fr"+#LF$+"ou sur le forum de la Teamanimal :"+#LF$+"http://teamanimal.free-h.net/",#PB_Text_Center)
        TextGadget(#Texte_2,0,140,300,15,"Version "+Version$,#PB_Text_Center)
        Repeat
            FenetreEvent = WaitWindowEvent()                            
            Select FenetreEvent
                Case #PB_Event_CloseWindow
                    EventFenetre = EventWindow()
                    Select EventFenetre
                        Case #Fenetre_1
                            CloseWindow(#Fenetre_1)
                            Break
                    EndSelect
            EndSelect
        ForEver
    EndIf

EndProcedure
voila le code :)
Dernière modification par Akra Laya le mar. 28/sept./2010 19:27, modifié 4 fois.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Crypidit le crypteur decrypteur de texte

Message par Ar-S »

Un petit descriptif ? un copie d'écran ?
Ce serait sympa et surtout ça donnerai plus envie de récupérer la chose.
(moi j'ai pas remis linux mais c'est général ce que je dis)
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Crypidit le crypteur decrypteur de texte

Message par Backup »

mefiance ...

dans ce post le lien est mort , et l'image aussi...

attendons , et voyons ...
Avatar de l’utilisateur
SPH
Messages : 4946
Inscription : mer. 09/nov./2005 9:53

Re: Crypidit le crypteur decrypteur de texte

Message par SPH »

Donne nous plutot tes codes que je matte ca

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Akra Laya
Messages : 11
Inscription : sam. 29/mai/2010 16:04

Re: Crypidit le crypteur decrypteur de texte

Message par Akra Laya »

arf je fais y heberger ailleur
Répondre