pkce
PKCE Pyhton generator.
Decision gist · record as of 2026-08-14
Yes, if you need straightforward PKCE code generation for OAuth flows and can accept that the package is no longer actively maintained. The underlying PKCE specification is stable, and the module's narrow scope means abandonment poses minimal practical risk. For production use, verify that the implementation matches your provider's PKCE requirements and consider whether you need active maintenance or community support.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Installation is straightforward with no runtime dependencies.
- The package is abandoned as of 2021 with no recent maintenance, though the underlying PKCE specification is stable and unlikely to change.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions—suitable for most projects.
last release 2021-02-08 (2013 days) · last repo commit 2021-02-08 · 29 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 3,132,110 downloads/mo, #2,738 on PyPI
Alternatives
Verify before relying
pip install pkce
import pkce
code_verifier, code_challenge = pkce.generate_pkce_pair()
# Or separately:
code_verifier = pkce.generate_code_verifier(length=128)
code_challenge = pkce.get_code_challenge(code_verifier)- Whether the package correctly implements all PKCE variants as specified in RFC 7636.
- Current compatibility with modern OAuth providers and whether the abandoned status poses practical risk for new integrations.
What it is and what it does
pkce is a lightweight Python module that generates the cryptographic components required for OAuth authorization flows using PKCE (Proof Key for Code Exchange). It provides two main functions: one to generate both a code verifier and its corresponding challenge in a single call, and another to generate a verifier of a specified length and separately compute its challenge. The module has no runtime dependencies and requires Python 3 or later.
The package implements RFC 7636, which defines PKCE as a security extension to the OAuth authorization code flow. It is typically used in mobile apps, single-page applications, and other public clients that cannot securely store a client secret. The module's simplicity makes it suitable for projects that need PKCE support without additional complexity, though its abandoned maintenance status since 2021 means no active development or bug fixes are forthcoming.
Use it for
- Generate PKCE parameters for mobile app OAuth login flows to prevent authorization code interception attacks.
- Implement secure OAuth authentication in single-page applications without a backend to store secrets.
- Create code verifier and challenge pairs for testing OAuth PKCE compliance in authorization servers.
- Build CLI tools or scripts that interact with OAuth providers requiring PKCE authentication.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need straightforward PKCE code generation for OAuth flows and can accept that the package is no longer actively maintained.
The underlying PKCE specification is stable, and the module's narrow scope means abandonment poses minimal practical risk. For production use, verify that the implementation matches your provider's PKCE requirements and consider whether you need active maintenance or community support.
Install
pkce on PyPI
Before you install
Installation is straightforward with no runtime dependencies. The package is abandoned as of 2021 with no recent maintenance, though the underlying PKCE specification is stable and unlikely to change.
License in practice
MIT license permits commercial and private use with minimal restrictions—suitable for most projects.
Quickstart
pip install pkce
import pkce
code_verifier, code_challenge = pkce.generate_pkce_pair()
# Or separately:
code_verifier = pkce.generate_code_verifier(length=128)
code_challenge = pkce.get_code_challenge(code_verifier)
Verify before relying
- Whether the package correctly implements all PKCE variants as specified in RFC 7636.
- Current compatibility with modern OAuth providers and whether the abandoned status poses practical risk for new integrations.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Abandoned 2,013 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,132,110 / month, #2,738 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Typing :: Typed |
Evidence: pkce-1.0.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “pkce code verifier generator”
- pkceGenerates PKCE (Proof Key for Code Exchange) code verifiers and…
- harbor-rewardkitHarbor Rewardkit defines and runs verifiers for task evaluation,…
- vonage-jwtGenerates and verifies JWTs for Vonage API authentication in Python,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Cryptography packages
Certifi provides Mozilla's curated collection of root SSL certificates for Python applications to validate TLS hosts and verify certificate trustworthiness.
cryptography provides cryptographic recipes and low-level primitives for symmetric encryption, message digests, key derivation, and other common cryptographic algorithms in Python.
Pure-Python RSA encryption, decryption, signing, and key generation following PKCS#1 v1.5, with command-line and library interfaces.
pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling through a Python-friendly interface around OpenSSL's cryptographic operations.
Provides Microsoft Entra ID token-based authentication for Azure SDK clients through a set of TokenCredential implementations that handle OAuth flows and managed identity support.
PyNaCl provides Python bindings to libsodium for digital signatures, secret-key and public-key encryption, hashing, message authentication, and password-based key derivation.
See also altcha · oauth2-client · requests-oauth2client · srptools · okta-jwt-verifier · spake2 · aioauth · django-google-sso · pyxero · requests-oauth