By WitherOrNot & asdcorp
A collection of activation/evaluation extension methods for Windows 7 through 11.
Note: We provide no support for direct use of this tool. The only supported implementation of the methods presented here is in Microsoft Activation Scripts.
Included methods and tools:
- ZeroCID - Permanent activation until reinstall/feature upgrade
- KMS4k - Offline KMS activation for over 4000 years
- AVMA4k - Offline AVMA activation for over 4000 years (Server 2012 R2+ only)
- Reset Rearm Count - Reset rearm counter for infinite evaluation
- Reset Eval Period - Reset evaluation period for infinite evaluation
- Dump/Load Trusted Store - Dump and load trusted store data
- Delete Unique ID - Delete a product key's unique ID to prevent online validation
- Install Generated Product Key - Install generated product key data for any product
- KMS Charger - Charge an existing KMS server to allow immediate use for activation
- Clear Tamper State - Clear the tamper state set due to store corruption or deletion
- Remove Evaluation Key Lock - Remove the product key change lock set for evaluation product keys
Usage: TSforge [/dump <filePath> (<encrFilePath>)] [/load <filePath>] [/kms4k] [/avma4k] [/zcid] [/rtmr] [/duid] [/igpk] [/kmsc] [/ctpr] [/revl] [/prod] [/test] [<activation id>] [/ver <version override>]
Options:
/dump <filePath> (<encrFilePath>) Dump and decrypt the physical store to the specified path.
/load <filePath> Load and re-encrypt the physical store from the specified path.
/kms4k Activate using KMS4k. Only supports KMS-activatable editions.
/avma4k Activate using AVMA4k. Only supports Windows Server 2012 R2+.
/zcid Activate using ZeroCID. Only supports phone-activatable editions.
/rtmr Reset grace/evaluation period timers.
/rrmc Reset the rearm count.
/duid Delete product key Unique ID used in online key validation.
/igpk Install auto-generated/fake product key according to the specified Activation ID.
/kmsc Reset the charged count on the local KMS server to 25. Requires an activated KMS host.
/ctpr Clear the physical store tamper state.
/revl Remove the key change lock in evaluation edition store.
/prod Use SPP production key.
/test Use SPP test key.
/ver <version> Override the detected version. Available versions: vista, 7, 8early, 8, blue, modern.
<activation id> A specific activation ID. Useful if you want to activate specific addons like ESU.
/? Display this help message.
This tool manipulates data stored in a file known as the "physical store", which is used by Windows to store critical activation data, including expiry timers and the HWIDs bound to each license. Thanks to our reverse-engineering efforts, we are able to insert our own data into the physical store, allowing us to add custom activation data for any product managed by Windows' Software Protection Platform. The data in the physical store is also known as the "trusted store", leading to the name "TSforge".
TSforge offers the most advantages for activating older Windows versions, such as Windows 7 through 8.1, as it can permanently activate any edition of these versions without modifications to the boot process or Windows system executables. TSforge is also the only public activator capable of activating any Windows addon, making it useful for users who wish to activate ESU licenses. Additionally, TSforge is the only public activator to offer hardware-invariant activation without any persistent network connections, added services/tasks, or injected DLLs.
TLDR: You should only use TSforge if you are using an old Windows release or if you want to activate addons such as ESU to extend the support end date.
For Windows 10 and 11, it is recommended to use the HWID method to activate Windows. TSforge is both less reliable and lacks features that HWID offers, such as the ability to survive feature upgrades and complete OS reinstalls. For Windows 7 through 8.1, there are no notable downsides.
No, none of the methods presented here require connecting to the internet in order to function. Everything is done locally.
You can use the /igpk
switch in TSforge in order to install licenses by only using an Activation ID. You can get a list of all installable licenses and their Activation ID's by running slmgr /dlv all
. You can click into the popup window and press CTRL + C to copy all of the information. Once you have found your desired licenses' Activation ID, run /igpk
like so: TSforge.exe /igpk <activation id>
.
You can use the /igpk
and /zcid
options with the activation ID of the KMS Host SKU to be activated. You can then use the /kmsc
option with this activation ID to charge the KMS server with 25 clients. Please note that KMS servers will maintain their client counts for a maximum of 30 days.
Windows Vista contains a driver which holds a permanent handle to the physical store, even when SLSvc is stopped after initial startup. This prevents TSforge from writing new trusted store data while the system is booted. There are theoretical workarounds to this issue, but they require an extraordinary amount of bug-prone, specialized code specific to Vista. For these reasons, we do not plan to support Vista/Server 2008.
If generic keys are installed, you need to run TSforge.exe /duid
to remove the product key's unique ID. This will prevent WAT from verifying the key online. Installing a fake product key with TSforge.exe /igpk <activation id>
will have an equivalent effect. Alternatively, you can use a non-generic key to bypass this check, though many publicly available keys are blocked by WAT.
Windows doesn't support AVMA activation under VM software that fails to provide Hyper-V Enlightenments. This primarily means that AVMA4k is only supported on VMs running under a correctly configured QEMU instance or Hyper-V. If your VM's activation status is Notification
with the status code 0xC004FD01
after using AVMA4k, you will need to use another activation method.
Run Microsoft Activation Scripts, select Troubleshoot
> Fix Licensing
. This will reset the physical store and revert any changes made by TSforge.
Yes, albeit with some amount of difficulty.
Probably not. If they do, please tell us so we can laugh to ourselves like a bunch of lunatics for the rest of the week.
- Download .NET SDK 9.0.2
- Extract the contents of the downloaded archive to
C:\dotnet-sdk-9.0.200-win-x64
- Open command prompt in the directory where
TSforge.sln
can be found - Run
C:\dotnet-sdk-9.0.200-win-x64\dotnet.exe build -c Release TSforge.sln
- Built binaries can be found in
TSforgeCLI\bin\Release\net35
- WitherOrNot - Lead tool development, reverse engineering, testing
- asdcorp - Initial demonstrations, reverse engineering, tool development, testing
- abbodi1406 - Reverse engineering, development, testing
- Lyssa - Reverse engineering, tool development, testing
- SpCreatePackaedLicense - Tool development, testing
- May - Code formatting, build setup
- BetaWiki - Documenting leaked beta builds used for reverse engineering
- Rairii - Assistance with initial reverse engineering efforts
- Microsoft - A fun challenge
The project is licensed under the terms of the GNU General Public License v3.0.