You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/types/key
James Tucker 7988303d30
types/key,wgengine/magicsock,control/controlclient,ipn: add disco key rotation
Adds the ability to rotate discovery keys on running clients, needed for
testing upcoming disco key distribution changes.

Introduces key.DiscoKey, an atomic container for a disco private key,
public key, and the public key's ShortString, replacing the prior
separate atomic fields.

magicsock.Conn has a new RotateDiscoKey method, and access to this is
provided via localapi and a CLI debug command.

Note that this implementation is primarily for testing as it stands, and
regular use should likely introduce an additional mechanism that allows
the old key to be used for some time, to provide a seamless key rotation
rather than one that invalidates all sessions.

Updates tailscale/corp#34037

Signed-off-by: James Tucker <james@tailscale.com>
1 month ago
..
chal.go all: implement AppendText alongside MarshalText (#9207) 2 years ago
control.go all: update copyright and license headers 3 years ago
control_test.go all: update copyright and license headers 3 years ago
derp.go cmd/{derp,derpprobe},prober,derp: add mesh support to derpprobe (#15414) 6 months ago
derp_test.go cmd/derper: fix mesh auth for DERP servers (#16061) 7 months ago
disco.go types/key,wgengine/magicsock,control/controlclient,ipn: add disco key rotation 1 month ago
disco_test.go types/key,wgengine/magicsock,control/controlclient,ipn: add disco key rotation 1 month ago
doc.go all: add test for package comments, fix, add comments as needed 1 year ago
hardware_attestation.go types/key: add IsZero method to HardwareAttestationKey (#17370) 2 months ago
machine.go all: implement AppendText alongside MarshalText (#9207) 2 years ago
machine_test.go all: update copyright and license headers 3 years ago
nl.go types/key: use tlpub: in error message (#13707) 1 year ago
nl_test.go all: update copyright and license headers 3 years ago
node.go types/key: remove copy returning array by value 2 years ago
node_test.go all: use Go 1.22 range-over-int 2 years ago
util.go all: use new AppendEncode methods available in Go 1.22 (#11079) 2 years ago
util_test.go all: use Go 1.22 range-over-int 2 years ago