Inside Windows Product Activation

Decoding

The mapping between the Product ID in decimal representation and its binary encoding in the double words P1 and P2 and the byte P3 is summarized in the following table.

digits

length

encoding

AAAAA

17 bits

bit 0 to bit 16 of P1

BBB

10 bits

bit 17 to bit 26 of P1

CCCCCCC

28 bits

bit 27 to bit 31 of P1 (lower 5 bits)

bit 0 to bit 22 of P2 (upper 23 bits)

DDEEE

17 bits

bit 23 to bit 31 of P2 (lower 9 bits)

bit 0 to bit 7 of P3 (upper 8 bits)

The meaning of each of the five groups of digits

digits

meaning

AAAAA

apparently always 55034 (in Windows XP RC1)

BBB

most significant three digits of Raw Product Key

CCCCCCC

least significant six digits of Raw Product Key plus check digit

DD

index of the public key used to verify the Product Key

EEE

random value

As can be seen, the (Raw) Product Key plays an important role in generating the Product ID.