skillfed

pyjks

Pure-Python Java Keystore (JKS) library

pyjks v20.0.0 814.4K downloads/30d#4,992 on PyPI134
Permissive license MIT DORMANT released

What it is and what it does

PyJKS is a pure-Python library that reads and parses Java KeyStore files—the standard format for storing cryptographic keys and certificates in Java applications—without needing a JVM. It supports multiple keystore formats (JKS, JCEKS, BKS, UBER) and exposes the contents as Python objects, allowing you to extract private keys, certificates, and secret keys for use in Python-based security workflows.

The library has been stable and mature since its first release in 2013 and carries no external dependencies, making it lightweight to install. However, its latest release was in 2020 and the repository is no longer actively maintained, which may be a consideration if you need support for newer keystore features, encryption algorithms, or compatibility with the latest Python versions.

Use it for:

  • Extract SSL certificates and private keys from Java keystores for use in Python web servers or TLS clients
  • Migrate Java-based security configurations to Python applications by reading keystore files
  • Automate certificate rotation or auditing by parsing keystore contents programmatically
  • Load secret keys stored in Java keystores for cryptographic operations in Python

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

PyJKS loads and manipulates Java KeyStore (JKS), JCEKS, BKS, and UBER keystores from Python without requiring a JVM, exposing private keys, certificates, and secret keys for inspection and use.

Yes, if you need to read Java keystores in Python and can accept dormant maintenance. The library is mature, dependency-free, and carries no known vulnerabilities. However, verify that it handles your specific keystore format and encryption algorithms, and be aware that no updates have been released since 2020—consider it a stable tool for straightforward keystore parsing rather than a foundation for new security-critical infrastructure.

Install

pyjks on PyPI

pip

pip install pyjks

uv

uv add pyjks

poetry

poetry add pyjks

Installing pyjks

Before you install

Installation is straightforward with no runtime dependencies. The package is marked mature and has been stable since 2013, though the last release was in 2020 and the repository shows dormant maintenance status—no recent updates to address modern Python versions or security patches.

License in practice

MIT license is permissive and places no restrictions on use, modification, or distribution in proprietary or open-source projects.

Quickstart

pip install pyjks

import pyjks

keystore = pyjks.KeyStore.load('keystore.jks', 'passphrase')
print(keystore.private_keys)
print(keystore.certs)
print(keystore.secret_keys)

Verify before relying

  • Whether the package works reliably with modern Python versions (3.9+) despite classifiers only listing up to 3.8
  • Current compatibility with contemporary JKS format variations and encryption algorithms
  • Whether dormant maintenance status poses a risk for security-sensitive keystore operations

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 2,308 days since the last release
Last repo commit
First released
Downloads 814,425/month — #4,992 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyjks-20.0.0-py2.py3-none-any.whl

Keywords: JKS, JCEKS, java, keystore, security, ssl

Development Status :: 6 - MatureIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: Implementation :: PyPyTopic :: Software Development :: LibrariesTopic :: Utilities

Tags

java keystore pythonjks loader libraryread keystore filejceks bks keystoressl certificate extractionjava key management pythonkeystore parsing
keystorejava-interopcryptography

More Libraries packages