MCPcopy Index your code
hub / github.com/dogtagpki/pki

github.com/dogtagpki/pki @v11.10.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v11.10.0 ↗ · + Follow
33,128 symbols 137,864 edges 3,924 files 11,368 documented · 34%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Dogtag PKI

The Dogtag Certificate System is an enterprise-class open source Certificate Authority (CA). It is a full-featured system, and has been hardened by real-world deployments. It supports all aspects of certificate lifecycle management, including key archival, OCSP and smartcard management, and much more.

The Dogtag PKI suite provides the following subsystems:

Documentation

The best place to start learning about the product is the Dogtag PKI Wiki.

Installing

Fedora

To install the whole Dogtag PKI suite:

$ sudo dnf install dogtag-pki

To install specific subsystems only:

$ sudo dnf install dogtag-pki-ca dogtag-pki-kra

To install the theme package:

$ sudo dnf install dogtag-pki-theme

Deploying

After successful installation of the packages, follow the below steps to deploy intended subsystems:

For other types of deployments (Sub-CA, Clones, HSMs, etc) please see the Installation Guide.

Building

Fedora/CentOS/RHEL

Prerequisites

$ sudo dnf install dnf-plugins-core rpm-build git

# NOTE: Use the intendended branch name instead of "master" to pull right dependency version
$ sudo dnf copr -y enable @pki/master

$ sudo dnf builddep -y --spec pki.spec

Build Procedure

After successfully installing the prerequisites, the project can be built with a one-line command:

$ ./build.sh rpm

The built RPMS will be placed in ~/build/pki/ directory.

See also Building PKI.

Testing

Test Status
SonarCloud Quality Gate Status
CA Tests CA Tests
CA Clone Tests CA Clone Tests
CA Container Tests CA Container Tests
CA Profile Tests CA Profile Tests
CA Extra Tests CA Extra Tests
SubCA Tests SubCA Tests
KRA Tests KRA Tests
KRA Clone Tests KRA Clone Tests
OCSP Tests OCSP Tests
TKS Tests TKS Tests
TPS Tests TPS Tests
ACME Tests ACME Tests
EST Tests EST Tests
Server Tests Server Tests
Java Tests Java Tests
Python Tests Python Tests
Tools Tests Tools Tests
IPA Tests IPA Tests

Contributing

There are multiple ways for you to be part of this project. Please see CONTRIBUTING to learn more.

Contact Us

See Contact Us.

License

GPL-2.0 License

Extension points exported contracts — how you extend this code

IConnectionFactory (Interface)
Interface for all connection factory. Primarily act as the abstraction layer for different kind of connection factory. [25 …
base/console/src/main/java/com/netscape/certsrv/client/connection/IConnectionFactory.java
IExpression (Interface)
Interface for a policy expression. NOTE: The Policy Framework has been replaced by the Profile Framework. </ [10 implementers]
base/server/src/main/java/org/dogtagpki/legacy/policy/IExpression.java
CAInfoResource (Interface)
@author Ade Lee [13 implementers]
base/common/src/main/java/org/dogtagpki/common/CAInfoResource.java
KeyRetriever (Interface)
(no doc) [6 implementers]
base/ca/src/main/java/com/netscape/ca/KeyRetriever.java
IDefStore (Interface)
This class defines an Online Certificate Status Protocol (OCSP) store which has been extended to provide information fro [4 …
base/ocsp/src/main/java/com/netscape/certsrv/ocsp/IDefStore.java
IShare (Interface)
Use Java's reflection API to leverage CMS's old Share and JoinShares implementations. @deprecated @version $Revision$ $ [2 …
base/kra/src/main/java/com/netscape/certsrv/kra/IShare.java
IPage (Interface)
A class that specifies properties and functionality for a tab that appears in the Console window. This interface is usu [6 …
base/console/src/main/java/com/netscape/management/client/IPage.java
IPolicyPredicateParser (Interface)
Interface for policy predicate parsers. NOTE: The Policy Framework has been replaced by the Profile Framewor [32 implementers]
base/server/src/main/java/org/dogtagpki/legacy/policy/IPolicyPredicateParser.java

Core symbols most depended-on inside this repo

Shape

Method 26,887
Class 4,229
Function 1,797
Interface 181
Enum 33
Route 1

Languages

Java84%
Python11%
TypeScript2%
C++2%
C1%

Modules by API surface

base/console/src/main/java/com/netscape/admin/certsrv/config/install/InstallWizardInfo.java323 symbols
base/server/python/pki/server/subsystem.py191 symbols
base/server/python/pki/server/__init__.py170 symbols
base/server/python/pki/server/deployment/__init__.py163 symbols
base/tps/src/main/java/org/dogtagpki/server/tps/processor/TPSProcessor.java138 symbols
base/server/src/main/java/com/netscape/cmscore/apps/CMSEngine.java132 symbols
base/common/src/main/java/com/netscape/cmsutil/crypto/CryptoUtil.java128 symbols
base/server/python/pki/server/cli/ca.py119 symbols
base/server-webapp/webapps/pki/js/underscore.js114 symbols
base/tools/src/main/native/tkstool/secutil.c112 symbols
base/tools/src/main/native/pistool/src/secutil.c112 symbols
base/server-webapp/webapps/pki/js/jquery.js112 symbols

Datastores touched

acmeDatabase · 1 repos
estDatabase · 1 repos

For agents

$ claude mcp add pki \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page