[build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" [tool.poetry] name = "keydive" version = "3.0.0" description = "Extract Widevine L3 keys from Android devices effortlessly, spanning multiple Android versions for DRM research and education." license = "MIT" authors = ["hyugogirubato <65763543+hyugogirubato@users.noreply.github.com>"] readme = "README.md" repository = "https://github.com/hyugogirubato/KeyDive" keywords = ["python", "drm", "widevine", "google"] classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: End Users/Desktop", "Natural Language :: English", "Operating System :: OS Independent", "Topic :: Multimedia :: Video", "Topic :: Security :: Cryptography", "Topic :: Software Development :: Libraries :: Python Modules" ] include = [ { path = "CHANGELOG.md", format = "sdist" }, { path = "README.md", format = "sdist" }, { path = "LICENSE", format = "sdist" } ] [tool.poetry.urls] "Issues" = "https://github.com/hyugogirubato/KeyDive/issues" "Packages" = "https://github.com/hyugogirubato/KeyDive/blob/main/docs/PACKAGE.md" "Functions" = "https://github.com/hyugogirubato/KeyDive/blob/main/docs/FUNCTIONS.md" "Changelog" = "https://github.com/hyugogirubato/KeyDive/blob/main/CHANGELOG.md" [tool.poetry.dependencies] python = ">=3.8,<4.0" asn1crypto = ">=1.5.1" coloredlogs = ">=15.0.1" construct = "^2.10.70" crccheck = ">=1.3.0" cryptography = ">=45.0.3" frida = ">=17.1.3" pathvalidate = ">=3.2.1" protobuf = "^5.29.5" requests = ">=2.32.3" rich-argparse = ">=1.7.1" Unidecode = ">=1.4.0" xmltodict = ">=0.14.2" Flask = { version = ">=3.0.3", optional = true } [tool.poetry.group.dev.dependencies] frida-tools = ">=14.1.1" mypy-protobuf = ">=3.6.0" [tool.poetry.extras] offline = ["Flask"] [tool.poetry.scripts] keydive = "keydive.__main__:main" [[tool.poetry.source]] name = "localpypi" url = "https://pypi.org/simple/" priority = "primary" [certificates] localpypi = { cert = false }