数字激活原理

在Windows7/8升级到Windows 10过程中,是通过gatherosstate.exe 去验证系统是否是已经是激活的状态,同时,微软也会去验证系统的相关硬件,如果是激活状态,就会创建一个valid ticket(有效工单),然后发送给微软自己的激活服务器,完成激活授权。这个过程也同样适合Windows10升级到Windows10。通过欺骗gatherossstate.exe, 创建一个工单反馈给微软服务器,就能完成激活授权。 这就是数字激活欺骗的原理。

数字激活所需条件及解决方案

数字许可证会记录您的硬件设备信息,只要在CPU和主板设备没有更换的情况下就可以连接微软服务器自动永久性的激活系统,重新安装系统时无需再次输入产品密钥,安装后会自动永久激活。“数字权利激活”在不更换电脑硬件并且安装同一发行版的情况下一直有效,无论您安装的系统是正式版还是预览版。但是如果硬件改动较大,可能会导致数字激活失效。

相关官方介绍说明: https://support.microsoft.com/en-us/help/12440/windows-10-activate

Win10 digital active.png

支持的系统

目前支持大部分Win 10系统!

Windows 10 Cloud

Windows 10 Cloud (N)

Windows 10 Core (N)

Windows 10 Core Country Specific

Windows 10 Single Language

Windows 10 Core

Windows 10 Education

Windows 10 Education (N)

Windows 10 Enterprise

Windows 10 Enterprise (S)

Windows 10 EnterpriseS (N)

Windows 10 Professional

Windows 10 Professional (N)

Windows 10 Professional Education

Windows 10 Professional Education(N)

Windows 10 Professional Workstation

Windows 10 Professional Workstation(N)

Windows 10 LTSB 2015

Windows 10 LTSB 2016

激活方法

使用工具激活

云萌数字激活工具,界面挺漂亮的。

开源地址: https://github.com/TGSAN/CMWTAT_Digital_Edition/releases

下载地址: https://pan.baidu.com/s/1JveGn5vv8EJtHczi84w9Hw 提取码: 1ivp

特别提醒:

激活过程中,保持电脑联网,且开启Windows Update!避免使用梯子!

Windows Defender可能会提示软件有病毒。如果出现该情况,可以参考以下教程:干掉烦人的Windows Defender

手动激活

纯手动

1.从Windows 10的ISO镜像文件获取GatherOsState.exe

2.从 https://github.com/vyvojar/slshim/releases 获取slshim文件的最新版本

3.提取slshim32.dll(用于x86镜像中的GatherOsState.exe)或slshim64.dll(用于x64镜像中的GatherOsState.exe)

4.将GatherOsState.exe和提取的slshim文件放在同一目录中

5.将slshim dll重命名为slc.dll

6.开始导入注册表

6.1从以下列表中找到%SKU%的真实值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
edition=Cloud
sku=178

edition=CloudN
sku=179

edition=Core
sku=101

edition=CoreCountrySpecific
sku=99

edition=CoreN
sku=98

edition=CoreSingleLanguage
sku=100

edition=Education
sku=121

edition=EducationN
sku=122

edition=Enterprise
sku=4

edition=EnterpriseN
sku=27

edition=EnterpriseS
sku=125

edition=EnterpriseSN
sku=126

edition=Professional
sku=48

edition=ProfessionalEducation
sku=164

edition=ProfessionalEducationN
sku=165

edition=ProfessionalN
sku=49

edition=ProfessionalWorkstation
sku=161

edition=ProfessionalWorkstationN
sku=162

用所需的sku值替换以下的xxx。如果使用REG方式,请确保字符串长度为7位数,CMD将从上面获取数值。

1
2
3
4
reg add "HKLM\SYSTEM\Tokens" /v "Channel" /t REG_SZ /d "Retail" /f
reg add "HKLM\SYSTEM\Tokens\Kernel" /v "Kernel-ProductInfo" /t REG_DWORD /d XXX /f
reg add "HKLM\SYSTEM\Tokens\Kernel" /v "Security-SPP-GenuineLocalStatus" /t REG_DWORD /d 1 /f
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\gatherosstate.exe" /d "^ WIN7RTM" /f

确保以上CMD命令中,xxx已经被以上SKUID列表中显示的ID替换,并且将上面的C:\gatherosstate.exe调整为文件所在的实际路径

7.从product.ini安装默认零售/OEM密钥

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
professionalworkstationn=WYPNQ-8C467-V2W6J-TX4WX-WT2RQ

enterpriseneval=MNXKQ-WY2CT-JWBJ2-T68TQ-YBH2V

serverrdshCore=NJCF7-PW8QT-3324D-688JX-2YV66

serverstorageworkgroupeval=NXCTR-YXXWC-TK368-HGGTF-8YB99

onecoreupdateos=NFDPX-3MV8X-THC2X-QQ9QP-P9YY6

serverstandardeval=NYDJQ-4R94V-FT266-6VW8Q-977YG

serverdatacenterevalcorCore=8K9YK-NH86G-JR79G-8HX2P-9QCMD

ServerARM64Core=DP3NW-RXVQ6-79BFR-VBX83-TCQT8

educationn=84NGF-MHBT6-FXBX8-QWJK7-DRR8H

serverdatacentereval=RB6DF-NHDTR-46V9Y-J6JQG-BP3DR

enterpriseseval=JBGN9-T2MH3-2YV7W-WBWHM-FGFCG

serverdatacenterCore=K6KXM-9DNM4-B4V79-WH2WM-7MJVR

coresinglelanguage=BT79Q-G7N6G-PGBYW-4YWX6-6F4BT

professionalcountryspecific=HNGCC-Y38KG-QVK8D-WMWRK-X86VK

core=YTMG3-N6DKC-DKB77-7M9GH-8HVX7

serverdatacenterevalcor=8K9YK-NH86G-JR79G-8HX2P-9QCMD

serverhypercore=Q8R8C-T2W6H-7MGPB-4CQ9R-KR36H

analogonecore=RHDN4-9MKR3-G7WQM-9WKTY-RC28W

serverstandardcor=CTB8X-F3NDH-KWF36-KF87X-7XPMF

serverdatacentercorCore=WH32N-PKDPK-FW7FB-GR8G4-MWTBC

serverazurenano=9JQNQ-V8HQ6-PKB8H-GGHRY-R62H6

coren=4CPRK-NM3K3-X6XXQ-RXX86-WXCHW

starter=D6RD9-D4N8T-RT9QX-YW6YT-FCWWJ

professional=VK7JG-NPHTM-C97JM-9MPGT-3V66T

professionaln=2B87N-8KFHP-DKV6R-Y2C8J-PKCKT

serverstandardevalcor=3R2MY-N4RK2-DJFQV-XHF8P-BTFD6

CoreSystemServer=6DWFN-9DBPB-99W4C-XYWKQ-VXPFM

ServerARM64=DP3NW-RXVQ6-79BFR-VBX83-TCQT8

education=YNMGQ-8RYV3-4PGQ3-C8XTP-7CFBY

serverwebCore=PCPHN-JH4DV-KW84V-JTWT3-VXHBC

enterpriseeval=VPMWD-PVNRR-79WJ9-VVJQC-3YH2G

ProfessionalEducation=8PTT6-RNW4C-6V7J2-C2D3X-MHBPB

enterprisegn=FW7NV-4T673-HF4VX-9X4MM-B4H4T

enterpriseg=FV469-WGNG4-YQP66-2B2HY-KD8YX

serverweb=PCPHN-JH4DV-KW84V-JTWT3-VXHBC

serverrdsh=NJCF7-PW8QT-3324D-688JX-2YV66

serverdatacenternanoCore=BFM6D-TKNBY-X6RGR-PHJ4G-723B6

serverstandard=6DQBR-MN24F-GKG2G-WYFRD-YBJT4

serversolution=WHJMJ-NK3YX-HMXXW-4Y6J2-KW39J

ServerAzureCorCore=WNCYY-GFBH2-M4WTT-XQ2FP-PG2K9

serverdatacenteracorCore=VFNKW-XR3VK-9XQFX-X42YX-T84KX

serverstoragestandardCore=VN8D3-PR82H-DB6BJ-J9P4M-92F6J

enterprisesn=RW7WN-FMT44-KRGBK-G44WK-QV7YK

serverdatacenternano=BFM6D-TKNBY-X6RGR-PHJ4G-723B6

servercloudstorageCore=TY4N3-G47XF-FVPXJ-434DQ-63CGD

serverstandardacorCore=WNX64-WCH29-TMD2M-6RXGH-8HW68

serverstandardnano=69NHX-WQQ7G-QVBPG-4HPQP-8XDB7

ServerAzureCor=WNCYY-GFBH2-M4WTT-XQ2FP-PG2K9

serverstandardevalCore=NYDJQ-4R94V-FT266-6VW8Q-977YG

serverstorageworkgroupCore=48TQX-NVK3R-D8QR3-GTHHM-8FHXC

andromeda=C9PDN-TR2KB-MR4DF-3RQ7Y-88HFF

serversolutionCore=WHJMJ-NK3YX-HMXXW-4Y6J2-KW39J

serverstoragestandardeval=3HDCN-87G3V-FPCDF-C6HTB-79Q3X

professionaleducationn=GJTYN-HDMQY-FRR76-HVGC7-QPF8P

professionalworkstation=DXG7C-N36C4-C4HTG-X4T3X-2YV77

serverstoragestandardevalCore=3HDCN-87G3V-FPCDF-C6HTB-79Q3X

enterprises=NK96Y-D9CD8-W44CQ-R8YTK-DYJWX

IoTUAP=3PNGX-M88FX-8K4B3-2G86G-C9YHY

Enterprise=XGVPP-NMH47-7TTHJ-W3FW7-8HV2C

serverstandardevalcorCore=3R2MY-N4RK2-DJFQV-XHF8P-BTFD6

serverstorageworkgroup=48TQX-NVK3R-D8QR3-GTHHM-8FHXC

serverdatacenteracor=VFNKW-XR3VK-9XQFX-X42YX-T84KX

servercloudstorage=TY4N3-G47XF-FVPXJ-434DQ-63CGD

serverazurenanoCore=9JQNQ-V8HQ6-PKB8H-GGHRY-R62H6

serverstorageworkgroupevalCore=NXCTR-YXXWC-TK368-HGGTF-8YB99

serverstoragestandard=VN8D3-PR82H-DB6BJ-J9P4M-92F6J

serverdatacenter=K6KXM-9DNM4-B4V79-WH2WM-7MJVR

serverdatacenterevalCore=RB6DF-NHDTR-46V9Y-J6JQG-BP3DR

serverstandardacor=WNX64-WCH29-TMD2M-6RXGH-8HW68

serverstandardcorCore=CTB8X-F3NDH-KWF36-KF87X-7XPMF

enterprisen=WGGHN-J84D6-QYCPR-T7PJ7-X766F

enterprisesneval=7M88N-MTVMR-VC46G-4K4R6-KTQF7

StarterN=3NFXW-2T27M-2BDW6-4GHRV-68XRX

CoreCountrySpecific=N2434-X9D7W-8PF6X-8DV9T-8TYMD

serverstandardnanoCore=69NHX-WQQ7G-QVBPG-4HPQP-8XDB7

professionalsinglelanguage=G3KNM-CHG6T-R36X3-9QDG6-8M8K9

serverdatacentercor=WH32N-PKDPK-FW7FB-GR8G4-MWTBC

serverstandardCore=6DQBR-MN24F-GKG2G-WYFRD-YBJT4

(Tips:)

如果您用的是Enterprise N或LTSB 2016 N,请在管理员权限的的Powershell中使用以下命令:

1
2
3
4
5
::EnterpriseN
((Get-Content '.\gatherosstate.exe') -replace "`0" | Select-String -Pattern "(.....-){4}C372T" -AllMatches).Matches | Select-Object -ExpandProperty Value

::EnterpriseSN
((Get-Content '.\gatherosstate.exe') -replace "`0" | Select-String -Pattern "(.....-){4}VMJWR" -AllMatches).Matches | Select-Object -ExpandProperty Value

这些版本会从gatherosstate.exe中寻找并收集密钥 (Tips End)

8.运行Gatherosstate.exe。几秒钟后,您应该得到GenuineTicket.xml(门票文件)

9.(可选)从注册表中删除 HKEY_LOCAL_MACHINE\SYSTEM\Tokens 删除该注册表命令如下

1
2
reg delete "HKLM\SYSTEM\Tokens" /f
reg delete "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\gatherosstate.exe" /f

10.将创建的GenuineTicket.xml放在C盘的根目录下,并在管理员身份执行的CMD中运行以下命令:

1
clipup -v -o -altto c:\

11.然后使用以下命令强制激活:

1
cscript /nologo %windir%\system32\slmgr.vbs -ato

至此,手动数字许可证激活完成。

够麻烦吧?

那就来试试批处理方式。

批处理命令示例

以下为示例命令行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
color 1f

cls
cd /d "%~dp0"
ping /n 2 www.baidu.com >nul 2>nul && goto StartActive
ping /n 2 www.qq.com >nul 2>nul || exit

:StartActive
wmic path SoftwareLicensingProduct where (LicenseStatus='1' and GracePeriodRemaining='0') get Name 2>nul | findstr /i "Windows" >nul 2>&1 && (goto end)
for /f "tokens=6 delims=[]. " %%a in ('ver') do (set version=%%a)

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableLUA" /t REG_DWORD /d "0" /f >nul
for /f "tokens=3 delims= " %%i in ('cscript /nologo %SystemRoot%\System32\slmgr.vbs /dli ^| findstr /i "edition"') do (set edition=%%i)
call :%edition%

cscript /nologo %SystemRoot%\System32\slmgr.vbs /ipk %pidkey% || goto quit
timeout /nobreak /t 2 >nul

reg add "HKLM\SYSTEM\Tokens" /v "Channel" /t REG_SZ /d "%License%" /f >nul
reg add "HKLM\SYSTEM\Tokens\Kernel" /v "Kernel-ProductInfo" /t REG_DWORD /d "%sku%" /f >nul
reg add "HKLM\SYSTEM\Tokens\Kernel" /v "Security-SPP-GenuineLocalStatus" /t REG_DWORD /d "1" /f >nul
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "\"%~dp0bin\%ActiveType%\gatherosstate.exe"\" /d "^ WIN7RTM" /f >nul

if /i "%License:~-4%" equ "GVLK" (
set "ActiveType=KMS38"
) else (
set "ActiveType=Digital"
)

set "number=0"
:Reset
set /a "number=%number%+1"
start /wait "" ".\bin\%ActiveType%\gatherosstate.exe"
timeout /nobreak /t 3 >nul
if exist ".\bin\%ActiveType%\GenuineTicket.xml" (
goto app
)
if "%number%" lss "3" (
goto Reset
)
goto quit

:app
clipup -v -o -altto .\bin\%ActiveType%\

if /i "%License:~-4%" equ "GVLK" (
cscript /nologo %SystemRoot%\system32\slmgr.vbs /skms "127.0.0.1"
) else (
cscript /nologo %SystemRoot%\system32\slmgr.vbs /ato
)

:quit
reg delete "HKLM\SYSTEM\Tokens" /f >nul
reg delete "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "\"%~dp0bin\%ActiveType%\gatherosstate.exe"\" /f >nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableLUA" /t REG_DWORD /d "1" /f >nul

:end
rmdir /q /s "%SystemRoot%\Setup\Scripts\bin"
del %0
exit

:Cloud
if "%version%" equ "16299" (
set "sku=178"
set "pidkey=V3WVW-N2PV2-CGWC3-34QGF-VMJ2C"
set "License=Retail"
set "skus=Cloud"
goto :eof
) else (
goto end
)

:CloudN
if "%version%" equ "16299" (
set "sku=179"
set "pidkey=NH9J3-68WK7-6FB93-4K3DF-DJ4F6"
set "License=Retail"
set "skus=CloudN"
goto :eof
) else (
goto end
)

:Core
set "sku=101"
set "pidkey=YTMG3-N6DKC-DKB77-7M9GH-8HVX7"
set "License=Retail"
set "skus=Core"
goto :eof

:CoreN
set "sku=98"
set "pidkey=4CPRK-NM3K3-X6XXQ-RXX86-WXCHW"
set "License=Retail"
set "skus=CoreN"
goto :eof

:CoreCountrySpecific
set "sku=99"
set "pidkey=N2434-X9D7W-8PF6X-8DV9T-8TYMD"
set "License=Retail"
set "skus=CoreCountrySpecific"
goto :eof

:CoreSingleLanguage
set "sku=100"
set "pidkey=BT79Q-G7N6G-PGBYW-4YWX6-6F4BT"
set "License=Retail"
set "skus=CoreSingleLanguage"
goto :eof

:Professional
set "sku=48"
set "pidkey=VK7JG-NPHTM-C97JM-9MPGT-3V66T"
set "License=Retail"
set "skus=Professional"
goto :eof

:ProfessionalN
set "sku=49"
set "pidkey=2B87N-8KFHP-DKV6R-Y2C8J-PKCKT"
set "License=Retail"
set "skus=ProfessionalN"
goto :eof

:ProfessionalEducation
set "sku=164"
set "pidkey=8PTT6-RNW4C-6V7J2-C2D3X-MHBPB"
set "License=Retail"
set "skus=ProfessionalEducation"
goto :eof

:ProfessionalEducationN
set "sku=165"
set "pidkey=GJTYN-HDMQY-FRR76-HVGC7-QPF8P"
set "License=Retail"
set "skus=ProfessionalEducationN"
goto :eof

:ProfessionalWorkstation
set "sku=161"
set "pidkey=DXG7C-N36C4-C4HTG-X4T3X-2YV77"
set "License=Retail"
set "skus=ProfessionalWorkstation"
goto :eof

:ProfessionalWorkstationN
set "sku=162"
set "pidkey=WYPNQ-8C467-V2W6J-TX4WX-WT2RQ"
set "License=Retail"
set "skus=ProfessionalWorkstationN"
goto :eof

:Education
set "sku=121"
set "pidkey=YNMGQ-8RYV3-4PGQ3-C8XTP-7CFBY"
set "License=Retail"
set "skus=Education"
goto :eof

:EducationN
set "sku=122"
set "pidkey=84NGF-MHBT6-FXBX8-QWJK7-DRR8H"
set "License=Retail"
set "skus=EducationN"
goto :eof

:Enterprise
set "sku=4"
set "pidkey=XGVPP-NMH47-7TTHJ-W3FW7-8HV2C"
set "License=OEM:NONSLP"
set "skus=Enterprise"
goto :eof

:EnterpriseN
set "sku=27"
set "pidkey=YHMNQ-PPQW2-P8PGP-32643-C372T"
set "License=Volume:MAK"
set "skus=EnterpriseN"
goto :eof

:EnterpriseS
if "%version%" equ "17763" (
set "sku=125"
set "pidkey=M7XTQ-FN8P6-TTKYV-9D4CC-J462D"
set "License=Volume:GVLK"
set "skus=EnterpriseS"
goto :eof
)
if "%version%" geq "14393" (
if "%version%" leq "17134" (
set "sku=125"
set "pidkey=NK96Y-D9CD8-W44CQ-R8YTK-DYJWX"
set "License=Retail"
set "skus=EnterpriseS"
goto :eof
) else (
goto end
)
)

:EnterpriseSN
if "%version%" equ "17763" (
set "sku=126"
set "pidkey=92NFX-8DJQP-P6BBQ-THF9C-7CG2H"
set "License=Volume:GVLK"
set "skus=EnterpriseSN"
goto :eof
)
if "%version%" geq "14393" (
if "%version%" leq "17134" (
set "sku=126"
set "pidkey=C73T8-FNJRG-FTQWK-2JP2R-VMJWR"
set "License=Retail"
set "skus=EnterpriseSN"
goto :eof
) else (
goto end
)
)

:IoTEnterprise
if "%version%" geq "18362" (
set "sku=188"
set "pidkey=XQQYW-NFFMW-XJPBH-K8732-CKFFD"
set "License=OEM:NONSLP"
set "skus=IoTEnterprise"
goto :eof
) else (
goto end
)

:ServerRdsh
if "%version%" geq "17134" (
set "sku=175"
set "pidkey=NJCF7-PW8QT-3324D-688JX-2YV66"
set "License=Retail"
set "skus=ServerRdsh"
goto :eof
) else (
goto end
)

:ServerDatacenter
if "%version%" equ "17763" (
set "sku=8"
set "pidkey=WMDGN-G9PQG-XVVXX-R3X43-63DFG"
set "License=Volume:GVLK"
set "skus=ServerDatacenter"
goto :eof
) else if "%version%" equ "14393" (
set "sku=8"
set "pidkey=CB7KF-BWN84-R7R2Y-793K2-8XDDG"
set "License=Volume:GVLK"
set "skus=ServerDatacenter"
goto :eof
)
goto end

:ServerStandard
if "%version%" equ "17763" (
set "sku=7"
set "pidkey=N69G4-B89J2-4G8F4-WWYCC-J464C"
set "License=Volume:GVLK"
set "skus=ServerStandard"
goto :eof
) else if "%version%" equ "14393" (
set "sku=7"
set "pidkey=WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY"
set "License=Volume:GVLK"
set "skus=ServerStandard"
goto :eof
)
goto end

使用的话复制粘贴到记事本内保存文件格式为cmd(不是bat!!)之后右键管理员即可。

这个批处理需要实现提取手动部分说的那几个文件的,所以不能单独使用,仅供学习。

另外这种方法同样需要联网。

这种方法同样需要联网。

这种方法同样需要联网。

重要的事情说三遍。

/Author:Skrshadow,图片来自微软官网/

/2020.02.18/