/simple-pki

A Simple PKI

Primary LanguageKotlinOtherNOASSERTION

Simple PKI

Build SonarQube Quality Gate Coverage Pitest

Overview

This application provides the basic services typically found on any PKI:

  • Generates X.509 certificates;

  • Allow preemptive revocation of issued certificates;

  • Generates an updated CRL (Certificate Revocation List);

  • Supply the CA certificate.

The PKI implemented is comprised of a single CA with no intermediate CAs.

Code Coverage

tree

Building the application

To build the application from the sources just run:

./gradlew build

Docker Image

You can also build a Docker image from the source code using the [Jib plugin](https://github.com/GoogleContainerTools/jib/tree/master/jib-gradle-plugin#build-your-image) like, for example:

./gradlew jibDockerBuild

Installation

The first step is create the keystore with the CA entity. As an example, you can run the src/main/scripts/create-ca.sh that will create a ./data/ca.p12 keystore with default passwords set to changeit.

Running with 'debug' profile activated

If using Gradle, run:

./gradlew bootRun --args='--spring.profiles.active=debug'

License

Copyright © 2019-2022 Nordix Foundation.