PKeyMaster Web & API Suite

Linux PHP Web Frontend & API + Windows PidGenX/SLS Microservice
Linux PHP: Ready
Windows Worker: Checking...
0 / 0 (0%)
KeyChecker Output

Manual / Batch CID Retrieval (via Windows Worker)


Installed Product Activation (Remote Windows Server Host)

IID / CID Output

PKeyConfig Catalog Reader & CSV Exporter (Runs Natively in Linux PHP)

PKeyConfig Output

File & Text / Hex Scanner (Runs Natively on Linux PHP)

Remote Windows Server Host Scanners

Queries the Windows Worker host's local Trusted Store, Registry DPIDs, or BIOS/UEFI MSDM table (requires -EnableHostTools on Windows Worker).

Scanner Output

DecodePKey2009 (Linux PHP Native)

Unpacks Base24 Windows 8+ / Office 2013+ keys containing 'N' into Group, Serial, Security, Checksum, Upgrade, and Extra bits.

DecodePKey980-PKey986 (Linux PHP Native)

Unpacks Pre-Vista 25-char keys (Bink1998 & Bink2002) using their BINK ID hex value.

Direct CheckRedeemKey (OLSC API)

Checks redeem key status against licensing.m365.svc.cloud.microsoft without consuming balance.

Direct MAK Count Query (BatchActivation)

Queries remaining activations using an Extended/Advanced PID.

Direct Tool Output

System Architecture: Linux PHP Server + Windows Worker Server

This application splits PKeyMaster into two tiers:

  • Linux Server (linux-php/): Hosts the Web Interface (index.php), Public REST API (api.php), and native PHP engine (src/PKeyMasterEngine.php) for Pre-98 key validation, PKey2009 decoding, PKey980-986 decoding, PreVistaRanges matching, DPID v2/v3/v4 binary/hex parsing, PKeyConfig XML/CSV exporting, and file key scanning.
  • Windows Server (windows-worker/): Runs WindowsWorkerServer.ps1 to handle only pidgenx32.dll / pidgenx64.dll P/Invoke calls and Microsoft server connections (SLCertifyProduct, SLActivateProduct, BatchActivation, VisualSupport DPoP, and OLSC Redeem).

Linux Public REST API Endpoints (POST /api.php?action=...)

1. Check Product Key (?action=check-key)

curl -X POST http://your-linux-server/api.php?action=check-key \
  -H "Content-Type: application/json" \
  -d '{
    "productKey": "NJCF7-PW8QT-3324D-688JX-2YV66",
    "profile": "Automatic",
    "keyCertification": true,
    "keyActivation": false,
    "makCount": true,
    "checkRedeemKey": true,
    "getInstallationId": true,
    "getConfirmationId": false
  }'

2. Get Confirmation ID from IID (?action=get-cid)

curl -X POST http://your-linux-server/api.php?action=get-cid \
  -H "Content-Type: application/json" \
  -d '{
    "installationId": "442875505090948411270215934376216135091582729253066826014283446",
    "apiMode": "Auto"
  }'

3. Decode PKey2009 / PKey980 / Pre-98 (?action=decode-2009 | decode-980 | check-pre98)

curl -X POST http://your-linux-server/api.php?action=decode-2009 \
  -H "Content-Type: application/json" \
  -d '{"productKey": "NJCF7-PW8QT-3324D-688JX-2YV66"}'

curl -X POST http://your-linux-server/api.php?action=decode-980 \
  -H "Content-Type: application/json" \
  -d '{"productKey": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX", "binkIdHex": "0x2A"}'

curl -X POST http://your-linux-server/api.php?action=check-pre98 \
  -H "Content-Type: application/json" \
  -d '{"productKey": "123-1234566"}'

4. Direct Microsoft Online Endpoints (?action=certify | activate | mak-count | redeem)

curl -X POST http://your-linux-server/api.php?action=redeem \
  -H "Content-Type: application/json" \
  -d '{"redeemKey": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXZ"}'

curl -X POST http://your-linux-server/api.php?action=mak-count \
  -H "Content-Type: application/json" \
  -d '{"advancedPid": "00000-00138-207-109016-03-1033-26100.0000-0922026"}'

5. PKeyConfig Catalog Reader & CSV Export (?action=pkeyconfig)

curl -X POST http://your-linux-server/api.php?action=pkeyconfig \
  -H "Content-Type: application/json" \
  -d '{"profile": "28000 - Windows 11 24H2-25H2-26H2 - Server 2025 - Azure Local 24H2"}'

6. Scan Files or Text for Keys & DPIDs (?action=scan-keys | scan-dpid)

curl -X POST http://your-linux-server/api.php?action=scan-keys \
  -F "files[]=@/path/to/keys.txt"

curl -X POST http://your-linux-server/api.php?action=scan-dpid \
  -F "files[]=@/path/to/backup.reg"