aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-11-08 22:43:19 +0000
committertv <tv@krebsco.de>2026-11-08 23:52:59 +0100
commit24527adf52ca2d8d3b927feb1b811e10fc55fc5c (patch)
tree599616858c8ec8bca78163810e65585f5e0daba4 /docs
parent1f50adb6ab723425ce031b45ed0db80d404805f0 (diff)
signatures: sign what is sent
A node signed its changes no rule signs a while after them (--sign-every 1s): the change left at once, unsigned, and its signature followed on its own a second later, to every neighbour, over every link. A few writes made a cascade of SIGNATURES. Under a policy requiring signatures it signed every change as it was made instead. A node now signs its latest change, if no signature vouches for it, as a sync message takes it (--sign-every sent, the default): the signature leaves in the same message, and goes where the change goes. One signature per message, however many changes it carries, each vouching for those before it: a slow writer's every change is signed, a fast writer's batches are, at no threshold to pick. A policy requiring signatures signs what is sent too, even with `none`. `all` still signs every change as it is made; changes to protocol data, listed paths and ?signed=true writes are signed as they are made, as before. The interval, and the task signing on it, go.
Diffstat (limited to 'docs')
-rw-r--r--docs/example.toml10
1 files changed, 6 insertions, 4 deletions
diff --git a/docs/example.toml b/docs/example.toml
index 82ba016..9eeee20 100644
--- a/docs/example.toml
+++ b/docs/example.toml
@@ -75,10 +75,12 @@ htpasswd = "/etc/continuum/htpasswd"
# Which of its changes this node signs with its node key besides those touching
# protocol data, paths listed in _continuum/access/signed, or written with
-# ?signed=true: "all", "none" (one left unsigned is vouched for by the node's next
-# signed change), or its latest change, if unsigned, this often (docs/api.md, Signed
-# changes).
-# sign-every = "1s"
+# ?signed=true: "sent", its latest as a sync message takes it (one signature per
+# message, vouching for the changes before it); "all", every change as it is made; or
+# "none" (one left unsigned is vouched for by the node's next signed change; as "sent"
+# under a policy requiring signatures). docs/api.md, Signed changes, says which to
+# choose.
+# sign-every = "sent"
# How long a token this node issues (POST /auth/login, /auth/refresh) is taken, by every
# node of the swarm (docs/access.md, Tokens). Refreshed before it ends, it lasts until