-
Notifications
You must be signed in to change notification settings - Fork 2
/
index.html
130 lines (130 loc) · 5.99 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<!DOCTYPE html>
<html>
<head>
<title>Hockeypuck</title>
<link type="text/css" rel="stylesheet" href="static/article.css">
<meta charset='utf-8'>
</head>
<body>
<div id="topbar" class="wide">
<div class="container">
<div id="heading">Hockeypuck
OpenPGP Public Keyserver
</div>
</div>
</div>
<div id="page" class="wide">
<div class="container">
<div id="toc">
<ul>
<li><a href="#TOC_1.">About</a></li>
<li><a href="#TOC_2.">Latest Release</a></li>
<li><a href="#TOC_3.">Features</a></li>
<ul>
<li><a href="#TOC_3.1.">OpenPGP Standards</a></li>
<li><a href="#TOC_3.2.">SKS Reconciliation Protocol</a></li>
<li><a href="#TOC_3.3.">Modular storage backend</a></li>
<li><a href="#TOC_3.4.">Flexible rendering</a></li>
</ul>
<li><a href="#TOC_4.">Install</a></li>
<li><a href="#TOC_5.">Next Steps</a></li>
<li><a href="#TOC_6.">License</a></li>
</ul>
</div>
<h1 id="TOC_1.">1. About</h1>
<p>
Hockeypuck is an OpenPGP <a href="https://en.wikipedia.org/wiki/Key_server_(cryptographic)" target="_blank">public keyserver</a>.
</p>
<h1 id="TOC_2.">2. Latest Release</h1>
<p>
The latest <a href="https://github.com/hockeypuck/hockeypuck/releases" target="_blank">release</a> of
Hockeypuck is
<a href="https://github.com/hockeypuck/hockeypuck/releases/tag/2.2.2" target="_blank">2.2.2</a>.
</p>
<p>
Hockeypuck 2.x is a significant redesign of the original <a href="1x.html" target="_self">Hockeypuck 1.x</a>,
which is now deprecated. All bug fixes and new development will be on 2.x releases.
</p>
<h1 id="TOC_3.">3. Features</h1>
<h2 id="TOC_3.1.">3.1. OpenPGP Standards</h2>
<p>
Hockeypuck targets the
<a href="https://datatracker.ietf.org/doc/html/draft-gallagher-openpgp-hkp" target="_blank">HKP draft protocol specification</a>.
As this draft is a work in progress, Hockeypuck features may not exactly correspond to the current draft specification.
</p>
<p>
Public key material conforming to <a href="https://tools.ietf.org/html/rfc4880" target="_blank">RFC 4880</a> is supported by the keyserver, as
are <a href="https://tools.ietf.org/html/rfc6637" target="_blank">RFC 6637</a> ECC keys.
As-of-yet non-standard key material, such as v4 Ed25519 keys, may also be distributed by Hockeypuck.
</p>
<h2 id="TOC_3.2.">3.2. SKS Reconciliation Protocol</h2>
<p>
Hockeypuck can synchronize public key material with SKS and other Hockeypuck
servers. Recon protocol support is provided with the
<a href="https://gopkg.in/hockeypuck/conflux.v2" target="_blank">Conflux</a> package.
</p>
<h2 id="TOC_3.3.">3.3. Modular storage backend</h2>
<p>
Hockeypuck uses PostgreSQL ≥ 9.4 (tested up to v16) for storing indexed key
material. The architecture supports additional storage backends, which must
implement a simple set of Go interfaces.
</p>
<h2 id="TOC_3.4.">3.4. Flexible rendering</h2>
<p>
Hockeypuck internally represents key material with an arbitrary document model
that can be used with web applications by rendering it to JSON in responses.
HTML responses can be customized by authoring a template that operates on the
document model.
</p>
<h1 id="TOC_4.">4. Install</h1>
<p>
Several options are available:
</p>
<ul>
<li><a href="install-docker.html" target="_self">Install with Docker (RECOMMENDED)</a></li>
<li><a href="install-source.html" target="_self">Build and Install from source</a></li>
<li><a href="install-tarball.html" target="_self">Install from tarball release (STALE)</a></li>
<li><a href="install-ubuntu.html" target="_self">Install from Ubuntu archives (STALE)</a></li>
<li><a href="juju.html" target="_self">Deploy with Juju (STALE)</a></li>
</ul>
<h1 id="TOC_5.">5. Next Steps</h1>
<ul>
<li><a href="configuration.html" target="_self">Configuring</a> a Hockeypuck server.</li>
<li><a href="admin.html" target="_self">Remotely administering</a> a Hockeypuck server.</li>
<li><a href="populating.html" target="_self">Populating</a> Hockeypuck with keyfiles.</li>
<li><a href="dumping.html" target="_self">Dumping</a> Hockeypuck database contents to keyfiles.</li>
<li><a href="contributing.html" target="_self">Contributing</a> to Hockeypuck. (STALE)</li>
<li><a href="community.html" target="_self">Community</a> support for Hockeypuck, for issues and new feature requests.</li>
</ul>
<h1 id="TOC_6.">6. License</h1>
<p>
Copyright 2012-2024 Casey Marshall and the <a href="https://github.com/hockeypuck/hockeypuck/blob/master/CONTRIBUTORS">Hockeypuck contributors</a>.
Hockeypuck is distributed under the <a href="https://www.gnu.org/licenses/agpl-3.0.html" target="_blank">Affero GNU Public License, version 3</a>.
</p>
<p>
In general, any use of Hockeypuck privately within an organization (including a
company) is fine. Redistribution kicks in only when you publish services to
other parties.
</p>
<p>
The AGPL license (and my intent in licensing it such) DOES NOT permit the following distribution scenarios:
</p>
<ul>
<li>Distribute a <i>closed-source</i> application binary that builds with Hockeypuck AGPL packages. For example, a folder-syncing app that uses Conflux.</li>
<li>Publishing a closed-source service that uses Hockeypuck in its deployment to other parties. The AGPL includes web API access as "distribution".
For example, a PGP-based web service like keybase.io could be built with Hockeypuck, but it would be required to be open-source under the redistribution terms of the AGPL.</li>
</ul>
<p>
<a href="mailto:[email protected]" target="_blank">Contact</a> me for licensing alternatives (or if you're still not quite sure).
</p>
<h2>Authors</h2>
<div class="author">
<p>
Casey Marshall
</p>
<p class="link"><a href="https://hockeypuck.io" target="_blank">https://hockeypuck.io</a></p>
</div>
</div>
</div>
</body>
</html>