Skip to content

Commit 08b89b0

Browse files
author
Gio Della-Libera
committed
Clarify feed public key bootstrap
1 parent 0ef1ffe commit 08b89b0

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

rfcs/0009-hosted-feeds-for-plugins-and-skills.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,16 @@ serves private account or organization feeds. Non-ClawHub feed URLs do not
222222
inherit this trust and must either use an explicitly configured trust root or an
223223
explicit unsigned opt-in.
224224

225+
OpenClaw must not bootstrap trust by downloading ClawHub's initial public key
226+
from the same feed host, such as a `/public-key` endpoint. If that host is
227+
compromised, the attacker could serve both a malicious feed and a matching key.
228+
The initial ClawHub public key should come from OpenClaw's shipped artifacts,
229+
source-controlled release metadata, or an operator-controlled local
230+
configuration channel. ClawHub can store the corresponding private signing key
231+
in its deployment secret store and may expose public-key metadata for human
232+
inspection, but that metadata is informational until verified by an already
233+
trusted root or a signed rotation document.
234+
225235
```jsonc
226236
{
227237
"catalog": {
@@ -394,6 +404,12 @@ for a configured signed remote feed. `verification.trustUrl` is optional; when
394404
absent, the bundled ClawHub root or configured local keys directly verify feed
395405
envelopes.
396406

407+
A public-key discovery endpoint can help operators inspect or compare keys, but
408+
it is not a trust bootstrap mechanism. Clients should accept a new ClawHub feed
409+
signing key only when it is bundled in a trusted OpenClaw release, configured by
410+
the local operator, or delivered through a rotation document signed by an
411+
already trusted key.
412+
397413
### Trust verification implementation series
398414

399415
The first hosted-feed implementation has already landed the transport, fallback,

0 commit comments

Comments
 (0)