Local $lEncr = _Encrypt( "Daniel W.", "Passwort", 1 ) Local $lDecr = _Encrypt( $lEncr, "Passwort", 0 ) MsgBox( 0, "Test", $lEncr & @CRLF & $lDecr ) ;=============================================================================== ; ; Function Name: _Encrypt( $aString, $aPW ,$aMode = 1 ) ; Description:: Function to en- decrypt strings ; Parameter(s): $aString = String to encrypt ; $aPW = Password ; $aMode = 1 for encrypt, 0 for decrypt ; Requirement(s): None ; Return Value(s): en- decrypted string ; Author(s): Daniel Wahlmann ; ;=============================================================================== ; Func _Encrypt( $aString , $aPW, $aMode = 1 ) Local $lReturn = "",$lBuffer = "", $lPW = "", $lStrLen = StringLen( $aString ), $lPwLen = StringLen( $aPW ) If Not IsString( $aString ) or $lStrLen < 1 or ($aMode <> 0 and $aMode <> 1) or ($aMode = 0 and Mod( $aString, 2 ) <> 0 ) or StringLen( $aPW ) < 1 Then Return 0 For $lNum = 1 to $lPwLen $lPW &= Asc( StringMid( $aPW , $lNum, 1 ) ) Next Switch $aMode Case 1 For $lNum = 1 to $lStrLen $lReturn &= Hex( BitXOR( BitNOT( Asc( StringMid( $aString, $lNum, 1 ) ) + 1 ), $lPW, 255 ), 2 ) Next Case 0 For $lNum = 1 To $lStrLen $lBuffer &= Chr( BitXOR( BitNOT( Asc ( Chr( Dec( StringMid( $aString, $lNum, 1 ) & StringMid( $aString, $lNum + 1, 1 ) ) ) ) ), $lPW, 255 ) ) $lNum += 1 Next For $lNum = 1 to $lStrLen/2 $lReturn &= Chr( Asc( StringMid( $lBuffer, $lNum, 1 ) ) - 1 ) Next EndSwitch Return $lReturn EndFunc ;==>_Encrypt ;=============================================================================== ; ; Function Name: _EncryptFile( $aFile, $aPW ,$aMode = 1 ) ; Description:: Function to en- decrypt files ; Parameter(s): $aFile = file to encrypt/decrypt ; $aPW = Password ; $aMode = 1 for encrypt, 0 for decrypt ; Requirement(s): File.au3 ; Return Value(s): Success 1 ; Failure 0 ; Author(s): Daniel Wahlmann ; ;=============================================================================== ; Func _EncryptFile( $aFile, $aPW, $aMode = 1 ) Dim $lRead, $lReturn = False If FileExists( $aFile ) Then _FileReadToArray( $aFile, $lRead ) FileDelete( $aFile ) For $lNum = 1 to $lRead[0] FileWriteLine( $aFile, _Encrypt( $lRead[$lNum], $aPW, $aMode ) ) Next $lReturn = True EndIf Return $lReturn EndFunc ;==>_EncryptFile