Windows激活原理全揭秘

2019-11-15

【线上直播】11月21日晚8点贝壳技术总监侯圣文《数据安全之数据库安全黄金法则》

首先,我必须告诉大家,我个人是支持大家使用正版的。即使不使用正版,也应当尽量避免使用盗版。当然本文会尽量客观和全面的带大家了解一下现在Windows10, Windows7的激活方面的信息。

Win10+Win7

激活码

A.零售(Retail)

通过该渠道得到的所有激活码,可以无限重装,甚至转移到其他计算机(同一时间只能激活一台),通常显示为产品密钥激活。该渠道为严格意义上唯一的针对个人用户的正规渠道,其所出售的为所谓的正版零售Win10。

官方零售:包涵盒装(USB,DVD),数字版。以官方标定的价格出售,没有折扣。可以从微软应用商店,微软官网,或者微软门店购买到这个版本。

OEM零售:包涵盒装(USB,DVD),数字版。该渠道为微软授权并供货的第三方。理论上应以微软官方的建议零售价(原价)出售,但不一定。部分商家会以略低于原价的价格出售并标记为OEM版零售(实际上只是标上OEM,与不标的同样通过这类渠道激活码没有本质区别),当然在拿到原盒或者激活后,该渠道的激活码与微软官方出售的无异。比较典型的第三方如:Amazon,Newegg,CanadaComputers等等。

Windows激活原理全揭秘

盒装Win10

B.批发(俗称:OEM渠道——官称:批量激活Volume Activation)

其中KMS与ADA均由控制激活的主机进行认证,通常显示为组织的激活服务激活。而MAK与OEM-预装使用唯一硬件Hash,后者通常带有COA(Certificate of Authenticity),COA上印有属于该机器的产品密钥(ProductKey)。两者通常显示为,数字权利激活,据官方称应显示为产品密钥激活。

  1. KMS(Key Management Service):该版本通常服务于大中型企业。简单讲解原理:企业的大量计算机前面通常都有专门的DNS域名服务器负责控制网络,管理流量或者控制服务,或提供路由等服务。在服务器上部署微软官方提供的脚本并输入一个CSVLK密钥(Microsoft Customer Support Volume License Key),即可让服务器成为KMS主机,在于主机相同域名(局域网)下的所有计算机,均可被激活,激活周期最大值通常为180天。周期结束后,计算机会向服务器请求新的激活。
  2. MAK(Multiple Activation Key):该版本通常服务于中小型企业及部分计算机制造商。部署方法灵活多变,既可以通过KMS服务器将Client(需要被激活的计算机)转化成MAK激活,也可以在预安装环境(PE)或安装完成后的计算机部署(输入激活码)。使用MAK的部分中小计算机制造商或者企业只需要将微软提供的MAK激活码预置在PE或未完成最终安装的计算机里即可。
  3. 基于目录的动态激活(Active Directory-based Activation——以下简称ADA):该版本服务于小企业。方法非常类似于KMS。ADA需要在管理计算机激活的主计算机激活GVLK密钥(Generic Volume License Key——由微软提供),而其他与主计算机处于同一个安全组的计算机,如果处于主计算机的激活许可目录下,则可被激活,激活每180天更新一次。与KMS最大的区别是:1主计算机可以不是一台服务器,2KMS只能激活25台以上的计算机,ADA则不受此限制。
  4. OEM-预安装Windows:大部分比较正规的计算机制造商都使用该方法激活,特点是有个COA贴片,其中含有产品密钥。Win8开始,该产品密钥与计算机的唯一硬件Hash所绑定,如果未登录微软账户,重装时需要输入COA所提供的产品密钥,如果之前登陆过,只需要重新登录账户。Win8之前,COA上的激活码实际上是个未激活的OEM激活码,以备计算机原先的激活在重装后失效;这也是为什么以前会有人跑去偷拍这种激活码。(相关的具体内容请往下看)
Windows激活原理全揭秘

COA Label

Crack

A.KMS原理的KMSpico:该软件最早由Github用户charygao于2016年所编写,最新也是最后一个版本于同年6月发布,为V10.2.0,用于以KMS虚拟服务的方式激活本地的Windows,时效为180天,因为加入了AutoKMS的脚本得以实现每180天的自动激活,也就是所谓的永久激活。

根据作者提供的信息,该软件基于多个作者提供的KMS Emulator(KMS仿真器)源代码,所开发。软件的Hash如下。

File:KMSpico_setup.exe

Size:3,08 MB

CRC32:683a3351

MD5:a02164371a50c5ff9fa2870ef6e8cfa3

SHA1:060614723f8375ecaad8b249ff07e3be082d7f25

该软件从1709前后的版本开始被Defender报毒,360不报毒。而由于在各类其他网站上流传的各类版本,本软件除GitHub的原版,其他来源的版本,可能被修改或添加木马病毒。

PS:对于旗舰版Ultimate则不支持KMS激活方式,仅家庭版Home和专业版Professional支持KMS激活。

Windows激活原理全揭秘

KMSpico

B.SLIC/SLP原理的小马激活器:SLIC(System License Internal Code),SLP(System Locked Preinstallation),简单概括一下吧,小马激活器通过在Win7启动前载入伪造的SLIC文件,让Win7以为自己是SLP激活的方式而被激活的,而SLP激活是唯一能绕开联网或电话激活的方式。

为了便于大家理解,简单解释一下SLP,SLP是一种激活技术而SLIC是这个技术的关键文件,SLP激活码由微软向电脑制造商提供,其包涵对应品牌的机的Hash,而SLIC文件既是记录些信息的文件,也是系统检测自己激活状态的文件。在开机时会读取这个文件。PS1:在新版的SLP3.0(Win8及以后版本)加入了唯一硬件Hash,而且强制联网激活所以SLIC激活方式不再有效(因为微软有你的Hash,后面会详解),其次SLP激活码也不再被使用。而且大部分后面的机器都用UEFI。根本不用SLP。

至于该软件的最初来源于下载方式不详。

Windows激活原理全揭秘

小马激活工具

显示信息与重装

微软采集的信息

微软在每次激活时都会采集用户系统的一些信息,信息如下:

Windows激活原理全揭秘

激活采集的信息

显示信息

关于显示的激活形式基本分为以下三种,数字许可证,产品密钥,组织的激活服务。微软本身在官方解答里也放了表格以解释。如下图。当然,实际显示的情况,并不一定。部分Retail的产品密钥也会显示为数字许可证激活。MAK通道的通常在激活后也会显示为数字许可证激活。

Windows激活原理全揭秘

微软官方对激活模式信息的解释

查看自己的版本

至于如何查看自己的激活码通道和版本只需在CMD里面使用slmgr -dlv命令即可查询,如下图。

Windows激活原理全揭秘

输入slmgr -div

Windows激活原理全揭秘

输入后的提示窗(PS:部分产品密钥是默认密钥与实际密钥无关)

关于重装

这是本文最复杂的内容,而我自己也没有完全找到相关可靠的信息来证明以下的全部观点。微软官方也没有给出具体精准的答复。旧版产品密钥的对应关系:家庭版→家庭版;专业版,旗舰版→专业版。MAK则对应相对的Win10MAK版本。由于所有版本的激活微软都会采集用户的硬件唯一Hash,所以部分重装可能不会要求输入密钥激活。

  1. 关于零售Retail产品密钥:从Win7到Win10的密钥应该都可以无限次数重装Win10(请仔细阅读这句话),当然一次只能激活一台电脑,除非上一台电脑已经变成非激活状态(重装)。也有人称,Win10以前的零售激活码都只能重装一次,但从我个人对Win7的激活码测试看来,应该是可以无限重新激活的。如果绑定了账户,一般重新登录即可,如果重新登录无效可以根据以下微软官方的解答解决。
  2. 关于MAK产品密钥:任何版本的MAK理论上都不支持重装,当然在一个密钥仍然有量的情况下,你可以通过再次输入密钥,消耗一个数量来再次激活。但不排除,一种说法是,会变成数字许可,如果绑定了微软账户重新登录即可。
  3. KMS版的激活:如果是正版的KMS当然自动激活。非正版的不用我解释了吧。
  4. 关于使用SLP3.0之前版本的系统,Win7及以前的版本:如果你的电脑本来带SLP正版激活,那你重装Win7通常是不需要二次激活的。但如果你需要升级,你把MBR+BIOS变成了GPT+UEFI方式那,你的就得输入新的激活码。
Windows激活原理全揭秘