Eu uso regularmente o Syncthing para sincronizar arquivos e adoro isso. Eu também uso pass para gerenciar minhas senhas e enquanto o conteúdo do arquivo é criptografado no meu sistema, os nomes dos arquivos não são.
Como os nomes dos arquivos são nomeados após meus nomes de usuário, preciso saber que eles também são mantidos em segredo. Sei que os arquivos são criptografados ao serem enviados via Syncthing, mas e os nomes dos arquivos? Alguém poderia interceptá-los?
Você pode ler sobre as especificações de protocolo do Syncthing aqui . A especificação Block Exchange Protocol responderá diretamente à sua pergunta: ele usa Transport Layer Security (TLS), portanto, nada é transmitido sem criptografia. Os IDs de dispositivo que você vê são, na verdade, impressões digitais de certificado, então você está confiando diretamente no certificado de criptografia exclusivo de outro dispositivo. Como a confiança mútua deve ser estabelecida, a linha de base de segurança é muito alta.
TLS não é suscetível a ataques man-in-the-middle. Embora o certificado possa ser recuperado, ele é uma informação pública (assim como com HTTPS). A chave privada é apenas isso: privada. Nunca é enviado pela rede.
Existe até uma especificação em andamento que permitiria a sincronização com dispositivos não confiáveis. Eles não veriam conteúdos ou nomes de arquivos.