GitHub

Syncthing: Trust, Evidence, and Safe Synchronization

From identity and routes to verified blocks and recovery

8 chapters64 min total
Keywords
SyncthingSynchronizationDevice IDBlocksDiscoveryIndexesConflictsRelaysVersioningEncryption
Overview

This series explains how Syncthing lets independent devices reconcile files without making a central service the unquestioned owner: certificate-based identity answers who may connect; discovery and relays find routes but expose metadata; folder policy and indexes define desired state; block hashes and staged writes protect content and local disk state; version vectors, conflict copies, authority modes, versioning, and beta-qualified untrusted replicas shape convergence, recovery, and storage visibility. Semantic merging, anonymity, endpoint compromise, and independent disaster recovery remain outside the system's promise.

Learning outcomes
  • Syncthing separates device identity from network reachability, so a discovered address is not permission.
  • Indexes and block hashes make file state comparable and content checkable; TLS alone does not verify received blocks.
  • Version vectors support reproducible convergence and conflict preservation, not application-level semantic merging.
  • Folder modes and versioning address different authority and recovery risks; beta-qualified untrusted encryption still exposes sizes and change patterns.
  • A synchronized folder is not automatically an independent backup, anonymity system, or protection against a compromised endpoint.
Keywords
SyncthingSynchronizationDevice IDBlocksDiscoveryIndexesConflictsRelaysVersioningEncryption

Chapters

Preview every chapter · Unlock full text, audio, and video from chapter 4

Plans
Ch.1-3 FreeCh.4-8 Premium

FAQ

How does Syncthing decide which device may connect?

Syncthing derives a device ID from a certificate and accepts a peer only when that identity matches the configured relationship; knowing the ID alone is not a credential.

Do Syncthing discovery and relays make a peer trusted?

No. Discovery and relays provide candidate routes; the endpoint TLS handshake still verifies the peer certificate against the expected device ID.

How does Syncthing handle simultaneous edits?

Syncthing uses version vectors and content history to detect competing updates, then applies a deterministic policy that usually preserves displaced content as a conflict copy.

Is Syncthing a backup?

No. Synchronization, versioning, and conflict copies can preserve some recoverable history, but they share failure domains and do not replace an independent backup.

Can an untrusted Syncthing device read stored files?

The beta/testing untrusted-device mode is designed to hide plaintext names, metadata, and content from the storage peer, but sizes and change patterns remain visible.