aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGibheer <gibheer@gmail.com>2015-01-19 20:20:47 +0100
committerGibheer <gibheer@gmail.com>2015-01-19 20:20:47 +0100
commit8fea0018b24728998415e48cbb22d4471c689507 (patch)
tree97b423ef0a032f560668c5a39eece7197e27ba4b
parent022e8394386e8182b4c84fc5547355cd4f6bdd85 (diff)
add readme and todo file
-rw-r--r--README66
-rw-r--r--TODO12
2 files changed, 78 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..1df46e8
--- /dev/null
+++ b/README
@@ -0,0 +1,66 @@
+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
+------------
+
+The project can be built with
+
+ go build
+
+from the main directory. This will create the binary `pkictl`.
+
+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](https://github.com/gibheer/pkictl).
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..0d4b1d4
--- /dev/null
+++ b/TODO
@@ -0,0 +1,12 @@
+The following list is a collection of areas, where some work is needed
+
+* reduce code size by refactoring
+* make sure that critical files are checked more rigid (filesystem permissions)
+* implement message signing for RSA keys
+* implement certificate generation
+* implement verification of certificates against rules
+* implement verification of certificates against CSRs
+* implement a way to convert keys to SSH format (separate tool?)
+* split project more into lib and CLI?
+* find a way to get ED25519 working
+* implement info command