I created https://www.etesync.com for that purpose exactly, it does end-to-end encrypted sync for Android and desktop for your contacts and calendar.
I created https://www.etesync.com for that purpose exactly, it does end-to-end encrypted sync for Android and desktop for your contacts and calendar.
1. This assumes https can be trusted, that is, MITM is not a possibility. This is a fair assumption for many people, but not for people whore are scared of state actors, which is common for journalists in and citizens of some countries. - This can be mitigated to an extent with certificate pinning, but I don't think all software support it (correctly?) and it's another thing to get wrong.
2. This assumes your server is trusted. It is not. If it's hosted in a remote location (e.g. VPS or even metal in a server farm), it can't be trusted. If it's at your home, based on how much of a target you are, it can't be trusted. Even if your server is physically secure, this assumes it won't be hacked, and you should never assume a public facing server won't be.
Of course this all depends on your threat models, and this may not apply to you, but https to your own server is definitely not the same, and given that adding end-to-end is almost "free" for most users, it's a good idea to error on the side of safety and just do it.
Re: 2. If your server is untrusted (because it's a remote virtual server) or hacked, e2e will not protect you.
2. How so? EteSync for example has a git like integrity verification (just with HMAC instead of hash), so it's easy to check consistency across clients, and the server can't forge anything. The worst the server/MITM can do is stop syncing a specific client which would be easy to detect. A rogue server can't even omit specific changes, only stop sync. So I don't agree with your assertion.
One thing that I miss though is a nice web interface for calendar and contacts. Especially if I want to do some sort of cleanup of data. Is this functionality planned? Or is there some open source web calendaring software that you would recommend?
I've also been looking for such a solution for years, and except for the short-lived Flock by the Open Whisper Systems people, I couldn't find anything. That's why I finally decided to create it almost a year ago.
Edit: you just edited your reply while I was writing mine, to answer your additional question:
For a variety of reasons, the browser is not a safe environment for such an application, at least not currently. There is however a CalDAV/CardDAV gateway (beta) that you can host locally and essentially use any application that supports those to quickly edit your data, or alternatively, if you are a programmer, there's an open source (like everything from EteSync) python API (both low-level and high-level) that you can use to manipulate the data.