einfache verschlüsselung

  • Habe einfach mal eine ganz ganz einfache verschlüsselung gemacht^^
    und die passt sogar in 29 zeilen :rofl:

    Spoiler anzeigen
    [autoit]


    $string = InputBox("Verschlüsselung","Gib den Text zum verschlüsseln ein")
    $string = StringReplace($string,"a","z2")
    $string = StringReplace($string,"b","a")
    $string = StringReplace($string,"c","b")
    $string = StringReplace($string,"d","c")
    $string = StringReplace($string,"e","d")
    $string = StringReplace($string,"f","e")
    $string = StringReplace($string,"g","f")
    $string = StringReplace($string,"h","g")
    $string = StringReplace($string,"i","h")
    $string = StringReplace($string,"j","i")
    $string = StringReplace($string,"k","j")
    $string = StringReplace($string,"l","k")
    $string = StringReplace($string,"m","l")
    $string = StringReplace($string,"n","m")
    $string = StringReplace($string,"o","n")
    $string = StringReplace($string,"p","o")
    $string = StringReplace($string,"q","p")
    $string = StringReplace($string,"r","q")
    $string = StringReplace($string,"s","r")
    $string = StringReplace($string,"t","s")
    $string = StringReplace($string,"u","t")
    $string = StringReplace($string,"v","u")
    $string = StringReplace($string,"w","v")
    $string = StringReplace($string,"x","w")
    $string = StringReplace($string,"y","x")
    $string = StringReplace($string,"z","y")
    $string = StringReplace($string,"z2","y")
    MsgBox(64,"fertig","dein verschlüsselter text: " & $string)

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • nur wird er nicht so richtig gehen xD
    als erstes wird a durch z2 ersetzt.
    die letzte zeile müsste also z2 durch z ersetzen, nicht durch y
    2. ersetzt die vorletzte zeile z durch y
    also bekommst du aus einem a nachher ein y2 raus

  • GANZ einfache Verschlüßelung für dich

    [autoit]

    Func _Decode($Text)
    Local $i
    Local $Zeichen
    Local $Verschlusselt
    For $i = 1 to stringlen($Text)
    $Zeichen = StringMid($Text, $i, 1)
    $Verschlusselt = $Verschlusselt & chr(asc($Zeichen) + 1)
    Next
    return $Verschlusselt
    EndFunc

    [/autoit]

    das ist doch noch einfacher.
    oder? ^^

    5 Mal editiert, zuletzt von Dopefish (11. Oktober 2009 um 03:45)

  • Spoiler anzeigen
    [autoit]

    $str = _Encrypt("blubbstar")
    MsgBox(0, "Verschlüsselt", $str)
    $str = _Decrypt($str)
    MsgBox(0, "Entschlüsselt", $str)

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

    Func _Encrypt($sStr)
    $sStr = StringReplace($sStr, Chr(97), "z")
    For $i = 98 to 122
    $sStr = StringReplace($sStr, Chr($i), Chr($i-1))
    Next
    Return $sStr
    EndFunc

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

    Func _Decrypt($sStr)
    $sStr = StringReplace($sStr, Chr(122), "a")
    For $i = 121 to 97 step -1
    $sStr = StringReplace($sStr, Chr($i), Chr($i+1))
    Next
    Return $sStr
    EndFunc

    [/autoit]
  • Joa, mein Fehler ;)

    Spoiler anzeigen
    [autoit]

    $str = _Encryption("Blubbstar", 1)
    MsgBox(0, "Verschlüsselt", $str)
    $str = _Encryption($str, 0)
    MsgBox(0, "Entschlüsselt", $str)

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

    Func _Encryption($sStr, $sStatus)
    Local $sNewStr
    For $i = 1 To StringLen($sStr)
    $sAsc = Asc(StringMid($sStr, $i, 1))
    If $sStatus = 1 Then
    If $sAsc = 122 Or $sAsc = 90 Then $sAsc -= 26
    $sNewStr &= Chr($sAsc + 1)
    ElseIf $sStatus = 0 Then
    If $sAsc = 65 Or $sAsc = 97 Then $sAsc += 26
    $sNewStr &= Chr($sAsc - 1)
    EndIf
    Next
    Return $sNewStr
    EndFunc ;==>_Encryption

    [/autoit]
  • Da fällt mir ein, ich hab auch mal was geschrieben:

    Spoiler anzeigen
    [autoit]

    Global $sText=FileRead("Test.txt"), $iKey1=13

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

    ;MsgBox(0,"",$sText)

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

    _Crypt($sText,$iKey1,True)

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

    ;MsgBox(0,"",$sText)

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

    _Crypt($sText,$iKey1,False)

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

    ;MsgBox(0,"",$sText)

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

    $hFile=FileOpen("Test1.txt",2)
    FileWrite($hFile,$sText)
    FileClose($hFile)

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

    Run(@ComSpec & " /c " & 'comp test.txt test1.txt', "", @SW_SHOW)

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

    Func _Crypt(ByRef $sString, ByRef $iKey, $bEncrypt=True)
    Local $aString=StringSplit($sString,""), $sReturn=""
    Local $iMax=$aString[0]
    Switch $bEncrypt
    Case False
    For $i=$iKey*3+1 To $iMax-2 Step 3
    $sReturn=Chr(Int($aString[$i]&$aString[$i+1]&$aString[$i+2])-$iKey) & $sReturn
    Next
    For $i=1 To $iKey*3 Step 3
    $sReturn=Chr(Int($aString[$i]&$aString[$i+1]&$aString[$i+2])-$iKey) & $sReturn
    Next
    $sString=$sReturn
    Case Else
    $iKey=Mod($iKey+Random(0,$iMax,1), $iMax)
    $iKey=Mod($iKey, 700)
    If $iKey=0 Then $iKey=1
    For $i=1 To $iMax-$iKey
    $sReturn=StringFormat("%03s",Asc($aString[$i+$iKey])+$iKey) & $sReturn
    Next
    For $i=$iMax-$iKey+1 To $iMax
    $sReturn=StringFormat("%03s",Asc($aString[$i+$iKey-$iMax])+$iKey) & $sReturn
    Next
    $sString=$sReturn
    EndSwitch
    EndFunc

    [/autoit]

    mfgE

  • Hatte gestern Abend nix zu tun, also hab mal die Verschlüsselung von Dopefish genommen, sie für die Verwendung von beliebigen (numerischen) Schlüsseln editiert und ne Entschlüsselungsfunktion hinzugefügt. Is ja einfach ne Caesar-Verschlüsselung.

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.0.0
    Author: Arkaneus

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

    Script Function:
    Seeeehhhhhr einfache Ver-/Entschlüsselungsfunktion - Nicht zum Verschlüsseln von wichtigen Sachen, eig. garnit xD

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

    #ce ----------------------------------------------------------------------------

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

    ;=============================================================================
    ;ORIGINAL-Funktion, keine zum Entschlüsseln vorhanden
    ;by Dopefish(autoit.de, https://autoit.de/index.php?page=Thread&threadID=15012)
    #cs
    Func _Decode($Text)
    Local $i
    Local $Zeichen
    Local $Verschlusselt
    For $i = 1 to stringlen($Text)
    $Zeichen = StringMid($Text, $i, 1)
    $Verschlusselt = $Verschlusselt & chr(asc($Zeichen) + 1)
    Next
    return $Verschlusselt
    EndFunc
    #ce
    ;=============================================================================

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

    ;und jz mein Part: Funktion für Verwendung mit beliebigem (numerischem) Schlüssel editiert, Entschlüsselungsfunktion hinzugefügt, @error wird evtl. gesetzt

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

    Func _Decode($Text, $Key = 1)
    If NOT IsNumber($Key) Then
    SetError(1)
    Return False
    EndIf
    Local $i
    Local $Zeichen
    Local $Verschlusselt
    Local $Z
    For $i = 1 To StringLen($Text)
    $Zeichen = StringMid($Text, $i, 1)
    $Z = Asc($Zeichen) + $Key
    While $Z < 0
    $Z = $Z + 255
    WEnd
    While $Z > 255
    $Z = $Z - 255
    WEnd
    $Verschlusselt = $Verschlusselt & Chr($Z)
    Next
    Return $Verschlusselt
    EndFunc ;==>_Decode

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

    Func _DecodeBack($Text, $Key = 1)
    If NOT IsNumber($Key) OR $Text = False Then
    SetError(1)
    Return False
    EndIf
    Local $i
    Local $Zeichen
    Local $Entschlusselt
    For $i = 1 To StringLen($Text)
    $Zeichen = StringMid($Text, $i, 1)
    $Z = Asc($Zeichen) - $Key
    While $Z < 0
    $Z = $Z + 255
    WEnd
    While $Z > 255
    $Z = $Z - 255
    WEnd
    $Entschlusselt = $Entschlusselt & Chr($Z)
    Next
    Return $Entschlusselt
    EndFunc ;==>_DecodeBack

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

    ;Example by me(Arkaneus)

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

    $str = _Decode("Arkaneus", 5)
    MsgBox(0, "Verschlüsselt", $str&@CRLF&"Error: "&@error)
    $str = _DecodeBack($str, 5)
    MsgBox(0, "Entschlüsselt", $str&@CRLF&"Error: "&@error)

    [/autoit]

    Hinweis: Wenn der Schlüssel zu groß ist, kann es teilweise seeeehhhr lange dauern, bis die While-Schleife zuende ist.

    Wenn jemand ne Funktion hat, mit der man beliebigen Text in Zahlen umwandeln kann (sollten nit zu groß sein, so ne Art Hashfunktion wär gut), immer her damit :D

  • Hab auch mal was zum verschlüsseln gemacht was auch immer anders ist wenn ein anderes wort der test ist mit verschiedenen stufen imm momment 2

    Spoiler anzeigen
    [autoit]

    Func _Decode($iText,$iFlag = 0,$iLv = 0)
    $split = StringSplit($iText,"")
    $decode = ''
    For $i = 1 To $split[0]
    $asc = Asc($split[$i])
    $chr = Hex($asc + 1)
    $decode &= $chr
    Next
    If $iFlag = 0 Then
    Return $decode
    ElseIf $iFlag = 1 Then
    $return = ''
    $spl = StringSplit($decode,"")
    For $a = 1 To $spl[0]
    $char = Asc($spl[$a])
    $asc = Chr($char)
    $return &= Hex($asc + 1)
    Next
    If $iLv = 0 Then
    return $return
    elseif $iLv = 1 Or $iLv = 2 Then
    $splite = StringSplit($return,"")
    $ret = ''
    For $b = 1 To $splite[0]
    $asci = Hex(Chr(Asc($splite[$b])))
    $ret &= $asci
    Next
    If $iLv = 1 Then
    return $ret
    Endif
    If $iLv = 2 Then
    $retu = ''
    $spliter = StringSplit($ret,"")
    For $c = 1 To $spliter[0]
    $ascii = Hex(Chr(Asc($spliter[$c])))
    $retu &= $ascii
    Next
    return $retu
    Endif
    Endif
    Endif
    EndFunc

    [/autoit]