Jango Posted May 15, 2008 Share Posted May 15, 2008 Hello, I have a problem with a friend of my who live in china and reported me that one of my script does'nt work. I identified where is the problem but i don't understand what happen and more important how to avoid this. I use the following code found on this forum: expandcollapse popupFunc Blowfish($key, $message, $decrypt=1) Local $i, $m, $len = StringLen($message) Local $xl, $xr, $result If IsDeclared("P") <> 1 Or IsDeclared("S") <> 1 Or IsDeclared("Gkey") <> 1 Then Global $P[18] Global $S[4][256] Global $Gkey = $key BlowFish_Init($P, $S, $Gkey) ElseIf Not ($Gkey == $key) Then Global $P[18] Global $S[4][256] Global $Gkey = $key BlowFish_Init($P, $S, $Gkey) EndIf While Mod(StringLen($message),8) <> 0 $message &= Chr(0) WEnd While $m < $len $xl = StringMid($message,$m+1,4) $xr = StringMid($message,$m+5,4) $m += 8 $xl = BitOR(BitShift(Asc(StringMid($xl,1,1)),-24),BitShift(Asc(StringMid($xl,2,1)),-16),BitShift(Asc(StringMid($xl,3,1)),-8),Asc(StringMid($xl,4,1))) $xr = BitOR(BitShift(Asc(StringMid($xr,1,1)),-24),BitShift(Asc(StringMid($xr,2,1)),-16),BitShift(Asc(StringMid($xr,3,1)),-8),Asc(StringMid($xr,4,1))) If $decrypt == 0 Then BlowFish_Encrypt($P, $S, $xl, $xr) Else BlowFish_Decrypt($P, $S, $xl, $xr) EndIf $result &= Chr(BitAND(BitShift($xl,24),0xFF)) $result &= Chr(BitAND(BitShift($xl,16),0xFF)) $result &= Chr(BitAND(BitShift($xl,8),0xFF)) $result &= Chr(BitAND($xl,0xFF)) $result &= Chr(BitAND(BitShift($xr,24),0xFF)) $result &= Chr(BitAND(BitShift($xr,16),0xFF)) $result &= Chr(BitAND(BitShift($xr,8),0xFF)) $result &= Chr(BitAND($xr,0xFF)) WEnd ; Strip Null Bytes from end of string (Are present if decrypting) ;$result = StringReplace($result,Chr(0),"") Return $result EndFunc We encrypt the same string using the same key but the result is different on his computer installed with XP chinese version (some characters miss) ??? Can someone explain this ? Link to comment Share on other sites More sharing options...
James Posted May 15, 2008 Share Posted May 15, 2008 There is a unicode version of AutoIt if I remember correctly. Blog - Seriously epic web hosting - Twitter - GitHub - Cachet HQ Link to comment Share on other sites More sharing options...
Jango Posted May 15, 2008 Author Share Posted May 15, 2008 There is a unicode version of AutoIt if I remember correctly. I'm using it. Here is the console output: >Running:(3.2.10.0):C:\Program Files\AutoIt3\aut2exe\aut2exe.exe +>15:27:56 Aut2exe.exe ended.rc:0 ->Warning: This is an Unicode compiled script and will not run on Win9x/ME. +>15:27:57 RC.exe ended.rc:0 +>15:27:58 ResHacker ended.rc:0 Link to comment Share on other sites More sharing options...
Jango Posted May 16, 2008 Author Share Posted May 16, 2008 Anyone have an idea of what happen ? 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