Win10 Hardware ID - What IDs are actually being used?

Discussion in 'Windows 10' started by fsound, Apr 22, 2021.

  1. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    Hej!

    I know this has already been discussed in various places before, but even after long research via the board's search and Google, I have not found a "final" or up-to-date summary or analysis.

    Does anyone have any idea what device IDs are currently checked to identify hardware in Windows 10?

    It's definitely more than the hardware UUID, MAC, and drive ID... I've changed them all in VirtualBox and VMware for testing propose, but never got an activated clone.

    Best regards,
    fsound
     
  2. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,575
    15,646
    270
    Good question I was thinking of it lately. Hope someone might help.
     
  3. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    Search for a thread in which @whatever127 @murphy78 and @Enthousiast discussed this, iirc @Yen also was involved.

    Also can't find it atm... have to go out now, but will continue searching for it when i am back.
     
  4. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
  5. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    Yep, that's the one i meant:)

    I didn't realize that by then @whatever127 went tits up and @awuctl continued.
     
  6. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    #6 fsound, May 1, 2021
    Last edited: May 1, 2021
    (OP)
    A Chinese OEM from Alibaba has sent me these details for Windows 10 activation:
    • SmbiosSystemManufacturer
    • SmbiosSystemProductName
    • SmbiosSystemSerialNumber
    • SmbiosSkuNumber
    • SmbiosSystemFamily
    • SmbiosUuid
    • MacAddress
    • DiskSerialNumber
    • TpmVersion
    • TPM EkPubHash
     
  7. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    #8 fsound, May 1, 2021
    Last edited: May 1, 2021
    (OP)
    I was able to generate a report. (xxxxxxxx = blanked details, (null) = not found)

    Code:
    Decoded Hardware Hash:
    <?xml version="1.0"?>
    <HardwareReport>
            <HardwareInventory>
                    <p n="ToolVersion" v="5" />
                    <p n="HardwareInventoryVersion" v="131" />
                    <p n="ToolBuild" v="10.0.19041.1" />
                    <p n="OSType" v="WOW64" />
                    <p n="OsCpuArchitecture" v="x86" />
                    <p n="OsBuild" v="10.0.19041.928" />
                    <p n="OsSystemTime" v="2021-05-01T13:41:58Z" />
                    <p n="OsLocalTime" v="2021-05-01T15:41:58+02:00" />
                    <p n="ProcessorModel" v="xxxxxxxxxxxxxx" />
                    <p n="ProcessorPackages" v="1" />
                    <p n="ProcessorThreads" v="1" />
                    <p n="ProcessorCores" v="1" />
                    <p n="ProcessorHyperThreading" v="false" />
                    <p n="SmbiosRamArrayCount" v="0" />
                    <p n="SmbiosRamSlots" v="0" />
                    <p n="SmbiosRamErrorCorrection" v="Null" />
                    <p n="SmbiosRamMaximumCapacity" v="0" />
                    <p n="TotalPhysicalRAM" v="xxxxxxxxxxxxxx" />
                    <p n="SmbiosFirmwareVendor" v="innotek GmbH" />
                    <p n="SmbiosSystemManufacturer" v="innotek GmbH" />
                    <p n="SmbiosSystemProductName" v="VirtualBox" />
                    <p n="SmbiosSystemSerialNumber" v="0" />
                    <p n="SmbiosUuid" v="xxxxxxxxxxxxxx" />
                    <p n="SmbiosSkuNumber" v="SMBIOS_STRING_INDEX_0" />
                    <p n="SmbiosSystemFamily" v="Virtual Machine" />
                    <p n="SmbiosSystemVersion" v="1.2" />
                    <p n="SmbiosBoardManufacturer" v="Oracle Corporation" />
                    <p n="SmbiosBoardProduct" v="VirtualBox" />
                    <p n="SmbiosBoardVersion" v="1.2" />
                    <p n="ChassisType" v="0x78" />
                    <p n="Disk1.DiskCapacity" v="53" />
                    <p n="Disk1.DiskType" v="HDD" />
                    <p n="Disk1.StorageBusType" v="SATA" />
                    <p n="Disk1.IncursSeekPenalty" v="255" />
                    <p n="Disk1.TrimEnabled" v="0" />
                    <p n="Disk1.DiskSerialNumber" v="xxxxxxxxxxxxxx|VBOX HARDDISK|" />
                    <p n="InternalDiskCount" v="1" />
                    <p n="TotalDiskCapacity" v="53" />
                    <p n="OpticalDiskDriveType" v="true" />
                    <p n="DisplayResolutionHorizontal" v="xxxxxxxxxxxxxx" />
                    <p n="DisplayResolutionVertical" v="xxxxxxxxxxxxxx" />
                    <p n="DisplaySizePhysicalH" v="xxxxxxxxxxxxxx" />
                    <p n="DisplaySizePhysicalY " v="xxxxxxxxxxxxxx" />
                    <p n="DigitizerSupportID" v="(null)" />
                    <p n="PowerPlatformRole" v="Desktop" />
                    <p n="GpuCount" v="1" />
                    <p n="Gpu1.DedicatedVideoMemory" v="0" />
                    <p n="Gpu1.DedicatedSystemMemory" v="0" />
                    <p n="Gpu1.RemovalPolicy" v="NoRemoval" />
                    <p n="Gpu1.InLocalMachineContainer" v="true" />
                    <p n="Gpu1.Manufacturer" v="Oracle Corporation" />
                    <p n="Gpu1.Model" v="VirtualBox Graphics Adapter (WDDM)" />
                    <p n="Status" v="0x00000000" />
                    <p n="OfflineDeviceIdType" v="REGISTRY_VARIABLE_RANDOMSEED" />
                    <p n="OfflineDeviceId" v="xxxxxxxxxxxxxx" />
                    <p n="DiskSSNKernel" v="xxxxxxxxxxxxxx|VBOX HARDDISK|" />
            </HardwareInventory>
    </HardwareReport>
    
    Code:
    <?xml version="1.0"?>
    <HardwareHashQualityCheckResult>
            <InvalidCriticalField>
                    <p n="ProductKeyID" v="xxxxxxxx" />
                    <p n="MacAddress" v="xxxxxxxx" />
                    <p n="SmbiosSystemSerialNumber" v="xxxxxxxx" />
                    <p n="TPMVersion" v="(null)" />
                    <p n="TPM EkPub" v="(null)" />
            </InvalidCriticalField>
            <InvalidImportantField>
                    <p n="ChassisType" v="0x78" />
                    <p n="Display1.ResolutionHorizontal" v="xxxxxxxx" />
                    <p n="Display1.ResolutionVertical" v="xxxxxxxx" />
                    <p n="Display1.DisplaySizePhysicalH" v="xxxxxxxx" />
                    <p n="Display1.DisplaySizePhysicalV" v="xxxxxxxx" />
                    <p n="OSType" v="WOW64" />
                    <p n="ProcessorHyperThreading" v="xxxxxxxx" />
                    <p n="ProductKeyPkPn" v="xxxxxxxx" />
            </InvalidImportantField>
    </HardwareHashQualityCheckResult>
    Seems like the "Critical Fields" are most important. And when they don't match, additional details from "Important Fields" are gathered.
     
  8. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    Does this apply to HWID activation or MSDM activation?
     
  9. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    That's what I'm trying to figure out right now. I strongly assume that Microsoft does not invent the wheel twice and uses the same procedures in different areas "in-house".

    I hope to figure out, what's really significant at a hardware change.
     
  10. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    LAN/Mobo for HWID / Digital License.
     
  11. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    #12 fsound, May 1, 2021
    Last edited: May 1, 2021
    (OP)
    This is a popular opinion, but it has never been studied in detail. CPU, for example, isn't an important value. I've just moved the VM from an AMD host to an Intel host and the machine is still activated. I've replaced the virtual NIC and changed the MAC. Additionally, I've changed the disk drive's serial number and volume number, it's still activated. Also GPU is one of those urban legends.

    The HardwareHash is verified on probabilities and that's what I'm trying to figure out.
     
  12. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    Because we can generate HWIDs on the fly now.

    My most detailed test was, my onboard lan broke down, disabled it in bios and put in a pci lan card, did clean install, hwid was gone, got my onboard lan working again, removed the new pci lan card, hwid activation was back.

    Exchanging drives didn't cause any problems.
     
  13. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    Believe it or not: There are also people on this board who use licenses legally. I don't want to tie my licenses to Microsoft accounts because our main users change more often. Therefore, if one is in possession of a legal license, it is of interest to keep the activation when moving or resetting a virtual machine.

    It's research... maybe as senseless as flying to Mars :)

    Yeah, it's verified on a probability level. Maybe your LAN card was higher rated.
     
  14. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    Who says you need to tie anything to a MSA for this.
    Can be counted on 2 hands;):D And there is no difference between a generated hwid or 7/8/10 to 10, afaik.
     
  15. Theoretically, M$ can work out by the ticket's signature if it was faked or genuine. Although it will be wasteful of computing resources to do it for each single activation request ;)
     
  16. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,765
    450
    According to the inventors of the original tool they can't, sadly they are no longer among us.

    MSFT doesn't care for it for over 5 years now, it seems:D
     
  17. Yes, the only serious anti-piracy measure I have seen taken recently by Micro$oft is the banning of faked edu domain Office 365 accounts (mine got banned too :()
     
  18. case-sensitive

    case-sensitive MDL Expert

    Nov 7, 2013
    1,681
    731
    60
    >MSFT doesn't care for it for over 5 years now, it seems

    Wich would make less than no sense based on microsoft history . Maybe its one of their ways to check / measure / judge piracy .
     
  19. fsound

    fsound MDL Novice

    Apr 3, 2015
    34
    19
    0
    #20 fsound, May 1, 2021
    Last edited: May 1, 2021
    (OP)
    In Germany, for the first time, there have recently been some raids and hundrets of charges because users have bought cheap license keys via eBay. BUT: Microsoft is apparently not suing here, but the public prosecutor's office. However, the whole thing was initiated by Microsoft, but they are apparently NOT the plaintiff (but just the state prosecution is).

    On-topic:
    Damn yeah. I was able to deactivate the machine and reactivate it by modifying the DMI table. Stay tuned. I'm writing it up.

    Edit: Might take a while, since I need to reboot the machine each time I'm changing a value :-(