OFFICIAL SFOSX Signal client

Hi all,

with the recent massive success of Signal due to the new privacy policy of facebook with respect to whatsapp, it may now make much more sense to create an official sailfish client for SFOSX. I understand that the jolla team cannot support just any random messenger, but signal seems to have displaced even telegram in popularity now. Hence this post.

M

3 Likes

I would consider Treema an even better option,
As I see Sailfish as the ultimate privacy aware OS which is completely separate from the dominating Big Tech corps, (MS, Apple, Google, Amazon, Facebook)
I am following closely the impressive work of @rubdos who is making the whisperfish app so that sailfish users can use Signal. However as I’m reading more about Signal and their use of US based cloudservices en the nagging mandatory reCapthca from Google. Which make me question if it is wise to use Signal. which is still linked with the “evil” dominating US based Big Tech.

Threema has really no links with Google or the Patriot Act, and even made their source code completely available to use.

2 Likes

We’d all love to see official apps, but Jolla has (almost) nothing to do with this, only Signal can create official clients, otherwise it’s called third-party. That’s a subject to bring directly to them: https://community.signalusers.org/

6 Likes

This has come up many times. And in my opinion Jolla shouldn’t spend time on proprietary, centralized services. That includes Signal, Threema, Telegram, Wire, etc. Even though they might be open source, you’re still bound to a single provider.

9 Likes

Threema has […] even made their source code completely available to use.

threema has made their server FLOSS? thats news to me

1 Like

Agreed.

The one true open protocol is XMPP, which is supported, albeit somewhat poorly. Which also has been discussed many times.

3 Likes

An official Signal client can only be done by Signal themselves. A Jolla-official client doesn’t make sense because of a lot of reasons (trademarks, Signal won’t like that, integration into libpurple is going to be crazy difficult, centralised …).

@Sakul, Threema has one single advantage over Signal, currently. This is that Signal needs your phone number for registration. However, Signal has email+username registration in their code base, and I expect them to release this very soon.
Your other arguments are void, in my opinion. Threema does not have a sound/consistent group system like Signal does (GroupV2 really is impressive), they do not have unidentified sending.
Threema may be using Swiss servers, but ultimately that should not matter if everything is E2E encrypted and when unidentified sending is implemented correctly (which isn’t the case in Whisperfish, FYI, but wouldn’t be in Threema either because it simply doesn’t exist).
reCAPTCHA shouldn’t need to be an issue either, since you can even, in principe, file the CAPTCHA over Tor/zeronet. Granted, using Google for that isn’t cool. I suspect that registration via email and username might also void their need for a CAPTCHA.

I would really love the FUD about Signal to stop. The reason that there’s so much negativity is not because others are better. It’s because of a kind of selection bias: Signal is used so much, its flaws are getting fixed, and just because there are indeed a few things that still need to get better, others are getting a lot of unnecessary attention.

@nephros, I think Matrix can also be added to the list of “truly open protocols”, and possibly Signal now that they’ve again synced their repository.

7 Likes

Signal is not proprietary, and you are not bound to a single provider, it just doesn’t do federation. I’m pretty sure we’ve discussed this before, but federation doesn’t work if you aren’t ‘into’ computers. People don’t self-host their email, at most they pay some computer company to do so, and that computer company literally just outsources to Microsoft or Google. People don’t sign up for ‘weird’ email providers, they sign up for Gmail and Outlook. Older people still use the email address they got from their internet provider, but younger people are almost exclusively on Gmail. Practically, this means Google can introduce whichever breaking modifications to email they want, because 90% of the world population is already on Gmail, and the other 10% would then just have to suck it up and sign up for Gmail as well.

5 Likes

I don’t see an open government for the Signal protocol. Also, can you even get a signal-account without telling them your phone number? Perhaps not “proprietary” in the full definition, but it sure smells as such.

Individuals using Matrix will default to matrix.org. Still, if you prefer, you can self-host or choose another provider, and still communicate with the rest of the world. Also, organizations can host and set-up accounts for their users, to keep control. Just like e-mail. The French government and German universities do this. If they were to use Signal, they had to run their own servers and build their own apps, to point to these servers. And even then there would be no federation at all.

2 Likes

Not yet, but if you’ve read @rubdos’s post above, which you should have, it’s coming, because they’re aware that a user’s phone number still reveals something about the user. Also, that is a ridiculously twisted definition of ‘proprietary’.

Yes, you can self-host, if you’re a computer person. Yes, you can choose another provider, until that provider gets lazy or doesn’t agree with the latest changes to the protocol and decides not to implement them, instantly breaking compatibility. Matrix is nice, but please stop presenting it as an alternative to Signal or other ‘regular’ messengers. It has a different purpose and encryption is optional, shown off clearly by the fact that no other client even supports Matrix’s encryption, and for that matter no other client supports even half of the features of Element.

3 Likes

Let’s agree to disagree then.

1 Like

Hi Rubdos,

Really nice that you’ve taken the time to elaborate your viewpoints in this matter. As I assume that working on the whisperfish app is really time consuming. I’ll do my best to keep my response short and to the point.

  1. Good to see that signal is also making e-mail/username an option without registering a phonenumber.
  2. Group system is not that important to me (yet) , privacy and independency are the most import things for me (and society) Signal/Threema will be a major upgrade for me (still on sms)
  3. I trust the Swiss law more than the US (patriot act) where the government can peek without consent / notification on servers of any US hosted machine, which can bypass e2e.
  4. ReCapthca is does also some fingerprinting on your device and AI on your gestures, which in my point of view is totally unnecessary and creepy, especially by the tech imperialist Google inc.

That’s only if there’s a back door.

It’s time consuming, but it’s fun too. It’s my main hobby now.

The group system is mainly interesting from an engineering and illustrative PoV. Signal is actively working on getting rid of current privacy violations, while I generally find that Threema and others don’t spend this engineering effort. This is not limited to groups, that’s why I also mention unidentified delivery, and their other 40 blog posts that illustrate their efforts. That said, any libsignal-based messenger is probably an upgrade over SMS in some regard. Maybe the main exception being WhatsApp, but we still have to find out why exactly it’s terribly bad.

Re Swiss-vs-US, you make a valid point if I’m allowed to interpret your statement very broadly. Signal uses the principle of “trust on first use”. A US-hosted machine could actively intercept the first communication, which allows them to be a middle man. If they don’t intercept the full line of communication, this will be detected. This is however a MITM attack, and not per se an attack on the server. If you use Threema to communicate with someone US-based, this attack also happens. TL;DR: you don’t need a back-door to bypass e2e.

The only way to make sure, and this is a general thing for any messaging system ever, is that you need to check your “fingerprint” of the derived key, or manually check and confirm the public key of the other party. TOFU is best-effort, and sadly will always be best-effort.

I agree that recaptcha is totally creepy and Googly, but I also see the need of Signal to implement such a system. My hope is that they add more options to verify that you’re a human being; currently they only have reCAPTCHA and GCM, both being Googly.

TL;DR for the full post: I think Signal is moving in the right general direction, while the other competitors feel like a fad or a grab for power, staying where they started. Please do inform me if I tell lies about Threema et al., I’d be very interested in being proven wrong.

8 Likes

Lol, especially the “you are not bound to a single provider, it just doesn’t do federation.”: Hilarious. ;\

For the facts:

  • Signal has released some client source code in the past, which definitely was not the source of the official Signal client (due to being outdated, not offering the same functionality etc.).
    Someone in this thread sounded as if there has been a new code drop, but that does not make a difference, as long as the development is not done in the public or at least the complete source code of the current official Signal client and server is always published at the same time as their binary distributions (APK, RPM etc., but never the server anyway).
  • Moxie Marlinspike has threatened people who intended to reimplement libsignal / libaxolotl as FLOSS with legal action on multiple occasions (search the web for these incidents, some of them happened publicly visible at Github or Gitlab).
    Unfortunately they were always too afraid to proceed after that, even though Moxie has not a single valid argument for these threats; the least implausible one sounded like Oracle’s mantra “APIs are copyrighted” transformed to “APIs and Protocols are copyrighted, even for FLOSS reimplementations of FLOSS”.
  • Moxie made very clear (at numerous times) that he will actively fight against any federation between servers, which speak the Signal protocol to clients.

P.S.: It feels like I read and wrote this before: IIRC those promises (no phone number needed for registration, timely source releases, more openness in general) are quite old, and still only promises!?!

I don’t know why you would quote me but then edit what I actually wrote. You might want to provide some (credible) sources for that outrageous first claim. Also, the ‘someone in this thread’ is the person who knows a lot more about Signal than any of the other people (including myself, of course) who commented combined, and it would be worth actually reading what he’s saying rather than spreading far-out conspiracy theories. Signal is more than just Moxie, and @rubdos is not just creating a third party Signal client (which the Signal developers are very much aware of ), he’s collaborating with the Signal developers to make it easier for third party clients to build upon work already done by Signal.

How much ‘openness’ are you looking for, exactly? All of the source code is available and published under a free license, and they even do reproducible builds, making it possible to verify that the code distributed in their binaries is in fact the same code that you can see on their Github pages.

1 Like

Hey @olf

Just FYI, Whisperfish is being developed with full awareness of what you say.

First point: the client source code has always been public. It’s the server source code that’s been hidden away for way too long, and that’s finally been made public some weeks ago again. Of course, we’ll have to see whether they can keep that up now.
Development in the open is being worked on, and it’s much better since you probably last checked.
Like @nthn already hinted, I am in contact with Jordan Rose (from Signal) about collaborating to get as much code as possible upstream.

Re legal action, we’re aware of that, and I have written quite extensively about it in the past. The fact that I’m working together with Jordan doesn’t really change that statement, except for the fact that they are aware of our existence, and that they seem to tolerate us.

Re federation: I tend to agree with Moxie, and that actually makes me sad. Federation helps in distributing power, but it’s actually terribly difficult to have the privacy properties that they have right now in a federated setting. Actually, I should write a master thesis topic about that for a future student, but I’m afraid it’s more of a PhD-kinda-thing.

Re promises, they are quite old. The excuse there (and it’s just an excuse) is that it’s difficult to implement these things right and privately. However, they did implement these things a few months ago, and the only lacking thing is the actual exposure on the server (in terms of API) and on the UI. It’s coming, and I expect it before the end of 2021.

7 Likes

Open source for client/server is not the same as open governance and open development for the protocol. Many things are open source these days (e.g. Android), and while that’s nice, it still is one company holding all the marbles.

Regarding privacy: even if it’s true that Signals privacy really is great, it still can have access to a ton of metadata. A Matrix-provider might have even more metadata, but it cannot have metadata on the entire network. I run my own server, which I share with family. I’m pretty sure no one has access to the metadata but me.

Also, Matrix is working on fully decentralized P2P communication.

Well, being from Switzerland may not mean that much after what happened to Crypto AG

1 Like

… which @olf also mentioned, and to which I responded …

EDIT: I’d like to stress again that I’m not claiming that Signal Messenger LLC has become holy since three weeks. My point is that the situation is way better than what is generally portrayed by fans of Threema et al.

3 Likes