HWID Activation


Overview

  • How to use it? Please find the instructions here.

  • This activation is supported for Windows 10/11 only.

  • This activation does not store any files in your system.

  • This activation is a permanent activation for your system Hardware.

  • On a system, this activation can be created for all the supported editions, and all can be linked to Microsoft account without any issues.

  • Once a system is activated, this activation cannot be removed because the license is stored in the Microsoft servers and not in the user’s system. MS checks the hardware ID (HWID) and if a license is found in their database, the system will automatically activate.

  • Any significant changes in the Hardware (such as a motherboard) may deactivate the system. It is possible to reactivate a system that was deactivated because of significant hardware changes, IF your activation, was linked to an online Microsoft account.

  • For activation to succeed, internet connectivity must be enabled. If you are trying to activate without these conditions being met, then the system will auto-activate later when the conditions are met.

  • Auto activation scenario after the Windows re-install:

    • The Internet is required. (Only at the time of activation)

    • The system will auto-activate if Retail (Consumer) media was used for the installation.

    • The system will NOT auto-activate if VL (Business) media was used for the installation. In this case, the user will have to insert that windows edition Retail/OEM key (find keys below on this page) to activate, if the user doesn’t wish to activate again using this script.


How does it work?

  • In the official upgrade process from Windows 7 to Windows 10, Microsoft provides an HWID (digital license) activation for Windows 10 without any cost.

  • In the background, the upgrade process runs a file named gatherosstate.exe and it checks the license of current Windows if found activated, it generates a valid GenuineTicket.xml which is sent to Microsoft and in return, MS authorizes a license.

  • So if we just convince the gatherosstate.exe file that the system is activated by fooling it, it will generate a valid ticket, which can be used to get the valid HWID (Digital license). The script here does exactly that to get the activation for free without any upgrade process.

Now a question, can Microsoft differentiate counterfeit tickets and block the license?

  • Umm.. Yes, but actually no. The signature type can (sort of) be used to determine what utility is responsible for the ticket. There is no way (in a standard environment) for a non-activated Windows 10 installation to generate a ticket. In the normal process, gatherosstate will ask SLC for the entire ticket, but when this fails it will generate and sign it by itself, creating a “downlevelGTkey” signature. For every activated system, a generated ticket will be returned by SLC and thus will have a “clientLockboxKey” signature. Put simply, the signature (should) always be a “clientLockboxKey” one in the case of an activated system, but in this case, it isn’t. Microsoft will not take action against it, because of the risk of voiding valid licenses. Besides, they never really cared for consumer piracy; That’s not where they get the most money from.

Supported Products

Windows 10/11 Generic Retail/OEM/MAK Key
Education YNMGQ-8RYV3-4PGQ3-C8XTP-7CFBY
Education N 84NGF-MHBT6-FXBX8-QWJK7-DRR8H
Enterprise XGVPP-NMH47-7TTHJ-W3FW7-8HV2C
Enterprise N 3V6Q6-NQXCX-V8YXR-9QCYV-QPFCT
Enterprise LTSB 2015 FWN7H-PF93Q-4GGP8-M8RF3-MDWWW
Enterprise LTSB 2016 NK96Y-D9CD8-W44CQ-R8YTK-DYJWX
Enterprise LTSC 2019 43TBQ-NH92J-XKTM7-KT3KK-P39PB
Enterprise N LTSB 2015 NTX6B-BRYC2-K6786-F6MVQ-M7V2X
Enterprise N LTSB 2016 2DBW3-N2PJG-MVHW3-G7TDK-9HKR4
Home YTMG3-N6DKC-DKB77-7M9GH-8HVX7
Home N 4CPRK-NM3K3-X6XXQ-RXX86-WXCHW
Home China N2434-X9D7W-8PF6X-8DV9T-8TYMD
Home Single Language BT79Q-G7N6G-PGBYW-4YWX6-6F4BT
IoT Enterprise XQQYW-NFFMW-XJPBH-K8732-CKFFD
IoT Enterprise LTSC 2021 QPM6N-7J2WJ-P88HH-P3YRH-YY74H
Pro VK7JG-NPHTM-C97JM-9MPGT-3V66T
Pro N 2B87N-8KFHP-DKV6R-Y2C8J-PKCKT
Pro Education 8PTT6-RNW4C-6V7J2-C2D3X-MHBPB
Pro Education N GJTYN-HDMQY-FRR76-HVGC7-QPF8P
Pro for Workstations DXG7C-N36C4-C4HTG-X4T3X-2YV77
Pro N for Workstations WYPNQ-8C467-V2W6J-TX4WX-WT2RQ
S V3WVW-N2PV2-CGWC3-34QGF-VMJ2C
S N NH9J3-68WK7-6FB93-4K3DF-DJ4F6
SE K9VKN-3BGWV-Y624W-MCRMQ-BHDCD
SE N KY7PN-VR6RX-83W6Y-6DDYQ-T6R4W
Team XKCNC-J26Q9-KFHD2-FKTHY-KD72Y

Notes:

  • X86-X64 and ARM64 architecture systems are supported.

  • Any Evaluation version of Windows (i.e. ‘EVAL’ LTSB/C) cannot be activated.

  • IoTEnterpriseS (LTSC) 2021 key will be used to activate the unsupported EnterpriseS (LTSC) 2021 edition.

  • Windows Server does not support HWID activation.

  • ServerRdsh edition does not officially support activation on non-azure systems.


Downlevel & Lockbox Ticket

Downlevel = downlevelGTkey

Lockbox = clientLockboxKey

  • Downlevel Method: It creates a downlevelGTkey ticket for activation with the simplest process.

  • LockBox Method: It creates a clientLockboxKey ticket which better mimics genuine activation, But requires more steps such as,

    • Cleaning ClipSVC licenses

    • Deleting a volatile and protected registry key by taking ownership
      HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ClipSVC\Volatile\PersistedSystemState

    • System may need a restart for successful activation

    • Microsoft Account and Store Apps may need relogin-restart in the system

Notes:

  • We don’t suggest running the Lockbox method on a production system. Hence by default script will choose the Downlevel method and won’t show you the option to select the Lockbox method. However, if you want, you can apply it through command line switches.

  • Microsoft accepts both types of tickets and that’s unlikely to change.


Command line Switches

  • This is applicable only in separate files versions.

  • If any parameter is used then the script will automatically run in unattended mode.

  • To activate with the Downlevel method (default),

"HWID_Activation.cmd" /a

  • To only generate GenuineTicket.xml with the Downlevel method (default),

"HWID_Activation.cmd" /g

  • To enable LockBox method (not recommended), run the script with /k parameter You need to use this option with either activation or ticket generation. Example,

"HWID_Activation.cmd" /a /k

"HWID_Activation.cmd" /g /k


File Details

Besides the plain batch script, HWID activation requires the use of the official gatherosstate.exe (x86) file.

 File: gatherosstate.exe
SHA-1: FABB5A0FC1E6A372219711152291339AF36ED0B5 

It’s taken from Windows 10 Version 1607 ADK (Section: User State Migration Tool)


Manual Activation

  • You need the gatherosstate.exe file, get it from MAS separate files version.

  • Make a folder named Files in C drive, C:\Files and copy the gatherosstate.exe file in that folder.

  • Make sure the Internet is enabled.

  • Open Windows Powershell as administrator, and enter the following listed commands in the sequence in which they are given.

  • Enter the Key, (Replace <key> with the key from the above list) with the following command

slmgr /ipk <key>

  • Copy the below code all at once and enter it in PowerShell to modify the gatherosstate.exe file.
$bytes  = [System.IO.File]::ReadAllBytes("C:\Files\gatherosstate.exe")
$bytes[320] = 0x9c
$bytes[321] = 0xfb
$bytes[322] = 0x05
$bytes[13672] = 0x25
$bytes[13674] = 0x73
$bytes[13676] = 0x3b
$bytes[13678] = 0x00
$bytes[13680] = 0x00
$bytes[13682] = 0x00
$bytes[13684] = 0x00
$bytes[32748] = 0xe9
$bytes[32749] = 0x9e
$bytes[32750] = 0x00
$bytes[32751] = 0x00
$bytes[32752] = 0x00
$bytes[32894] = 0x8b
$bytes[32895] = 0x44
$bytes[32897] = 0x64
$bytes[32898] = 0x85
$bytes[32899] = 0xc0
$bytes[32900] = 0x0f
$bytes[32901] = 0x85
$bytes[32902] = 0x1c
$bytes[32903] = 0x02
$bytes[32904] = 0x00
$bytes[32906] = 0xe9
$bytes[32907] = 0x3c
$bytes[32908] = 0x01
$bytes[32909] = 0x00
$bytes[32910] = 0x00
$bytes[32911] = 0x85
$bytes[32912] = 0xdb
$bytes[32913] = 0x75
$bytes[32914] = 0xeb
$bytes[32915] = 0xe9
$bytes[32916] = 0x69
$bytes[32917] = 0xff
$bytes[32918] = 0xff
$bytes[32919] = 0xff
$bytes[33094] = 0xe9
$bytes[33095] = 0x80
$bytes[33096] = 0x00
$bytes[33097] = 0x00
$bytes[33098] = 0x00
$bytes[33449] = 0x64
$bytes[33576] = 0x8d
$bytes[33577] = 0x54
$bytes[33579] = 0x24
$bytes[33580] = 0xe9
$bytes[33581] = 0x55
$bytes[33582] = 0x01
$bytes[33583] = 0x00
$bytes[33584] = 0x00
$bytes[34189] = 0x59
$bytes[34190] = 0xeb
$bytes[34191] = 0x28
$bytes[34238] = 0xe9
$bytes[34239] = 0x4f
$bytes[34240] = 0x00
$bytes[34241] = 0x00
$bytes[34242] = 0x00
$bytes[34346] = 0x24
$bytes[34376] = 0xeb
$bytes[34377] = 0x63
[System.IO.File]::WriteAllBytes("C:\Files\gatherosstatemodified.exe", $bytes)
  • Now we need to generate the ticket, to do that, enter the below command.
$value = (Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\ProductOptions).OSProductPfn

C:\Files\gatherosstatemodified.exe Pfn=$value`;DownlevelGenuineState=1
  • A GenuineTicket.xml file should be created in the folder C:\Files\ now let’s apply it.

clipup -v -o -altto C:\Files\

  • Activate Windows with the following command:

slmgr /ato

  • Check Activation Status with the following command:

slmgr /xpr

  • Done.

Setup Preactivate

  • Check the Extract OEM option in the MAS Extras section if you want pre-activated Windows installation.

  • Further, read here.


Troubleshooting

  • Reach out to us on Discord (signup not required) with an error screenshot.