0
0
This tool helps in building a process to create and sign x509 certificates. It is still a work in progress and keeps changing.
Go to file
Gibheer 9e87cea1b0 update pki dependency
This fixes an issue with generating certificates with ed25519 private
keys.
2023-01-10 14:43:53 +01:00
vendor update pki dependency 2023-01-10 14:43:53 +01:00
AUTHORS fix LICENSE and add AUTHORS file 2015-01-19 19:48:11 +01:00
create_cert.go update import paths 2022-08-15 22:54:12 +02:00
create_private_key.go update import paths 2022-08-15 22:54:12 +02:00
create_public_key.go rework program flow 2016-10-01 21:56:29 +02:00
create_sign_request.go update import paths 2022-08-15 22:54:12 +02:00
go.mod update pki dependency 2023-01-10 14:43:53 +01:00
go.sum update pki dependency 2023-01-10 14:43:53 +01:00
io.go fix file permissions 2018-04-18 14:14:25 +02:00
LICENSE fix LICENSE and add AUTHORS file 2015-01-19 19:48:11 +01:00
load_private_key.go update import paths 2022-08-15 22:54:12 +02:00
main.go remove missing command from output 2022-08-15 22:53:16 +02:00
pem.go update import paths 2022-08-15 22:54:12 +02:00
README.md add Go 1.4 requirement 2015-07-24 22:02:39 +02:00
sign_input.go rework program flow 2016-10-01 21:56:29 +02:00
TODO add one more todo item 2022-10-27 09:45:59 +02:00
type.go rework program flow 2016-10-01 21:56:29 +02:00
verify_input.go update import paths 2022-08-15 22:54:12 +02:00

pkictl

Pkictl can be used to manage the lifecycle of keys and certificates.

Its main purpose is the creation of certificates and control through rules of the certification process. But it can also be used to sign and verify messages based on private/public keys.

The focus is on easy commands with clear error messages to make work for the admin or user as easy as possible. But it can also be used in scripts to implement automated workflows.

features

The following commnds will be implemented:

  • create private key (RSA or ECDSA)
  • create public key based on private key
  • sign a message using a private key
  • verify a message using a public key
  • create a certificate sign request using a private key (WIP)
  • create a certificate using a CSR (not implemented)
  • show information about a CSR/private key/... (not implemented)
  • verify certificate against rules and CSR (not implemented)

Installation

To build pkictl Go 1.4 is required.

The project can be built with

go get github.com/Gibheer/pkictl

which fetches all dependencies needed and builds the binary into your $GOPATH/bin.

Usage

print all commands

To print all commands, use

# ./pkictl
Usage: pkictl command args
where 'command' is one of:
    create-private    create a new private key
    create-public     create a public key from a private one
    create-cert-sign  create a new certificate sign request
    help              show this help
    info              get info on a file
    sign              sign a certificate request
    sign-input        sign a message with a private key
    verify-signature  verify a signature

Print the help for a command:

./pkictl create-public --help
Usage of create-public:
  -output="STDOUT": path where the generated public key should be stored
  -private-key="": path to the private key file

Contributing

The best way to contribute is to use github.com/gibheer/pkictl.