5 Commits
Author SHA1 Message Date
Jonathan Boulle 9685f37575 *: adjust copyright header
Inspired by a similar change in the Kubernetes project [1], this changes
the copyright header to the more generic "The rkt Authors" rather than
"CoreOS, Inc.", which is only sometimes correct.

https://github.com/GoogleCloudPlatform/kubernetes/commit/6b3a6e6b983f967c88d14d26542ec6e30c49ebd3
2015-05-03 14:29:15 -07:00
Jonathan Boulle 79753c9b19 *: rocket -> rkt 2015-03-31 16:31:21 -07:00
Kelsey Hightower bad73895c9 fetch: add signature validation
Currently rocket does not perform signature validation for ACI images.

Fix the issue by validating all ACI images during the initial download.

Example Usage:

```
$ sudo rkt run example.com/hello:0.0.1
rkt: starting to discover app img example.com/hello:0.0.1
...
rkt: example.com/hello:0.0.1 verified signed by:
  Kelsey Hightower (ACI signing key) <kelsey.hightower@coreos.com>
```

This patch introduces a new global flag `-insecure-skip-verify`, which
disables signature validation for a single run.

```
$ sudo rkt -insecure-skip-verify run example.com/hello:0.0.1
...
```

This patch changes the behaviour of the fetch and run subcommands. By
default rocket will attempt to verify all ACI images and fail if the
detached signature is missing.

This patch also includes a new tutorial on how to sign, host, and verify
ACI images.
2015-01-12 23:40:33 -08:00
Jonathan Boulle 6dece1122d *: add license header to all source files
h/t @johndeng for raising this in #305
2014-12-29 17:34:05 -08:00
Kelsey Hightower a3e710bd86 add support for managing opengpg keys and ACI signature validation
This patch adds support for managing trusted opengpg keys in a keystore backed
by the local filesystem. Trusted keys are stored in following directories by
default:

* /etc/rkt/trustedkeys/root.d
* /etc/rkt/trustedkeys/prefix.d
* /usr/lib/rkt/trustedkeys/root.d
* /usr/lib/rkt/trustedkeys/prefix.d

Each trusted key is stored using the key fingerprint as the name and the key
in OpenPGP ASCII Armor format as the contents.

OS vendors can store system-wide trusted keys in the trusted keys directories
under /usr, which can be overridden by creating an empty file under /etc with a
matching name (fingerprint).

This patch also adds support for validating ACI signatures against trusted keys
found in the local keystore.

Fixes #215
2014-12-24 02:40:55 -05:00