autoItrules209 Posted January 10, 2010 Share Posted January 10, 2010 Im currently "playing" with Compression and encryption in Autoit. Btw I want to use RAM, not write to file, run a tool, re-read the file! first I found the build-in _StringEncrypt - a encrypted string ist 4 times as large as the decrypted one, is there any other algorithm for crypting that doent expand the string (or at least not as much)? Handeling Compression I started using zLib_UDF from http://www.autoitscript.com/forum/index.php?showtopic=87284 . It was working pretty ine in the beginning, but then I discovered an Issue. Sometimes Compression return "-5" instead of the compressed string. Heres my Code: #include "zlib_udf.au3" $i = 0 While 1 $str = "" $strlength = 16399 For $j = 1 To $strlength $str &= Chr(Random(0, 255, 1)) Next $bin = StringToBinary($str) $binlength = BinaryLen($bin) _Zlib_Startup() $compressed = _Zlib_CompressBinary($bin) $uncompressed = _Zlib_UncompressBinary($compressed, $binlength) _Zlib_Shutdown() If StringCompare(BinaryToString($uncompressed), $str)<>0 Then FileWrite("bug" & $i & ".txt", $str) MsgBox(0, $i & " " & $strlength & " " & StringCompare(BinaryToString($uncompressed), $str), ($compressed));BinaryToString) EndIf $i += 1 WEnd So I create a Random string and compress & decompress it, making a MsgBox when decompressed string is NOT what would be expected Very Strange about this bug: It NEVER occurs using Chr 4 and up, even though it never occurs using a length of 16390 and less. using 16500, every random string is affected by this error, BUT ONLY if there are letters generated which are 4 and less ($str &= Chr(Random(4, 255, 1)) works fine, even using a length of 100.000 reagrds Link to comment Share on other sites More sharing options...
autoItrules209 Posted January 21, 2010 Author Share Posted January 21, 2010 No Ideas? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now