Hey everyone, developer of EteSync here. Sorry for not answering questions earlier, I literally just woke up. :P
If you are a developer, you may be interested in our related project, Etebase[0], which is an open-source SDK for building end-to-end encrypted applications. Here's the related HN discussion[1].
For those of you that are interested to learn more about EteSync, I was on FLOSS weekly last week[2], and I'll be giving a talk about Etebase at FOSDEM this weekend[3].
I use EteSync both at my company and personal life to share events with the team or with my wife, and to manage my contacts and tasks on my "no Google allowed" phone.
I can integrate with calcurse[1] to stay up to date during the day or with aerc[2] when I need to send an email to someone, because they include a Dav bridge[3], but I can also integrate it with the GNOME environment because a module for evolution exists[4].
Plus, the developer[5] has been genuinely nice and handled all support, and billing questions like a champ, in a speedy manner, and always in a polite tone.
My only problem with EteSync so far is that sharing an event can only be done through the web application right now, so I need to switch from calcurse to a browser, share the event, and then come back. Minor issue in the grand scheme of things, though.
Well worth the price, in my opinion. Might be one of the few services that I do not migrate to a self-hosted instance instead.
EteSync 1.0 (released 4+ years ago), was very much inspired by Git, and it indeed suffered from this problem. Each client had to replay the full log, and it only really worked well for lightweight data.
With version 2.0 of the protocol (released end of 2020), we changed it so that items (blobs of data) can be marked as changed and thus you only need to fetch the currently active items, rather than the full operations log. This works much better.
Developer of EteSync here (and a mostly happy user of Syncthing)!
EteSync focuses on syncing your contacts, calendars, tasks and notes, not just files (yet). Syncthing doesn't do any of that. There are also big advantages in having a server when it comes to efficiency, performance, and battery life (every Syncthing user knows it's a battery hog on Android). There are many advantages in having a server, and end-to-end encryption means you don't have to pay with your privacy or security to get them.
Syncthing has used 0.5% of my phone's battery over the last 7 days, despite a big photo and video sync job, while instantly syncing every change I make to my KeePass database. I can't speak for other Android users, but "every Syncthing user knows it's a battery hog on Android" definitely doesn't reflect my own experience.
The solution most people resort to is to just disable syncing when not connected to power (which is what I do). Maybe you are lucky, I don't know, but I've always had terrible battery life with Syncthing, and it's a common complaint.
You can share your collections with other users, so it's definitely end-to-end encryption. Though I'd argue that even if it was just single-player, it was still e2ee, because you have multiple devices and the server is oblivious to the contents of the data. Sure, you could maybe call that client-side encryption to have a different term, but that would just confuse people.
There is a convention to the use of the E2EE term. All encryption involves a party that encrypts and one that decrypts. When the German U-boat operator used an Enigma machine to decode a message off the radio no one then or now would call what had happened E2EE. That is even in the face of the fact that many operators in many U-boats were decoding the same message. EteSync works in the same way.
E2EE is a term normally only used when some distinction from a default case is important. It is in a sense a weaker term than just "encryption". It is normally only used for particular cases in messaging.
Something like: "All data is strongly encrypted at all times when off the users devices." strikes me as stronger, better and easier to understand in this case.
Is there a more detailed "How does it work?" available? For example, how end-to-end is the calendar functionality, does the server side see your calendar entries?
We wish it did too (developer of EteSync here). The problem is not on our end though, the problem is that ProtonMail uses their own proprietary (and closed) protocols and don't interact with the rest of the apps.
It's for contacts, calendar, tasks, and notes. It's more of a CalDAV/CardDAV replacement with end-to-end encryption than a Nextcloud replacement, which AFAIK doesn't have E2EE for syncing these bits.
Also, as it doesn't directly use CalDAV/CardDAV it depends on a client app. At least on Android, the app syncs to the system calendar/contacts so it works just as seamlessly as Nextcloud's recommendation of DAVx5 or any other contacts/calendar/tasks service in that you can access the data from any standard calendar or contacts application.
So it is basically the same... except that you can't share pictures, videos, or other file types? I wonder why you need a DAVx5-like app with EteSync if that is all it does?
It's not basically the same. Encryption makes the whole difference. With NextCloud all of your data is accessible by your provider, its employees, hackers, and everyone who gains access to the server. This is not theoretical, hacks happen all the time.
Not everyone is a techie and can self host. You'd also need to self-host at home (even more of a pain). And anyhow, even if you are hosting at home, an internet connected server is much more of a target than a usually-behind-NAT phone.
It is not externally accessible... only the home VPN is (I'm also using DDNS just in case my semi-static IPv4 changes). But of course nothing is 100% secure.
Sure, if you have a VPN that's probably fine. Though this is another piece of tech you need to setup, and thus another barrier for non techies. That's why encryption (secure by default) is better than having users know how to securely setup things, and even needing to know that it's a concern.
If you are a developer, you may be interested in our related project, Etebase[0], which is an open-source SDK for building end-to-end encrypted applications. Here's the related HN discussion[1].
For those of you that are interested to learn more about EteSync, I was on FLOSS weekly last week[2], and I'll be giving a talk about Etebase at FOSDEM this weekend[3].
[0] https://www.etebase.com
[1] https://news.ycombinator.com/item?id=25059133
[2] https://www.twit.community/t/floss-613-etesync-and-etebase/9...
[3] https://fosdem.org/2021/schedule/event/etebase/