Last active
May 4, 2025 17:46
-
-
Save WitherOrNot/c34c4c7b893e89ab849ce04e007d89a9 to your computer and use it in GitHub Desktop.
Terminal Services License Server ID + License Key Pack generator
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from Crypto.Cipher import ARC4 | |
from hashlib import sha1, md5 | |
from random import randint | |
from ecutils.core import Point, EllipticCurve | |
from sys import argv | |
KCHARS = "BCDFGHJKMPQRTVWXY2346789" | |
SPK_ECKEY = { | |
"a": 1, | |
"b": 0, | |
"g": { | |
"x": 10692194187797070010417373067833672857716423048889432566885309624149667762706899929433420143814127803064297378514651, | |
"y": 14587399915883137990539191966406864676102477026583239850923355829082059124877792299572208431243410905713755917185109 | |
}, | |
"n": 629063109922370885449, | |
"p": 21782971228112002125810473336838725345308036616026120243639513697227789232461459408261967852943809534324870610618161, | |
"priv": 153862071918555979944, | |
"pub": { | |
"x": 3917395608307488535457389605368226854270150445881753750395461980792533894109091921400661704941484971683063487980768, | |
"y": 8858262671783403684463979458475735219807686373661776500155868309933327116988404547349319879900761946444470688332645 | |
} | |
} | |
LKP_ECKEY = { | |
"a": 1, | |
"b": 0, | |
"g": { | |
"x": 18999816458520350299014628291870504329073391058325678653840191278128672378485029664052827205905352913351648904170809, | |
"y": 7233699725243644729688547165924232430035643592445942846958231777803539836627943189850381859836033366776176689124317 | |
}, | |
"n": 675048016158598417213, | |
"p": 28688293616765795404141427476803815352899912533728694325464374376776313457785622361119232589082131818578591461837297, | |
"priv": 100266970209474387075, | |
"pub": { | |
"x": 7147768390112741602848314103078506234267895391544114241891627778383312460777957307647946308927283757886117119137500, | |
"y": 20525272195909974311677173484301099561025532568381820845650748498800315498040161314197178524020516408371544778243934 | |
} | |
} | |
def encode_pkey(n): | |
out = "" | |
while n > 0: | |
out = KCHARS[n % 24] + out | |
n //= 24 | |
out = "-".join([out[i:i+5] for i in range(0, len(out), 5)]) | |
return out | |
def decode_pkey(k): | |
k = k.replace("-", "") | |
out = 0 | |
for c in k: | |
out *= 24 | |
out += KCHARS.index(c) | |
return out | |
def int_to_bytes(n, l=None): | |
n = int(n) | |
if not l: | |
l = (n.bit_length() + 7) // 8 | |
return n.to_bytes(l, byteorder="little") | |
def make_curve(curve_def): | |
G = Point(x=curve_def["g"]["x"], y=curve_def["g"]["y"]) | |
K = Point(x=curve_def["pub"]["x"], y=curve_def["pub"]["y"]) | |
E = EllipticCurve(p=curve_def["p"], a=curve_def["a"], b=curve_def["b"], G=G, n=curve_def["n"], h=1) | |
return E, G, K | |
def get_spkid(pid): | |
spkid_s = pid[10:16] + pid[18:23] | |
return int(spkid_s.split("-")[0]) | |
def validate_tskey(pid, tskey, is_spk=True): | |
keydata = decode_pkey(tskey).to_bytes(21, "little") | |
rk = md5(pid.encode("utf-16-le")).digest()[:5] + b"\x00" * 11 | |
c = ARC4.new(rk) | |
dc_kdata = c.decrypt(keydata) | |
keydata = dc_kdata[:7] | |
sigdata = int.from_bytes(dc_kdata[7:], "little") | |
h = sigdata & 0x7ffffffff | |
s = (sigdata >> 35) & 0x1fffffffffffffffff | |
params = SPK_ECKEY if is_spk else LKP_ECKEY | |
E, G, K = make_curve(params) | |
R = E.add_points(E.multiply_point(h, K), E.multiply_point(s, G)) | |
md = sha1(keydata + int_to_bytes(R.x, 48) + int_to_bytes(R.y, 48)).digest() | |
ht = ((int.from_bytes(md[4:8], "little") >> 29) << 32) | (int.from_bytes(md[:4], "little")) | |
spkid = int.from_bytes(keydata, "little") & 0x1FFFFFFFFF | |
return h == ht and (not is_spk or spkid == get_spkid(pid)) | |
def generate_tskey(pid, keydata, is_spk=True): | |
params = SPK_ECKEY if is_spk else LKP_ECKEY | |
priv = SPK_ECKEY["priv"] if is_spk else LKP_ECKEY["priv"] | |
E, G, K = make_curve(params) | |
s = 0 | |
while True: | |
c = randint(1, E.n - 1) | |
R = E.multiply_point(c, G) | |
md = sha1(keydata + int_to_bytes(R.x, 48) + int_to_bytes(R.y, 48)).digest() | |
h = ((int.from_bytes(md[4:8], "little") >> 29) << 32) | (int.from_bytes(md[:4], "little")) | |
s = ((-priv * h + c) % E.n) & 0x1fffffffffffffffff | |
keyinf = int.from_bytes(keydata, "little") | |
pkdata = ((s << 91) | (h << 56) | keyinf).to_bytes(21, "little") | |
rk = md5(pid.encode("utf-16-le")).digest()[:5] + b"\x00" * 11 | |
c = ARC4.new(rk) | |
pke = c.encrypt(pkdata)[:20] | |
pk = int.from_bytes(pke, "little") | |
pkstr = encode_pkey(pk) | |
if s < 0x1fffffffffffffff and validate_tskey(pid, pkstr, is_spk): | |
return pkstr | |
def generate_spk(pid): | |
spkid = get_spkid(pid) | |
spkdata = spkid.to_bytes(7, "little") | |
return generate_tskey(pid, spkdata) | |
def generate_lkp(pid, count, major_ver, minor_ver, chid): | |
version = 1 | |
if (major_ver == 5 and minor_ver > 0) or major_ver > 5: | |
version = (major_ver << 3) | minor_ver | |
lkpinfo = (chid << 46) | (count << 32) | (2 << 18) | (144 << 10) | (version << 3) | |
lkpdata = lkpinfo.to_bytes(7, "little") | |
return generate_tskey(pid, lkpdata, False) | |
if __name__ == "__main__": | |
if len(argv) == 2: | |
pid = argv[1] | |
print(f"License Server ID: {generate_spk(pid)}") | |
elif len(argv) == 5: | |
pid = argv[1] | |
count = int(argv[2]) | |
ver_major, ver_minor = map(int, argv[3].split(".")) | |
chid = int(argv[4]) | |
print(f"License Key Pack ID: {generate_lkp(pid, count, ver_major, ver_minor, chid)}") | |
else: | |
print(f"Usage: {argv[0]} <pid> [<count> <version> <chid>]") | |
print(f"Example: {argv[0]} 00490-92005-99454-AT527 1234 10.3 32") |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<TlsBrandingVersions> | |
<!-- Array of OSVersionStr objects from lsdata.h --> | |
<OSVersions> | |
<OSVersion OSVersionID="0x50000" OSVerResourceID="40001" FeatureMask="0">WIN_2000_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_W2K</OSVersion> | |
<OSVersion OSVersionID="0x50002" OSVerResourceID="40002" FeatureMask="0">WIN_2003_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_W2K3</OSVersion> | |
<OSVersion OSVersionID="0x60000" OSVerResourceID="40003" FeatureMask="0">WIN_2008_OS_VERSION, IDS_LICBRAND_OS_VERSION_W2K8</OSVersion> | |
<OSVersion OSVersionID="0x60001" OSVerResourceID="40007" FeatureMask="0">WIN_2008_R2_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_W2K8R2</OSVersion> | |
<OSVersion OSVersionID="0x60002" OSVerResourceID="40008" FeatureMask="0">WIND8WS_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_WIN8</OSVersion> | |
<OSVersion OSVersionID="0x60003" OSVerResourceID="40009" FeatureMask="0">WIND8WS_R2_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_WIN8R2</OSVersion> | |
<OSVersion OSVersionID="0xA0000" OSVerResourceID="40010" FeatureMask="0">WIN_THRESHOLD_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_THRESHOLD</OSVersion> | |
<OSVersion OSVersionID="0xA0001" OSVerResourceID="40011" FeatureMask="15">WIN_2019_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_2019</OSVersion> | |
<OSVersion OSVersionID="0xA0002" OSVerResourceID="40012" FeatureMask="16">WIN_2022_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_2022</OSVersion> | |
<OSVersion OSVersionID="0xA0003" OSVerResourceID="40013" FeatureMask="16">WIN_2025_OS_VERSION, IDS_LICBRAND_CAL_OS_VERSION_2025</OSVersion> | |
</OSVersions> | |
<!-- Array of OSVersionToCalVersion objects from lsdata.h --> | |
<OSToCALVersions> | |
<OSToCALVersion OSVersionID="0x60001" CALVersionID="0x60000">CAL versions are same for both 2K8 and 2K8R2</OSToCALVersion> | |
<OSToCALVersion OSVersionID="0x60003" CALVersionID="0x60002">CAL versions are same for both 2K12 and 2K12R2</OSToCALVersion> | |
</OSToCALVersions> | |
<!-- Array of WMIProductVersion objects from lsdata.h --> | |
<WMIProductVersions> | |
<WMIProductVersion WMIVersionID="0" WMICALVersion="0x50000" WMICALVerResourceID="40001">WIN_2000_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_W2K</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="1" WMICALVersion="0x50002" WMICALVerResourceID="40002">WIN_2003_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_W2K3</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="2" WMICALVersion="0x60000" WMICALVerResourceID="40006">WIN_2008_AND_R2_CAL_VERSION, IDS_LICBRAND_CAL_VERSION_W2K8_W2K8R2</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="4" WMICALVersion="0x60002" WMICALVerResourceID="40008">WIND8WS_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_WIN8</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="5" WMICALVersion="0xA0000" WMICALVerResourceID="40010">WIN_THRESHOLD_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_THRESHOLD</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="6" WMICALVersion="0xA0001" WMICALVerResourceID="40011">WIN_2019_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_2019</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="7" WMICALVersion="0xA0002" WMICALVerResourceID="40012">WIN_2022_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_2022</WMIProductVersion> | |
<WMIProductVersion WMIVersionID="8" WMICALVersion="0xA0003" WMICALVerResourceID="40013">WIN_2025_CAL_VERSION, IDS_LICBRAND_CAL_OS_VERSION_2025</WMIProductVersion> | |
</WMIProductVersions> | |
<!-- Array of WMIProductType objects from lsdata.h --> | |
<WMIProductTypes> | |
<WMIProductType WMIProductID="0" CALModel="A02" CALType="S">PER_DEVICE_ENF_MODEL, TERMSERV_TS_TYPE</WMIProductType> | |
<WMIProductType WMIProductID="1" CALModel="C50" CALType="S">PER_USER_ENF_MODEL, TERMSERV_TS_TYPE</WMIProductType> | |
<WMIProductType WMIProductID="2" CALModel="B96" CALType="I">EXTERNAL_CONN_ENF_MODEL, TERMSERV_INTERNET_TYPE</WMIProductType> | |
<WMIProductType WMIProductID="3" CALModel="A02" CALType="EX">PER_DEVICE_ENF_MODEL, TERMSERV_FREE_TYPE</WMIProductType> | |
<WMIProductType WMIProductID="4" CALModel="A02" CALType="VDI">PER_DEVICE_ENF_MODEL, TERMSERV_VDI_TYPE</WMIProductType> | |
<WMIProductType WMIProductID="5" CALModel="A02" CALType="VDIP">PER_DEVICE_ENF_MODEL, TERMSERV_VDIP_TYPE</WMIProductType> | |
<WMIProductType WMIProductID="6" CALModel="A02" CALType="VDIS">PER_DEVICE_ENF_MODEL, TERMSERV_VDI_SUITE_TYPE</WMIProductType> | |
</WMIProductTypes> | |
<!-- Array of CALInstance objects from lsdata.h --> | |
<CALInstances> | |
<!-- WIN 2K CAL Instances --> | |
<CALInstance CHID="EX-001" CALVersion="0x50000" CALModel="A02" CALType="EX" CompanyNameResourceID="40005" PlatformID="2" CALStrShortResID="60000" CALStrLongResID="60100" CALVerStrResID="40001" CALInstaceDescResID="60200" CALImportDescResID="60200" MinSupportedLSVersion="0x50000" CALSupportFlags="4"/> | |
<CALInstance CHID="001" CALVersion="0x50000" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60001" CALStrLongResID="60101" CALVerStrResID="40001" CALInstaceDescResID="60201" CALImportDescResID="60201" MinSupportedLSVersion="0x50000" CALSupportFlags="4"/> | |
<CALInstance CHID="002" CALVersion="0x50000" CALModel="B96" CALType="I" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60002" CALStrLongResID="60102" CALVerStrResID="40001" CALInstaceDescResID="60202" CALImportDescResID="60202" MinSupportedLSVersion="0x50000" CALSupportFlags="4"/> | |
<!-- WIN 2K3 CAL Instances --> | |
<CALInstance CHID="003" CALVersion="0x50002" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60003" CALStrLongResID="60103" CALVerStrResID="40002" CALInstaceDescResID="60203" CALImportDescResID="60400" MinSupportedLSVersion="0x50002" CALSupportFlags="8"/> | |
<CALInstance CHID="004" CALVersion="0x50002" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60001" CALStrLongResID="60101" CALVerStrResID="40002" CALInstaceDescResID="60204" CALImportDescResID="60401" MinSupportedLSVersion="0x50002" CALSupportFlags="8"/> | |
<!-- WIN 2K8 and 2K8R2 CAL Instances --> | |
<CALInstance CHID="005" CALVersion="0x60000" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60004" CALStrLongResID="60104" CALVerStrResID="40006" CALInstaceDescResID="60205" CALImportDescResID="60402" MinSupportedLSVersion="0x60000" CALSupportFlags="32"/> | |
<CALInstance CHID="006" CALVersion="0x60000" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60005" CALStrLongResID="60105" CALVerStrResID="40006" CALInstaceDescResID="60206" CALImportDescResID="60403" MinSupportedLSVersion="0x60000" CALSupportFlags="32"/> | |
<CALInstance CHID="009" CALVersion="0x60000" CALModel="A02" CALType="VDI" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60006" CALStrLongResID="60106" CALVerStrResID="40007" CALInstaceDescResID="60207" CALImportDescResID="60404" MinSupportedLSVersion="0x60001" CALSupportFlags="256"/> | |
<CALInstance CHID="010" CALVersion="0x60000" CALModel="A02" CALType="VDIP" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60007" CALStrLongResID="60107" CALVerStrResID="40007" CALInstaceDescResID="60208" CALImportDescResID="60405" MinSupportedLSVersion="0x60001" CALSupportFlags="256"/> | |
<CALInstance CHID="016" CALVersion="0x60000" CALModel="A02" CALType="VDIS" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60010" CALStrLongResID="60110" CALVerStrResID="40007" CALInstaceDescResID="60207" CALImportDescResID="60404" MinSupportedLSVersion="0x60001" CALSupportFlags="0"/> | |
<!-- WIN 2K12 and 2K12R2 CAL Instances --> | |
<CALInstance CHID="011" CALVersion="0x60002" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60008" CALStrLongResID="60108" CALVerStrResID="40008" CALInstaceDescResID="60209" CALImportDescResID="60406" MinSupportedLSVersion="0x60002" CALSupportFlags="0"/> | |
<CALInstance CHID="012" CALVersion="0x60002" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60009" CALStrLongResID="60109" CALVerStrResID="40008" CALInstaceDescResID="60210" CALImportDescResID="60407" MinSupportedLSVersion="0x60002" CALSupportFlags="0"/> | |
<CALInstance CHID="015" CALVersion="0x60002" CALModel="A02" CALType="VDIS" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60010" CALStrLongResID="60110" CALVerStrResID="40008" CALInstaceDescResID="60211" CALImportDescResID="60408" MinSupportedLSVersion="0x60002" CALSupportFlags="0"/> | |
<!-- WIN 2K16 CAL Instances --> | |
<CALInstance CHID="020" CALVersion="0xA0000" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60008" CALStrLongResID="60108" CALVerStrResID="40010" CALInstaceDescResID="60215" CALImportDescResID="60415" MinSupportedLSVersion="0xA0000" CALSupportFlags="0"/> | |
<CALInstance CHID="021" CALVersion="0xA0000" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60009" CALStrLongResID="60109" CALVerStrResID="40010" CALInstaceDescResID="60216" CALImportDescResID="60416" MinSupportedLSVersion="0xA0000" CALSupportFlags="0"/> | |
<CALInstance CHID="022" CALVersion="0xA0000" CALModel="A02" CALType="VDIS" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60010" CALStrLongResID="60110" CALVerStrResID="40010" CALInstaceDescResID="60217" CALImportDescResID="60417" MinSupportedLSVersion="0xA0000" CALSupportFlags="0"/> | |
<!-- WIN 2K19 CAL Instances --> | |
<CALInstance CHID="026" CALVersion="0xA0001" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60008" CALStrLongResID="60108" CALVerStrResID="40011" CALInstaceDescResID="60220" CALImportDescResID="60420" MinSupportedLSVersion="0xA0001" CALSupportFlags="0"/> | |
<CALInstance CHID="027" CALVersion="0xA0001" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60009" CALStrLongResID="60109" CALVerStrResID="40011" CALInstaceDescResID="60221" CALImportDescResID="60421" MinSupportedLSVersion="0xA0001" CALSupportFlags="0"/> | |
<CALInstance CHID="028" CALVersion="0xA0001" CALModel="A02" CALType="VDIS" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60010" CALStrLongResID="60110" CALVerStrResID="40011" CALInstaceDescResID="60222" CALImportDescResID="60422" MinSupportedLSVersion="0xA0001" CALSupportFlags="0"/> | |
<!-- WIN 2K21 CAL Instances --> | |
<CALInstance CHID="029" CALVersion="0xA0002" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60008" CALStrLongResID="60108" CALVerStrResID="40012" CALInstaceDescResID="60223" CALImportDescResID="60423" MinSupportedLSVersion="0xA0002" CALSupportFlags="0"/> | |
<CALInstance CHID="030" CALVersion="0xA0002" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60009" CALStrLongResID="60109" CALVerStrResID="40012" CALInstaceDescResID="60224" CALImportDescResID="60424" MinSupportedLSVersion="0xA0002" CALSupportFlags="0"/> | |
<CALInstance CHID="031" CALVersion="0xA0002" CALModel="A02" CALType="VDIS" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60010" CALStrLongResID="60110" CALVerStrResID="40012" CALInstaceDescResID="60225" CALImportDescResID="60425" MinSupportedLSVersion="0xA0002" CALSupportFlags="0"/> | |
<!-- WIN 2K25 CAL Instances --> | |
<CALInstance CHID="032" CALVersion="0xA0003" CALModel="A02" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60008" CALStrLongResID="60108" CALVerStrResID="40013" CALInstaceDescResID="60226" CALImportDescResID="60426" MinSupportedLSVersion="0xA0003" CALSupportFlags="0"/> | |
<CALInstance CHID="033" CALVersion="0xA0003" CALModel="C50" CALType="S" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60009" CALStrLongResID="60109" CALVerStrResID="40013" CALInstaceDescResID="60227" CALImportDescResID="60427" MinSupportedLSVersion="0xA0003" CALSupportFlags="0"/> | |
<CALInstance CHID="034" CALVersion="0xA0003" CALModel="A02" CALType="VDIS" CompanyNameResourceID="40005" PlatformID="0xFF" CALStrShortResID="60010" CALStrLongResID="60110" CALVerStrResID="40013" CALInstaceDescResID="60228" CALImportDescResID="60428" MinSupportedLSVersion="0xA0003" CALSupportFlags="0"/> | |
</CALInstances> | |
<!-- Array of RetailCALGroupIDs objects from lsdata.h --> | |
<RetailCALGroups> | |
<RetailCALGroup CHID="012" NoOfCALs="1" GroupId="1759"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="1" GroupId="1760"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="1" GroupId="1761"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 1 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="1" GroupId="1762"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 1 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="5" GroupId="1763"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="5" GroupId="1764"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="5" GroupId="1765"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 5 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="5" GroupId="1766"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 5 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="20" GroupId="1767"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 20 User </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="20" GroupId="1768"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 20 Device </RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="20" GroupId="1769"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 20 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="20" GroupId="1770"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 20 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="10" GroupId="1771"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 10 User MAPS </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="10" GroupId="1772"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 10 Device MAPS</RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="25" GroupId="1773"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 25 User MPN </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="25" GroupId="1774"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 25 Device MPN</RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="50" GroupId="1775"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 50 User MPN </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="50" GroupId="1776"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 50 Device MPN</RetailCALGroup> | |
<RetailCALGroup CHID="012" NoOfCALs="50" GroupId="1902"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 50 User MSDN </RetailCALGroup> | |
<RetailCALGroup CHID="011" NoOfCALs="50" GroupId="1903"> Win Rmt Dsktp Svcs CAL 2012 RTM ServerStandard 50 Device MSDN</RetailCALGroup> | |
<!-- Server 2016 Per-User Retail CAL's --> | |
<RetailCALGroup CHID="021" NoOfCALs="1" GroupId="3809"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="1" GroupId="3810"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 1 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="5" GroupId="3811"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="5" GroupId="3812"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 5 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="20" GroupId="3813"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 20 User </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="20" GroupId="3814"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 20 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="10" GroupId="3815"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 10 User MAPS </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="25" GroupId="3816"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 25 User MPN </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="50" GroupId="3817"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 50 User MPN </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="50" GroupId="3818"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 50 User MSDN </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="10" GroupId="3819"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 10 User OEM </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="50" GroupId="3820"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 50 User OEM </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="100" GroupId="3821"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 100 User OEM </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="500" GroupId="3822"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 500 User CSP </RetailCALGroup> | |
<RetailCALGroup CHID="021" NoOfCALs="1000" GroupId="3823"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 1000 User IUO</RetailCALGroup> | |
<!-- Server 2016 Per-Device Retail CAL's --> | |
<RetailCALGroup CHID="020" NoOfCALs="1" GroupId="3824"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="1" GroupId="3825"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 1 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="5" GroupId="3826"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="5" GroupId="3827"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 5 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="20" GroupId="3828"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 20 Device </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="20" GroupId="3829"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 20 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="10" GroupId="3830"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 10 Device MAPS </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="25" GroupId="3831"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 25 Device MPN </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="50" GroupId="3832"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 50 Device MPN </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="50" GroupId="3833"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 50 Device MSDN </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="10" GroupId="3834"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 10 Device OEM </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="50" GroupId="3835"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 50 Device OEM </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="100" GroupId="3836"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 100 Device OEM </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="500" GroupId="3837"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 500 Device CSP </RetailCALGroup> | |
<RetailCALGroup CHID="020" NoOfCALs="1000" GroupId="3838"> Win Rmt Dsktp Svcs CAL 2016 RTM ServerStandard 1000 Device IUO </RetailCALGroup> | |
<!-- Server 2019 Per-User Retail CAL's --> | |
<RetailCALGroup CHID="027" NoOfCALs="1" GroupId="4260"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="1" GroupId="4261"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 1 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="5" GroupId="4262"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="5" GroupId="4263"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 5 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="20" GroupId="4264"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 20 User </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="20" GroupId="4265"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 20 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="10" GroupId="4266"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 10 User MAPS </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="25" GroupId="4267"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 25 User MPN </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="50" GroupId="4268"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 50 User MPN </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="50" GroupId="4269"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 50 User MSDN </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="10" GroupId="4270"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 10 User OEM </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="50" GroupId="4271"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 50 User OEM </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="100" GroupId="4272"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 100 User OEM </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="500" GroupId="4273"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 500 User CSP </RetailCALGroup> | |
<RetailCALGroup CHID="027" NoOfCALs="1000" GroupId="4274"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 1000 User IUO</RetailCALGroup> | |
<!-- Server 2019 Per-Device Retail CAL's --> | |
<RetailCALGroup CHID="026" NoOfCALs="1" GroupId="4275"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="1" GroupId="4276"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 1 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="5" GroupId="4277"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="5" GroupId="4278"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 5 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="20" GroupId="4279"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 20 Device </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="20" GroupId="4280"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 20 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="10" GroupId="4281"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 10 Device MAPS </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="25" GroupId="4282"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 25 Device MPN </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="50" GroupId="4283"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 50 Device MPN </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="50" GroupId="4284"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 50 Device MSDN </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="10" GroupId="4285"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 10 Device OEM </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="50" GroupId="4286"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 50 Device OEM </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="100" GroupId="4287"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 100 Device OEM </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="500" GroupId="4288"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 500 Device CSP </RetailCALGroup> | |
<RetailCALGroup CHID="026" NoOfCALs="1000" GroupId="4289"> Win Rmt Dsktp Svcs CAL 2019 RTM ServerStandard 1000 Device IUO </RetailCALGroup> | |
<!-- Server 2022 Per-User Retail CAL's --> | |
<RetailCALGroup CHID="030" NoOfCALs="1" GroupId="4486">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="1" GroupId="4487">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="1" GroupId="4488">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 1 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="5" GroupId="4489">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="5" GroupId="4490">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="5" GroupId="4491">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 5 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="20" GroupId="4492">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 20 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="20" GroupId="4493">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 20 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="10" GroupId="4494">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MAPS 10 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="25" GroupId="4495">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MPN 25 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="50" GroupId="4496">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MPN 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="50" GroupId="4497">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MSDN 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="10" GroupId="4498">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 10 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="10" GroupId="4499">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 10 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="50" GroupId="4500">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="50" GroupId="4501">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="100" GroupId="4502">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 100 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="100" GroupId="4503">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 100 User </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="500" GroupId="4504">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 500 User CSP </RetailCALGroup> | |
<RetailCALGroup CHID="030" NoOfCALs="1000" GroupId="4505">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail Internal Use Only 1000 User </RetailCALGroup> | |
<!-- Server 2022 Per-Device Retail CAL's --> | |
<RetailCALGroup CHID="029" NoOfCALs="1" GroupId="4506">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="1" GroupId="4507">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="1" GroupId="4508">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 1 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="5" GroupId="4509">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="5" GroupId="4510">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="5" GroupId="4511">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 5 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="20" GroupId="4512">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 20 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="20" GroupId="4513">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 20 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="10" GroupId="4514">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MAPS 10 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="25" GroupId="4515">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MPN 25 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="50" GroupId="4516">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MPN 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="50" GroupId="4517">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail MSDN 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="10" GroupId="4518">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 10 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="10" GroupId="4519">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 10 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="50" GroupId="4520">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="50" GroupId="4521">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="100" GroupId="4522">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 100 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="100" GroupId="4523">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail OEM 100 Device </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="500" GroupId="4524">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail 500 Device CSP </RetailCALGroup> | |
<RetailCALGroup CHID="029" NoOfCALs="1000" GroupId="4525">Win Rmt Dsktp Svcs CAL 2022 RTM ServerStandard Retail Internal Use Only 1000 Device </RetailCALGroup> | |
<!-- Server 2025 Per-User Retail CAL's --> | |
<RetailCALGroup CHID="033" NoOfCALs="1" GroupId="4942">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="1" GroupId="4943">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 1 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="1" GroupId="4944">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 1 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="5" GroupId="4945">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="5" GroupId="4946">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 5 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="5" GroupId="4947">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 5 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="20" GroupId="4948">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 20 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="20" GroupId="4949">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 20 User AE </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="10" GroupId="4950">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MAPS 10 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="25" GroupId="4951">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MPN 25 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="50" GroupId="4952">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MPN 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="50" GroupId="4953">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MSDN 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="10" GroupId="4954">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 10 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="10" GroupId="4955">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 10 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="50" GroupId="4956">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="50" GroupId="4957">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 50 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="100" GroupId="4958">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 100 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="100" GroupId="4959">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 100 User </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="500" GroupId="4960">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 500 User CSP </RetailCALGroup> | |
<RetailCALGroup CHID="033" NoOfCALs="1000" GroupId="4961">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail Internal Use Only 1000 User </RetailCALGroup> | |
<!-- Server 2025 Per-Device Retail CAL's --> | |
<RetailCALGroup CHID="032" NoOfCALs="1" GroupId="4962">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="1" GroupId="4963">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 1 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="1" GroupId="4964">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 1 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="5" GroupId="4965">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="5" GroupId="4966">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 5 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="5" GroupId="4967">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 5 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="20" GroupId="4968">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 20 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="20" GroupId="4969">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 20 Device AE </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="10" GroupId="4970">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MAPS 10 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="25" GroupId="4971">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MPN 25 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="50" GroupId="4972">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MPN 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="50" GroupId="4973">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail MSDN 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="10" GroupId="4974">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 10 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="10" GroupId="4975">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 10 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="50" GroupId="4976">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="50" GroupId="4977">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 50 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="100" GroupId="4978">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 100 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="100" GroupId="4979">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail OEM 100 Device </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="500" GroupId="4980">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail 500 Device CSP </RetailCALGroup> | |
<RetailCALGroup CHID="032" NoOfCALs="1000" GroupId="4981">Win Rmt Dsktp Svcs CAL 2025 RTM ServerStandard Retail Internal Use Only 1000 Device </RetailCALGroup> | |
</RetailCALGroups> | |
</TlsBrandingVersions> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Dependencies:
pip install pycryptodome ecutils
Usage:
python tspkgen.py <pid> [<count> <version> <chid>]
With just
pid
argument, it will generate a License Server ID (SPK).With all arguments, it will generate License Key Pack (LKP).
Notes:
chid
argument is listed in XML tableExample: server 2012 (r2) per user -> CHID 12 -> product id 12
corresponding version is 0x60002 -> 6.2
so
version
andchid
args are6.2 12