mirror of
https://github.com/SystemRage/py-kms.git
synced 2024-11-25 17:55:37 +01:00
previous | ||
py2-kms | ||
py3-kms | ||
wiki | ||
CHANGELOG.md | ||
LICENSE | ||
README.md |
History
py-kms is a port of node-kms created by cyrozap, which is a port of either the C#, C++, or .NET implementations of KMS Emulator. The original version was written by CODYQX4 and is derived from the reverse-engineered code of Microsoft's official KMS.
Features
- Responds to V4, V5, and V6 KMS requests.
- Supports activating:
- Windows Vista
- Windows 7
- Windows 8
- Windows 8.1
- Windows 10 ( 1511 / 1607 / 1703 / 1709 )
- Windows Server 2008
- Windows Server 2008 R2
- Windows Server 2012
- Windows Server 2012 R2
- Windows Server 2016
- Microsoft Office 2010 ( Volume License )
- Microsoft Office 2013 ( Volume License )
- Microsoft Office 2016 ( Volume License )
- It's written in Python:
- py2-kms tested with Python 2.7.12
- py3-kms tested with Python 3.5.2
Dependencies
- Python 3.x or Python 2.7.x or Python 2.6.x with the
argparse
module installed. - If the
pytz
module is installed, the "Request Time" in the verbose output will be converted into local time. Otherwise, it will be in UTC. - It can use the
sqlite3
module so you can use the database function, storing activation data so it can be recalled again. - Installation Example on Ubuntu:
sudo apt-get install python-pip
sudo pip install pytz
sudo apt-get install python-sqlite
orsudo pip install pysqlite
Usage
- NOTE: Pay attention to how invoke scripts, if you want to run py2-kms use
python...
while for py3-kms usepython3...
, also depending on the Python versions that resides in your PC. - To start the server, execute
python server.py [IPADDRESS] [PORT]
. The default IPADDRESS is "0.0.0.0" ( all interfaces ) and the default PORT is "1688". - To run the client (only for testing purposes), use
python client.py IPADDRESS [PORT]
. Argument IPADDRESS is always required, while the default PORT is "1688", so a valid command is:python client.py 0.0.0.0
- To show the help pages type:
python server.py -h
andpython client.py -h
- To generate a random HWID type:
python randomHWID.py
or directly in the server ( with-w
option )python server.py -w random
- To get the HWID from any server use the client, for example type:
python client.py 0.0.0.0 1688 -m Windows81 -v INFO
- To generate a random EPID type:
python randomPID.py
Other Important Stuff
- Consult the Wiki for more informations about activation with py-kms and to get GVLK keys.