Freedom251 › Code Signing Software
OpenPubkey

What OpenPubkey is
OpenPubkey binds a user or workload identity verified through OpenID Connect to a public key, allowing that identity to sign messages or artifacts. A PK Token proves control of the identity and its associated private key at a specific time, provided the verifier trusts the identity provider. The project supports both user and workload identities and says it does not require adding a certificate authority because the OpenID Provider fulfills that role.
OpenPubkey lists Google, Azure/Microsoft, Okta, OneLogin, and Keycloak as compatible without changes to the identity provider. Its client and verifier currently create and verify tokens from Google for users and GitHub for workloads. Workload identity use cases require GQ signatures; they are unnecessary for user scenarios when the PK Token is not public. Public tokens can expose claims from the signer’s OIDC ID Token, potentially including a name or email address. The project assumes identity-held key pairs are ephemeral and says they should be generated as needed and deleted afterward. OpenPubkey is a free Linux Foundation project under the Apache 2.0 license, and its repository says it is being prepared for version 1.0. Technical questions and reports can go to GitHub issues; a community Slack channel is also available.
Who it suits
It suits developers and teams seeking identity-linked signing for messages or artifacts using OpenID Connect. Workload identity users should account for the project’s GQ signature requirement.
What it does well
- Supports both user and workload identities
- Does not require adding a certificate authority
- Apache 2.0 licensed Linux Foundation project
- Lists multiple compatible identity providers
What to know first
- Current user token support is Google; workload support is GitHub
- Workload identity use cases require GQ signatures
- Public tokens may expose name or email claims
- Repository says the project is being prepared for version 1.0
Limits
The free OpenPubkey plan is open source under Apache 2.0. Current client and verifier support creates and verifies user tokens from Google and workload tokens from GitHub; workload use requires GQ signatures.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| OpenPubkey | Open source · Apache 2.0 license · Reference implementation | Free |
As github.com lists them, read 8 Oct 2026. The maker's own page has the final word.
Getting started
- Open the OpenPubkey project website on GitHub.
- Use the Go client and verifier described in the README.
- Authenticate with a supported current provider: Google for users or GitHub for workloads.
- Create a PK Token, sign a message, and verify the signature.
OpenPubkey connects OpenID Connect identities to keys that can sign messages and artifacts. It suits teams building identity-backed signing into systems that already trust an identity provider. Its CA-free design is appealing, but today’s provider support and workload requirements constrain its reach.
Overview
OpenPubkey binds an identity to a public key through OpenID Connect. A PK Token shows that an identity controlled its associated private key at a particular time, as long as the verifier trusts the identity provider. That makes OpenPubkey a signing building block rather than a certificate service: it provides no certificate and relies on the identity provider in the certificate authority role.
The project supports user and workload identities, with messages and artifacts as signing targets. Its Go client and verifier example walks through authentication, PK Token creation, signing, and signature verification. Docker is building a public container registry that uses OpenPubkey to sign Docker Official Images, and BastionZero uses it for secure remote infrastructure access.
Key features
Identity-backed signing without a new CA
Teams can tie signing keys to identities from an OpenID Provider without changing that provider or adding another certificate authority. That is a practical fit when the provider already anchors the trust model. Verifiers still need to trust that provider, so this design does not make trust decisions disappear; it places them with the identity provider.
Provider support and replay protection
The project describes compatibility with Google, Azure/Microsoft, Okta, OneLogin, and Keycloak without provider changes. Its client and verifier currently create and verify PK Tokens from Google for users and GitHub for workloads. That gap between stated compatibility and current client support matters: teams relying on another provider should account for the narrower implemented coverage.
For replay protection, GQ signatures let OpenPubkey strip the identity provider’s signature from an ID Token while retaining proof of it. This prevents the token from being used against OIDC resource providers. Workload identity use cases currently require GQ signatures, adding a dependency that does not apply to user scenarios where the PK Token remains private.
Privacy and key handling
A public PK Token can expose claims from the signer’s ID Token, including a name or email address. Teams publishing tokens should consider whether that identity information belongs in public artifacts. OpenPubkey also assumes identity-held key pairs are temporary: users generate them when needed and delete them afterward, so it fits workflows that can manage that lifecycle.
User identity scenarios can add an optional MFA cosigner protocol that independently authenticates the user and cosigns the PK Token. This offers an extra authentication step for users, but it is unsupported for workload identities.
Pricing
OpenPubkey is free. The OpenPubkey plan costs nothing and includes open-source software under the Apache 2.0 license and a reference implementation. That makes it accessible for teams able to operate and integrate the project themselves; no paid tier or hosted service is part of this offering.
The project is a Linux Foundation project and its repository says it is being prepared for version 1.0. Support is directed through GitHub issues for feature requests, bug reports, and technical questions, with a community Slack channel also available. Its security policy asks reporters to email [email protected] privately and says there is no bug bounty program.
Platforms
OpenPubkey supports API, Linux, macOS, self-hosted, and Windows environments. That range suits teams integrating signing into their own software or infrastructure, while its reference implementation and Go example point toward a developer-led setup.
Who it's for
OpenPubkey is strongest for teams that already use an OpenID Provider and want signatures tied to user or workload identity without setting up a separate certificate authority. It is especially relevant to teams signing messages, artifacts, or container images and able to work within its current Google user and GitHub workload support.
It is a weaker fit when public tokens must not reveal identity claims, when workload signing cannot use GQ signatures, or when a team needs a certificate rather than an identity-backed signing token. Teams depending on Azure/Microsoft, Okta, OneLogin, or Keycloak should also check that current client and verifier support meets their needs.
Pros and cons
- Pros: Binds identity to key control through an existing OpenID Provider, avoiding a separate certificate authority.
- Pros: Supports user and workload identity signing for messages and artifacts, with a Go client and verifier flow.
- Pros: Apache 2.0 licensing and a free reference implementation make it available for self-hosted use.
- Cons: Current PK Token creation and verification support is narrower than the project’s compatibility claims: Google for users and GitHub for workloads.
- Cons: Public PK Tokens may reveal a signer’s name or email, and temporary key pairs need deliberate lifecycle handling.
- Cons: All current workload identity use cases require GQ signatures; the optional MFA cosigner does not support workloads.
- Cons: The project is still preparing for version 1.0, and it provides no certificate.
Alternatives
Choose AWS Signer if you need a paid signing option with a free plan and no additional charge for use with the named AWS services or third-party container services. For an open-source signing CLI with no hosted service or usage limits stated, consider Cosign. SignPath offers free open-source code signing subject to eligibility conditions; SignServer has a free community plan for basic code, document, and container signing and timestamping.
Notation is an Apache 2.0 licensed CLI project. Sigstore is free to use for developers and software providers. Eligible, actively maintained open-source projects with an OSI-approved license and manual release signing can consider SignPath Foundation. Aujas Automated Code Signing Platform offers signing-based licenses.
Browse the code signing software directory to compare more options.
Verdict
Choose OpenPubkey if you want to bind signing keys to identities from an existing OpenID Provider and can work with its current Google user and GitHub workload support. Its strongest reason to choose it is identity-backed signing without an added certificate authority. Look elsewhere if your workload flow cannot accommodate GQ signatures, public tokens risk exposing identity claims, or you need a certificate rather than a PK Token.
Verdict
OpenPubkey links identity-provider-backed identities with signing keys without adding a certificate authority. Consider its current provider support, workload signature requirement, and possible claim exposure when evaluating it.
Questions
How much does OpenPubkey cost?
OpenPubkey is free. Its plan is listed as free.
Which identity providers can it work with?
The project names Google, Azure/Microsoft, Okta, OneLogin, and Keycloak as compatible without provider changes. Its client and verifier currently handle Google for users and GitHub for workloads.
What does a PK Token prove?
It proves control of an OIDC identity and its associated private key at a specific time, provided the verifier trusts the identity provider.
What can identities sign?
OpenPubkey supports signing messages and artifacts.
What license does OpenPubkey use?
It is a Linux Foundation project released under the Apache 2.0 license.
Can public PK Tokens reveal personal information?
Yes. They expose claims from the signer's OIDC ID Token, which may include a name or email address.
Facts from OpenPubkey's own pages
- Adoption
- The README says Docker is building a public container registry that uses OpenPubkey to sign Docker Official Images, and BastionZero uses it for secure remote infrastructure access. · github.com, 8 Oct 2026
- Current providers
- The project says its client and verifier currently create and verify PK Tokens from Google for users and GitHub for workloads. · github.com, 8 Oct 2026
- Current provider support
- The project says its client and verifier currently create and verify PK Tokens from Google for users and GitHub for workloads. · github.com, 7 Oct 2026
- Development status
- The README says the project is working to get the repository ready for version 1.0. · github.com, 8 Oct 2026
- Identity providers
- The README lists Google, Azure/Microsoft, Okta, OneLogin, and Keycloak as compatible OpenID Providers without requiring provider changes. · github.com, 8 Oct 2026
- Identity types
- OpenPubkey supports both user identities and workload identities. · github.com, 7 Oct 2026
- Integrations
- The project identifies Docker as using OpenPubkey to sign Docker Official Images and BastionZero as using it for secure remote infrastructure access. · github.com, 7 Oct 2026
- Key handling
- OpenPubkey assumes identity-held key pairs are ephemeral and says users generate them as needed and delete them when finished. · github.com, 8 Oct 2026
- License
- OpenPubkey is a Linux Foundation project released under the Apache 2.0 license. · github.com, 7 Oct 2026
- MFA cosigner
- For user identity scenarios, an optional MFA cosigner protocol independently authenticates the user and cosigns the PK Token; the FAQ says this is unsupported for workload identities. · github.com, 8 Oct 2026
- No added CA
- The project says OpenPubkey does not require adding a certificate authority because the OpenID Provider fulfills that role. · github.com, 8 Oct 2026
- PK Tokens
- A PK Token bundles an OpenID Connect ID Token with proof that the identity holder controls the associated private key. · github.com, 8 Oct 2026
- Privacy consideration
- Public PK Tokens expose claims from the signer's OIDC ID Token, which may include their name or email address. · github.com, 8 Oct 2026
- Project governance
- OpenPubkey describes itself as a Linux Foundation project licensed under Apache 2.0. · github.com, 8 Oct 2026
- Providers
- The project says it is compatible with Google, Azure/Microsoft, Okta, OneLogin, and Keycloak without changes to the identity provider. · github.com, 7 Oct 2026
- Purpose
- OpenPubkey binds user or workload identities to public keys through OpenID Connect, allowing identities to sign messages or artifacts. · github.com, 8 Oct 2026
- Replay protection
- GQ signatures let the provider signature be stripped and replaced with proof, preventing the ID Token from being replayed against OIDC resource providers. · github.com, 8 Oct 2026
- Security reporting
- The security policy asks reporters to email [email protected] privately and says the project does not currently offer bug bounties. · github.com, 8 Oct 2026
- Support
- The project directs feature requests, bug reports, and technical questions to GitHub issues and points users to its OpenSSF Slack channel. · github.com, 8 Oct 2026
- Usage
- The README demonstrates using the Go client and verifier to authenticate, create a PK Token, sign a message, and verify the signature. · github.com, 7 Oct 2026
- Workload requirement
- GQ signatures are required for all current workload identity use cases; they are unnecessary for user identity scenarios where the PK Token is not public. · github.com, 7 Oct 2026
Where OpenPubkey stands on Freedom251
- Code Signing Software#5 of 28