Probleme mit Textverschlüsselung und "crypt.au3"

  • Hallo, ich will meine alte Textverschlüsselung mit "Crypt.au3" updaten. Den größten Teil hab' ich schon fertig.
    Ich habe aber ein Problem mit dem entschlüsseln. Der Quelltext ist:

    Spoiler anzeigen
    [autoit]


    #cs************************************************************************
    ***************************************************************************
    **** ****
    **** Name: Kizzys Encryption/Decryption Tool ****
    **** Funktion: Textver-/ entschl�sselung auf Basis von RC4 ****
    **** Autor: Bierm�nnsche PC-Manufakturen/Keziah Biermann ****
    **** Mit freundlicher Unterst�tzung von: Cartan 12 & name 22 ****
    **** ****
    ***************************************************************************
    #ce************************************************************************

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <GUIConstantsEx.au3>
    #include <string.au3>
    #include <file.au3>
    #include <INet.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    ;#include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <Crypt.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt( "TrayIconHide", 1)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    _Main()
    Func _Main()
    Local $VerschID, $EntschID, $msg, $option = 0

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $WinMain = GUICreate ( "Kizzys Encryption/Decryption Tool", 490, 380, (-1),(-1), (-1))
    ;GUICtrlCreatePic ("Hintergrund.jpeg", 0, 0, 490, 380)
    GUISetBkColor(0xBB0000)
    $EditText = GuiCtrlCreateEdit('Bitte geben Sie Ihren zu verschl�sselnden Text ein.',5,5,380,310)
    $InputPass = GuiCtrlCreateInput('',5,320,100,20, 0x21)
    ;$InputLevel = GuiCtrlCreateInput("5", 110, 320, 52,20, BitOR ($ES_NUMBER, $ES_CENTER))
    $StartButton = GUICtrlCreateButton ( "Start", 267, 320, 120, 35)
    GUICtrlCreateLabel ( "Algorythmus", 122, 342)
    GUICtrlCreateLabel ( "Passwort", 32, 342)
    ;GUICtrlCreateLabel ("PasswHash", 200, 342)
    $filemenu = GuiCtrlCreateMenu ("Datei")
    $helpmenu = GuiCtrlCreateMenu ("Hilfe")
    $hilfe = GuiCtrlCreateMenuitem ("Hilfe",$helpmenu)
    GUICtrlCreateMenuItem("",$helpmenu)
    $aboutitem = GuiCtrlCreateMenuitem ("�ber",$helpmenu)
    $open=GUICtrlCreateMenuItem ( "�ffnen...", $filemenu,0)
    $save=GUICtrlCreateMenuItem ("Sichern...", $filemenu,1)
    GUICtrlCreateMenuItem ("",$filemenu,2)
    $exititem = GUICtrlCreateMenuItem ("Programm beenden",$filemenu,3)
    $ClearAll = GUICtrlCreateButton ( "Felder leeren", 395, 210, 90, 35, (-1), 0x2000)
    $Feedback=GUICtrlCreateButton ( "Feedback", 395, 320, 90, 35)
    $CryptAlgo=GUICtrlCreateCombo ("AES 128 Bit", 110, 320, 80, 16)
    GUICtrlSetData ($CryptAlgo, "AES 192 Bit|AES 256 Bit|DES|Triple-DES|RC2|RC4")
    ;$HashAlgo=GUICtrlCreateCombo ("MD2", 200, 320, 56, 16)
    ;GUICtrlSetData ($HashAlgo, "MD4|MD5|SHA1")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Open1=GUICtrlCreateButton ( "Datei �ffnen...", 395, 255, 90)
    $Save1=GUICtrlCreateButton ( "Datei sichern...", 395, 285, 90)

    [/autoit] [autoit][/autoit] [autoit]

    GuiCtrlCreateGroup("Modus", 395, 5, 90, 65)
    $VerschID = GuiCtrlCreateRadio("verschl�sseln", 400, 20, 80);ID 18
    GuiCtrlSetState($VerschID, $GUI_CHECKED)
    $EntschID = GuiCtrlCreateRadio("entschl�sseln", 400, 45, 80);ID 19
    GUICtrlCreateGroup ("",-99,-99,1,1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GuiSetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1

    [/autoit] [autoit][/autoit] [autoit]

    $msg = GUIGetMsg()

    [/autoit] [autoit][/autoit] [autoit]

    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    Case $msg = $ClearAll
    GUICtrlSetData ( $EditText, "")
    GuiCtrlSetData ( $InputPass, "")
    GUICtrlSetData ( $InputLevel, "")


    Case $msg =$Feedback
    _INetMail ( "biermaennsche.pc.manufakturen@googlemail.com", "KDE-Tool Feedback", "")
    If @error = 1 Then
    MsgBox (12, "Feedback Fehler", "Die Feedbackfunktion konnte nicht gestartet werden. Wenn Sie immer noch ein Feedback abgeben wollen, senden Sie bitte eine E-Mail, mit Betreff ""KDE-Tool Feedback"" an: ""biermaennsche.pc.manufakturen@googlemail.com""")
    EndIf

    Case $msg = $aboutitem
    Msgbox(64,"�ber","Kizzys Encryption/Decryption Tool - RC4 Text - En-/Decrypter Version: 2.0" &@CRLF&@CRLF&@CRLF& "Copyright: �2010-2020, Bierm�nnsche PC-Manufakturen/Keziah Biermann" &@CRLF&@CRLF& "E-Mail: biermaennsche.pc.manufakturen@googlemail.com")
    Case $msg = $Hilfe
    MsgBox (64, "Hilfe", "Passwort: Das Passwort mit dem der Text Verschl�sselt wurde." & @CRLF & @CRLF & "Level: Das Level mit dem der Text verschl�sselt wurde. Das bei der Verschl�sselung verwandte Level muss auch zur Entschl�sselung verwendet werden. Wenn Sie mehr als 30.000 Zeichen entschl�sseln wollen, nutzen Sie bitte die ""Datei �ffnen...""-Funktion im Datei-Men�.")
    Case $msg = $open Or $msg = $Open1
    If $option = 0 Then
    $OpenExplorer = FileOpenDialog ("Datei �ffnen...", @MyDocumentsDir, "Einfaches Textdokument (*.txt)",1)
    $EncryptString = FileRead ( $OpenExplorer )
    GUICtrlSetData ( $EditText, ""&$EncryptString )
    EndIf
    If $option = 1 Then
    $OpenExplorer = FileOpenDialog ("Datei �ffnen...", @MyDocumentsDir, "RC4-verschl�sselter Text (*.txt), (*.cpt)",1)
    $EncryptString = FileRead ( $OpenExplorer )
    GUICtrlSetData ( $EditText, ""&$EncryptString )
    EndIf

    Case $msg = $exititem
    ExitLoop

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $StartButton
    ;~~
    GuiCtrlSetState( $EditText,$GUI_DISABLE)
    GUICtrlSetState($InputPass,$GUI_DISABLE )
    GUICtrlSetState( $CryptAlgo,$GUI_DISABLE)
    ;GUICtrlSetState($HashAlgo, $GUI_DISABLE )
    GUICtrlSetState( $StartButton,$GUI_DISABLE)
    GUICtrlSetState($filemenu,$GUI_DISABLE )
    GUICtrlSetState( $Open1,$GUI_DISABLE)
    GUICtrlSetState($Save1, $GUI_DISABLE)
    GUICtrlSetState( $VerschID, $GUI_DISABLE)
    GUICtrlSetState($EntschID, $GUI_DISABLE )
    GUICtrlSetState( $ClearAll, $GUI_DISABLE)
    ; Stops you from changing anything
    ;~~
    $string = GuiCtrlRead($EditText)
    ; Saves the editbox for later
    ;~~
    GUICtrlSetData($EditText,'Bitte warten Sie, w�hrend Ihr verschl�sselter Text mit Ihrem Passwort '&@CRLF&'und RC4 verschl�sselt wird.')
    ; Friendly message
    If GUICtrlRead($CryptAlgo) = "AES 128 Bit" Then
    $iALG_ID = 0x0000660e
    EndIf
    If GUICtrlRead($CryptAlgo) = "AES 192 Bit" Then
    $iALG_ID = 0x0000660f
    EndIf
    If GUICtrlRead($CryptAlgo) = "AES 256 Bit" Then
    $iALG_ID = 0x00006610
    EndIf
    If GUICtrlRead($CryptAlgo) = "DES" Then
    $iALG_ID = 0x00006601
    EndIf
    If GUICtrlRead($CryptAlgo) = "Triple-DES" Then
    $iALG_ID = 0x00006603
    EndIf
    If GUICtrlRead($CryptAlgo) = "RC2" Then
    $iALG_ID = 0x00006602
    EndIf
    If GUICtrlRead($CryptAlgo) = "RC4" Then
    $iALG_ID = 0x00006801
    EndIf
    #cs
    If GUICtrlRead($HashAlgo) = "MD2" Then
    $iHashALG_ID = 0x00008001
    EndIf
    If GUICtrlRead($HashAlgo) = "MD4" Then
    $iHashALG_ID = 0x00008002
    EndIf
    If GUICtrlRead($HashAlgo) = "MD5" Then
    $iHashALG_ID = 0x00008003
    EndIf
    If GUICtrlRead($HashAlgo) = "SHA1" Then
    $iHashALG_ID = 0x00008004
    EndIf
    #ce
    If $option = 0 Then
    $vCryptKey=_Crypt_DeriveKey (GUICtrlRead($InputPass), GUICtrlRead($CryptAlgo), 0x00008003)
    GuiCtrlSetData($EditText,_Crypt_EncryptData(GUICtrlRead($EditText), $vCryptKey, $iALG_ID))
    _Crypt_DestroyKey($vCryptKey)
    Else
    $vCryptKey=_Crypt_DeriveKey (GUICtrlRead($InputPass), GUICtrlRead($CryptAlgo), 0x00008003)
    GuiCtrlSetData($EditText,_Crypt_DecryptData(GUICtrlRead($EditText), $vCryptKey, $iALG_ID))
    _Crypt_DestroyKey($vCryptKey)
    EndIf
    ; Calls the encryption. Sets the data of editbox with the encrypted string
    ;~~
    GuiCtrlSetState( $EditText,$GUI_ENABLE)
    GUICtrlSetState($InputPass,$GUI_ENABLE )
    ;GUICtrlSetState($HashAlgo,$GUI_ENABLE )
    GUICtrlSetState($CryptAlgo,$GUI_ENABLE)
    GUICtrlSetState($StartButton,$GUI_ENABLE )
    GUICtrlSetState($filemenu,$GUI_ENABLE )
    GUICtrlSetState( $Open1,$GUI_ENABLE)
    GUICtrlSetState($Save1, $GUI_ENABLE)
    GUICtrlSetState($VerschID, $GUI_ENABLE)
    GUICtrlSetState($EntschID, $GUI_ENABLE)
    GUICtrlSetState($ClearAll, $GUI_ENABLE)
    ; This turns the window back on
    Case $msg = $save Or $msg = $Save1
    If $option = 0 Then
    $SaveExplorer = FileSaveDialog ("Datei sichern unter...", @MyDocumentsDir, "RC4-verschl�sselter Text (.cpt)", 16)
    If @error<>1 Then
    FileDelete ( $SaveExplorer )
    _FileCreate ( $SaveExplorer&".cpt" )
    $SaveString = GUICtrlRead ( $EditText )
    $FileToSave=FileOpen ($SaveExplorer&".cpt",2)
    FileWrite ( $FileToSave, ""&$SaveString )
    FileClose ($FileToSave)
    EndIf
    EndIf
    If $option = 1 Then
    $SaveExplorer = FileSaveDialog ("Datei sichern unter...", @MyDocumentsDir, "Einfaches Textdokument (.txt)", 16)
    If @error <> 1 Then
    FileDelete ( $SaveExplorer )
    _FileCreate ( $SaveExplorer&".txt" )
    $SaveString = GUICtrlRead ( $EditText )
    $FileToSave=FileOpen ($SaveExplorer&".txt",2)
    FileWrite ( $FileToSave, ""&$SaveString )
    FileClose ($FileToSave)
    EndIf

    EndIf
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $VerschID
    $option = 0

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $EntschID
    $option = 1

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    EndSelect
    WEnd
    EndFunc ;==>_Main

    [/autoit] [autoit][/autoit] [autoit]

    #cs
    Mit frndl. Unterst�tzung von:
    Cartan12,
    name22
    #ce
    #include-once

    [/autoit] [autoit][/autoit] [autoit][/autoit]


    Vielen Dank schon mal im Voraus. :thumbup:
    P. S. : Die "?" einfach ignorieren, die stehen für die Umlaute.

    Widerstand ist Zwecklos!

    Meine Projekte: Kizzys Controller, 2nd Desktop und Versteckte Dateien Assistent
    Meine Downloadwebsite .

  • Bei deinem Code Zeile 140. Da setzt du das Edit wieder auf den anderen Text, somit konnte beim Decrypten nie der verschlüsselte Text genommen werden.
    Code ist außerdem auch sehr schlecht lesbar :(. Naja


    Spoiler anzeigen
    [autoit]

    #cs************************************************************************
    ***************************************************************************
    **** ****
    **** Name: Kizzys Encryption/Decryption Tool ****
    **** Funktion: Textver-/ entschl?sselung auf Basis von RC4 ****
    **** Autor: Bierm?nnsche PC-Manufakturen/Keziah Biermann ****
    **** Mit freundlicher Unterst?tzung von: Cartan 12 & name 22 ****
    **** ****
    ***************************************************************************
    #ce************************************************************************

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <GUIConstantsEx.au3>
    #include <string.au3>
    #include <file.au3>
    #include <INet.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    ;#include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <Crypt.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("TrayIconHide", 1)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    _Main()
    Func _Main()
    Local $VerschID, $EntschID, $msg, $option = 0

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $WinMain = GUICreate("Kizzys Encryption/Decryption Tool", 490, 380, (-1), (-1), (-1))
    ;GUICtrlCreatePic ("Hintergrund.jpeg", 0, 0, 490, 380)
    GUISetBkColor(0xBB0000)
    $EditText = GUICtrlCreateEdit('Bitte geben Sie Ihren zu verschl?sselnden Text ein.', 5, 5, 380, 310)
    $InputPass = GUICtrlCreateInput('', 5, 320, 100, 20, 0x21)
    $InputLevel = GUICtrlCreateInput("5", 110, 320, 52, 20, BitOR($ES_NUMBER, $ES_CENTER))
    $StartButton = GUICtrlCreateButton("Start", 267, 320, 120, 35)
    GUICtrlCreateLabel("Algorythmus", 122, 342)
    GUICtrlCreateLabel("Passwort", 32, 342)
    ;GUICtrlCreateLabel ("PasswHash", 200, 342)
    $filemenu = GUICtrlCreateMenu("Datei")
    $helpmenu = GUICtrlCreateMenu("Hilfe")
    $hilfe = GUICtrlCreateMenuItem("Hilfe", $helpmenu)
    GUICtrlCreateMenuItem("", $helpmenu)
    $aboutitem = GUICtrlCreateMenuItem("?ber", $helpmenu)
    $open = GUICtrlCreateMenuItem("?ffnen...", $filemenu, 0)
    $save = GUICtrlCreateMenuItem("Sichern...", $filemenu, 1)
    GUICtrlCreateMenuItem("", $filemenu, 2)
    $exititem = GUICtrlCreateMenuItem("Programm beenden", $filemenu, 3)
    $ClearAll = GUICtrlCreateButton("Felder leeren", 395, 210, 90, 35, (-1), 0x2000)
    $Feedback = GUICtrlCreateButton("Feedback", 395, 320, 90, 35)
    $CryptAlgo = GUICtrlCreateCombo("AES 128 Bit", 110, 320, 80, 16)
    GUICtrlSetData($CryptAlgo, "AES 192 Bit|AES 256 Bit|DES|Triple-DES|RC2|RC4")
    ;$HashAlgo=GUICtrlCreateCombo ("MD2", 200, 320, 56, 16)
    ;GUICtrlSetData ($HashAlgo, "MD4|MD5|SHA1")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Open1 = GUICtrlCreateButton("Datei ?ffnen...", 395, 255, 90)
    $Save1 = GUICtrlCreateButton("Datei sichern...", 395, 285, 90)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Modus", 395, 5, 90, 65)
    $VerschID = GUICtrlCreateRadio("verschl?sseln", 400, 20, 80);ID 18
    GUICtrlSetState($VerschID, $GUI_CHECKED)
    $EntschID = GUICtrlCreateRadio("entschl?sseln", 400, 45, 80);ID 19
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1

    [/autoit] [autoit][/autoit] [autoit]

    $msg = GUIGetMsg()

    [/autoit] [autoit][/autoit] [autoit]

    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    Case $msg = $ClearAll
    GUICtrlSetData($EditText, "")
    GUICtrlSetData($InputPass, "")
    GUICtrlSetData($InputLevel, "")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Case $msg = $Feedback
    _INetMail("biermaennsche.pc.manufakturen@googlemail.com", "KDE-Tool Feedback", "")
    If @error = 1 Then
    MsgBox(12, "Feedback Fehler", "Die Feedbackfunktion konnte nicht gestartet werden. Wenn Sie immer noch ein Feedback abgeben wollen, senden Sie bitte eine E-Mail, mit Betreff ""KDE-Tool Feedback"" an: ""biermaennsche.pc.manufakturen@googlemail.com""")
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $aboutitem
    MsgBox(64, "?ber", "Kizzys Encryption/Decryption Tool - RC4 Text - En-/Decrypter Version: 2.0" & @CRLF & @CRLF & @CRLF & "Copyright: ?2010-2020, Bierm?nnsche PC-Manufakturen/Keziah Biermann" & @CRLF & @CRLF & "E-Mail: biermaennsche.pc.manufakturen@googlemail.com")
    Case $msg = $hilfe
    MsgBox(64, "Hilfe", "Passwort: Das Passwort mit dem der Text Verschl?sselt wurde." & @CRLF & @CRLF & "Level: Das Level mit dem der Text verschl?sselt wurde. Das bei der Verschl?sselung verwandte Level muss auch zur Entschl?sselung verwendet werden. Wenn Sie mehr als 30.000 Zeichen entschl?sseln wollen, nutzen Sie bitte die ""Datei ?ffnen...""-Funktion im Datei-Men?.")
    Case $msg = $open Or $msg = $Open1
    If $option = 0 Then
    $OpenExplorer = FileOpenDialog("Datei ?ffnen...", @MyDocumentsDir, "Einfaches Textdokument (*.txt)", 1)
    $EncryptString = FileRead($OpenExplorer)
    GUICtrlSetData($EditText, "" & $EncryptString)
    EndIf
    If $option = 1 Then
    $OpenExplorer = FileOpenDialog("Datei ?ffnen...", @MyDocumentsDir, "RC4-verschl?sselter Text (*.txt), (*.cpt)", 1)
    $EncryptString = FileRead($OpenExplorer)
    GUICtrlSetData($EditText, "" & $EncryptString)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $exititem
    ExitLoop

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $StartButton
    ;~~
    GUICtrlSetState($EditText, $GUI_DISABLE)
    GUICtrlSetState($InputPass, $GUI_DISABLE)
    GUICtrlSetState($CryptAlgo, $GUI_DISABLE)
    ;GUICtrlSetState($HashAlgo, $GUI_DISABLE )
    GUICtrlSetState($StartButton, $GUI_DISABLE)
    GUICtrlSetState($filemenu, $GUI_DISABLE)
    GUICtrlSetState($Open1, $GUI_DISABLE)
    GUICtrlSetState($Save1, $GUI_DISABLE)
    GUICtrlSetState($VerschID, $GUI_DISABLE)
    GUICtrlSetState($EntschID, $GUI_DISABLE)
    GUICtrlSetState($ClearAll, $GUI_DISABLE)
    ; Stops you from changing anything
    ;~~
    $string = GUICtrlRead($EditText)
    ; Saves the editbox for later
    ;~~
    ;~ GUICtrlSetData($EditText,'Bitte warten Sie, w?hrend Ihr verschl?sselter Text mit Ihrem Passwort '&@CRLF&'und RC4 verschl?sselt wird.')
    ; Friendly message
    If GUICtrlRead($CryptAlgo) = "AES 128 Bit" Then
    $iALG_ID = 0x0000660e
    EndIf
    If GUICtrlRead($CryptAlgo) = "AES 192 Bit" Then
    $iALG_ID = 0x0000660f
    EndIf
    If GUICtrlRead($CryptAlgo) = "AES 256 Bit" Then
    $iALG_ID = 0x00006610
    EndIf
    If GUICtrlRead($CryptAlgo) = "DES" Then
    $iALG_ID = 0x00006601
    EndIf
    If GUICtrlRead($CryptAlgo) = "Triple-DES" Then
    $iALG_ID = 0x00006603
    EndIf
    If GUICtrlRead($CryptAlgo) = "RC2" Then
    $iALG_ID = 0x00006602
    EndIf
    If GUICtrlRead($CryptAlgo) = "RC4" Then
    $iALG_ID = 0x00006801
    EndIf
    #cs
    If GUICtrlRead($HashAlgo) = "MD2" Then
    $iHashALG_ID = 0x00008001
    EndIf
    If GUICtrlRead($HashAlgo) = "MD4" Then
    $iHashALG_ID = 0x00008002
    EndIf
    If GUICtrlRead($HashAlgo) = "MD5" Then
    $iHashALG_ID = 0x00008003
    EndIf
    If GUICtrlRead($HashAlgo) = "SHA1" Then
    $iHashALG_ID = 0x00008004
    EndIf
    #ce
    If $option = 0 Then
    $vCryptKey = _Crypt_DeriveKey(GUICtrlRead($InputPass), GUICtrlRead($CryptAlgo))
    GUICtrlSetData($EditText, _Crypt_EncryptData(GUICtrlRead($EditText), $vCryptKey, $iALG_ID))
    _Crypt_DestroyKey($vCryptKey)
    Else

    [/autoit] [autoit][/autoit] [autoit]

    $vCryptKey = _Crypt_DeriveKey(GUICtrlRead($InputPass), GUICtrlRead($CryptAlgo))
    GUICtrlSetData($EditText, BinaryToString(_Crypt_DecryptData(Binary(GUICtrlRead($EditText)), $vCryptKey, $iALG_ID)))
    _Crypt_DestroyKey($vCryptKey)
    EndIf
    ; Calls the encryption. Sets the data of editbox with the encrypted string
    ;~~
    GUICtrlSetState($EditText, $GUI_ENABLE)
    GUICtrlSetState($InputPass, $GUI_ENABLE)
    ;GUICtrlSetState($HashAlgo,$GUI_ENABLE )
    GUICtrlSetState($CryptAlgo, $GUI_ENABLE)
    GUICtrlSetState($StartButton, $GUI_ENABLE)
    GUICtrlSetState($filemenu, $GUI_ENABLE)
    GUICtrlSetState($Open1, $GUI_ENABLE)
    GUICtrlSetState($Save1, $GUI_ENABLE)
    GUICtrlSetState($VerschID, $GUI_ENABLE)
    GUICtrlSetState($EntschID, $GUI_ENABLE)
    GUICtrlSetState($ClearAll, $GUI_ENABLE)
    ; This turns the window back on
    Case $msg = $save Or $msg = $Save1
    If $option = 0 Then
    $SaveExplorer = FileSaveDialog("Datei sichern unter...", @MyDocumentsDir, "RC4-verschl?sselter Text (.cpt)", 16)
    If @error <> 1 Then
    FileDelete($SaveExplorer)
    _FileCreate($SaveExplorer & ".cpt")
    $SaveString = GUICtrlRead($EditText)
    $FileToSave = FileOpen($SaveExplorer & ".cpt", 2)
    FileWrite($FileToSave, "" & $SaveString)
    FileClose($FileToSave)
    EndIf
    EndIf
    If $option = 1 Then
    $SaveExplorer = FileSaveDialog("Datei sichern unter...", @MyDocumentsDir, "Einfaches Textdokument (.txt)", 16)
    If @error <> 1 Then
    FileDelete($SaveExplorer)
    _FileCreate($SaveExplorer & ".txt")
    $SaveString = GUICtrlRead($EditText)
    $FileToSave = FileOpen($SaveExplorer & ".txt", 2)
    FileWrite($FileToSave, "" & $SaveString)
    FileClose($FileToSave)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    EndIf
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $VerschID
    $option = 0

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $EntschID
    $option = 1

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    EndSelect
    WEnd
    EndFunc ;==>_Main

    [/autoit] [autoit][/autoit] [autoit]

    #cs
    Mit frndl. Unterst?tzung von:
    Cartan12,
    name22
    #ce
    #include-once

    [/autoit]