Skip to main content

PyDCSL 🛡️🔐

A compact Python tool to check if a Widevine device certificate (DCSL) is revoked or valid.

📦 What is PyDCSL?

PyDCSL is a lightweight Python utility that interacts with a custom API to process Widevine license components — specifically .wvd, client_id, and private_key files — and fetch the corresponding DRM metadata.
It acts as a tool for DRM inspection, metadata extraction, and license validation purposes. The tool provides both a command-line interface (CLI) and an importable Python module.


⚙️ Features

  • 🧾 Accepts .wvd, client_id, and private_key inputs
  • 🌐 Sends requests to a Widevine DCSL-compatible API
  • 📊 Pretty-prints extracted metadata using rich (if available)
  • 🧪 Supports both CLI and importable module
  • 📁 Optionally saves results to a JSON file

🚀 Usage

🔧 Command-Line Interface

To get started with the CLI, simply run:

pydcsl -h
CLI screenshot

📋 Output Example

Here’s an example of what the output looks like when you run the tool:

Output example

🧾 License

This project is licensed under the MIT License. See the LICENSE file for more details.


❗ Disclaimer

This tool is intended for educational, debugging, and interoperability purposes only. Usage of Widevine-protected materials must comply with relevant laws and terms of service. The authors of this project do not condone or support illegal or unethical use.


🤝 Contributions

Contributions, fixes, and improvements are welcome! Feel free to open an issue or submit a pull request (PR).


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydcsl-0.5.0.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pydcsl-0.5.0-py3-none-any.whl (24.7 kB view details)

Uploaded Python 3

File details

Details for the file pydcsl-0.5.0.tar.gz.

File metadata

  • Download URL: pydcsl-0.5.0.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for pydcsl-0.5.0.tar.gz
Algorithm Hash digest
SHA256 9ad92fae7aa887d95d7ec776f95984f072b12c6a37e1e6d78cc031ba7065fd7d
MD5 5938edea6fb3d16ed83c25861072f804
BLAKE2b-256 d6b7e9a6ec877145466e9fbe28993e74b8177038c441dd1a49212385c3e78ccc

See more details on using hashes here.

File details

Details for the file pydcsl-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: pydcsl-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 24.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for pydcsl-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35eaea5a8df576b130f83f014bf3d46b85e21c4c269f8d8d460eb52da870f5ce
MD5 b6cf04e8c4d5de91655345f224738304
BLAKE2b-256 8d500989490f7e68349b18074bb99b3dd0395b24d8119f67f4bb97e8a8b842b8

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page