wjx251 / winauth

Automatically exported from code.google.com/p/winauth
GNU General Public License v3.0
0 stars 0 forks source link

Shows different codes on different PCs #138

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Importing xml file from PC(A) into PC(B)

What is the expected output? What do you see instead?
Expected PC(B) to display the same code
Which shows up totally diferent from PC(A)'s

What version of the product are you using? On what operating system?
PC(A) is running all versions of WinAuth 1.x/2.x/3.x on English version of 
Windows 7 with non-unicode set to Simplified Chinese
PC(B) is running newest version of WinAuth 3.x on Windows XP SP2 Simplified 
Chinese version

Please provide any additional information below.

PC(A) is mine, PC(B) belongs to a friend

PC(A) has all versions of .NET Framework installed, all 3 versions of WinAuth 
get the same code, no problem at all.
Then I tried to import the xml to PC(B) which is running on XP with a fresh 
installed .NET Framework 4.0 and the result is inconsistant codes.

The snapshot was taken on remote assistant session, old(1.x/2.x) winauth on top 
is PC(A) and the remote PC(B) running winauth 3.x which showing inconsistant 
codes.

Another thing is on PC(B) when I tried to show serial & restore code, the 
serial number is messed up with weird symbols not the actual code I see on PC(A)

I haven't tried import using serial and restore code, I'll give it a try next 
time I get remote access to PC(B), but there's definitely something wrong with 
importing xml file into machines running on different language platform.

Original issue reported on code.google.com by gs.t...@gmail.com on 4 Feb 2014 at 5:49

Attachments:

GoogleCodeExporter commented 9 years ago
Here we go again, this happened on PC(A) too while importing another xml file 
which is used by another account.

unreadable, and this time even on PC(A) it reads differently from WinAuth 1.x 
and 3.x

Original comment by gs.t...@gmail.com on 4 Feb 2014 at 6:14

Attachments:

GoogleCodeExporter commented 9 years ago
That last screenshot tells me that the authenticator.xml file has been 
corrupted. I can't say why, but if the serial is like that, the secret key will 
also be bad.

Do you have the restore code?

Original comment by winauth on 4 Feb 2014 at 6:20

GoogleCodeExporter commented 9 years ago
And which version of the old version of WinAuth are you using?

Original comment by winauth on 4 Feb 2014 at 6:23

GoogleCodeExporter commented 9 years ago
the "corrupted" xml works fine on WinAuth 1.4.1170 but is messed up when 
imported to newest version

and I don't happen to have the restore code for that one
Is there a way to find restore code on 1.4?

Original comment by gs.t...@gmail.com on 5 Feb 2014 at 1:24

GoogleCodeExporter commented 9 years ago
When 1.4.1170 was written, Blizzard didn't have the Restore code feature. 
However, it just gets calculated from the secret key.

If you right click and "Export Key..." you see the Serial Number and Secret 
Key. If they look corrupted, then the xml file is corrupt and the code will be 
wrong. If they look fine, then note down the serial and key as backup.

Version prior to 2.x didn't have an automated backup, so if anything got 
corrupt it was lost. In 2.x and 3.x the keys are encrypted and saved in the 
registry as a last resort, because so many didn't have backups or the Restore 
codes.

In your original problem, where you had different codes, are the serials of any 
of them corrupt?

Original comment by winauth on 6 Feb 2014 at 3:39

GoogleCodeExporter commented 9 years ago
The serial and private key from "Export" window looked fine.
I imported the private key into 3.x and codes generated match with ver. 1.4
Thanks for the help

Another thing is I tried to view serial and restore code on 3.x it shows:
"Serial Number US-Imported" with a restore code at the bottom
I tried to add a new one on 3.x with the original serial number displayed on 
1.4 and the given restore code, seems didn't work out.

So I can't import this one onto my cellphone like the other one.
I tried to create a new one with 3.x but it gives me serial starting with CN 
not US, which could not be used on non-mainland China servers.
Is there a way to choose region on 3.x?

Thanks 

Original comment by gs.t...@gmail.com on 7 Feb 2014 at 6:29

GoogleCodeExporter commented 9 years ago
> I tried to view serial and restore code on 3.x it shows:
> "Serial Number US-Imported" with a restore code at the bottom

The reason is the "private key" import doesn't include the serial, so 3.x just 
has to make something up.

Before Blizzard invented their Restore code feature there was no way to recover 
the authenticator, and even though a restore code can be calculated it won't do 
anything. So if your authenticator is older than that, which it sounds like it 
is, you can't restore it. It just doesn't exist on their servers. That's why it 
failed.

In this case, just make sure you keep a backup of that key in case you ever 
need to enter it in again, or, remove it from your account and add a new 
authenticator.

It uses your IP to detect China from the rest of the world, because the 
Blizzard China servers have a different URL than the US ones. For everyone else 
the region is now ignored because Blizzard themselves pick it from your IP and 
sent us back the correct Serial number. They changed this a couple of years ago.

However, you can override the CN/US option by including the following file 
(attached) that will force WinAuth to talk to US servers.

Just put the file in the same folder as the .exe file. If you have renamed the 
winauth.exe file to something , you need to rename this file too to make it 
match.

One thing, in an earlier message you mentioned that there was a problem 
switching between computers of different languages. Can you give me any more 
details on that? So I can try and reproduce it here. Thanks.

Original comment by winauth on 7 Feb 2014 at 6:54

Attachments:

GoogleCodeExporter commented 9 years ago
Missed a bit :)

> So I can't import this one onto my cellphone like the other one.

Not easily, because the authenticator is too old and doesn't have the restore 
feature. It can actually be done but involves a rooted phone, and directly 
modifiying the config file for the apk (assuming Android). A lot of effort. 
Might be easier to remove and and a newer one.

Original comment by winauth on 7 Feb 2014 at 6:59

GoogleCodeExporter commented 9 years ago
Thanks for the config file, works perfectly

I tried to reproduce the problem again but I think I messed up the xml file

Now the code in it says <WinAuth version="2.0"> and result an error in 1.4 when 
attempt to load

What I remember is when loading the file into 3.x on the same PC it displayed 
same codes as on 1.4

But when I send the file to my friend's PC and attempted to load on 3.x the 
code is defferent from mine.

I'm replacing my old one with a new one since it's safer, thanks alot for the 
help.

Original comment by gs.t...@gmail.com on 7 Feb 2014 at 2:29

GoogleCodeExporter commented 9 years ago
No problem. Glad its working.

What language/region/keyboard were your and your friend's PC set to?

Original comment by winauth on 7 Feb 2014 at 7:54

GoogleCodeExporter commented 9 years ago
Region: Mainland China
Language: Simplified Chinese
Keyboard: Simplified Chinese - US Keyboard

Original comment by gs.t...@gmail.com on 8 Feb 2014 at 2:59

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago

Original comment by winauth on 18 Jun 2014 at 7:29