A tool to decrypt Elgato Stream Deck manifest files and plugin packages.
Project description
Elgato Stream Deck Manifest Decrypter
A command-line tool to decrypt encrypted manifest files (manifest.json) used by the Elgato Stream Deck application. It supports decrypting standalone manifest files as well as in-place decryption of .streamDeckPlugin packages.
Note: This tool requires the StreamDeck.exe binary to be installed on your system, as it dynamically extracts the necessary decryption keys from the application binary at runtime. It does not contain any embedded secrets or proprietary keys.
Features
- Manifest Decryption: Decrypts individual encrypted
manifest.jsonfiles. - Plugin Decryption: Handles
.streamDeckPlugin(ZIP) files, decrypting the internal manifest in-place. - Dynamic Key Extraction: Parses the installed
StreamDeck.exeto retrieve cryptographic constants, ensuring compatibility across versions. - Safe: No hardcoded keys or secrets are distributed with this tool.
Installation
pip install elgato-decrypter
Usage
Decrypt a single manifest file
elgato-decrypter path/to/encrypted/manifest.json [output_file.json]
Decrypt a plugin package (in-place)
elgato-decrypter path/to/plugin.streamDeckPlugin
Specify custom Stream Deck binary path
By default, the tool looks for StreamDeck.exe in C:\Program Files\Elgato\StreamDeck\StreamDeck.exe. If you have it installed elsewhere:
elgato-decrypter path/to/manifest.json --binary "D:\Games\Elgato\StreamDeck.exe"
Technical Details
The encryption scheme uses a combination of:
- Custom PCG-based XOR stream cipher
- X25519 Elliptic Curve Diffie-Hellman (ECDH) key exchange
- HKDF-SHA256 key derivation
- AES-256-GCM authenticated encryption
For full technical details, see the project documentation.
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file elgato_decrypter-1.0.0.tar.gz.
File metadata
- Download URL: elgato_decrypter-1.0.0.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c920432cd94bfa050fc24d0fc3e7cfa78cf07411bb215a2b8571d818f4c0a89b
|
|
| MD5 |
11e8f819ba1cb0dc3bbf132e78619cf3
|
|
| BLAKE2b-256 |
c27d1713061f149c7996d72f5664cd06bd77af363fe204fdf175f3a11088d7f9
|
File details
Details for the file elgato_decrypter-1.0.0-py3-none-any.whl.
File metadata
- Download URL: elgato_decrypter-1.0.0-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
147b7eb4231e262675fc7cc902be4822d55cd64b9f98f6e73cd910e7ea58108f
|
|
| MD5 |
ef30ee3557442d93bc812041ee0db3da
|
|
| BLAKE2b-256 |
d31e5be0516882dbb64dbe44dd186c853a75ec1bcf230b07dbf173b1db55d0fa
|