Comment by exceptione
14 hours ago
> RCS isn't an open platform in practice. It isn't even as open as SMS/MMS. It heavily depends on proprietary Google and carrier infrastructure in practice. We can start by replicating Google's approach and then we can work on only using carrier services for carriers where it's actually supported.
What is the point of RCS though? It seems to be strictly inferior to Signal. It seems a Google product meant to serve Google. I wouldn't hate it if GrapheneOS would totally ignore RCS. I fail to see any value in it, but maybe I am lacking information(?)
RCS was DOA from day one as far as I'm concerned. The carriers being involved in any capacity deeper than providing dumb pipes alone was enough to make it pointless, but no E2E in the base spec makes it extra pointless. They may as well have just extended SMS to be more capable, because that's what they've effectively created.
RCS is an extension of SMS and has quite literally been "SMS but more capable" from the start. The protocol on the wire looks a lot like MMS over LTE. Registration and communication mostly happens over SIP and RTP like in the latest MMS specs.
The early versions of RCS were barely implemented. Android and iOS didn't bother including clients, carriers didn't bother hosting servers because the spec was optional, and third party applications made by carriers were launched and then died because carriers couldn't explain to customers why their app was better than WhatsApp e.a. for those in the market for alternative messengers.
I think it's safe to say that RCS would've died a quiet death had Google not used it as a basis for their own Hangouts alternative built into their SMS client.
When RCS was first (soft) launched back in 2008, E2EE messaging practically didn't exist. Google slapped E2EE on top when they hosted their own iMessage alternative to bring it into the modern era but the base spec was still "what if MMS wasn't so outdated and restricted".
RCS was DOA from day one as far as I'm concerned.
Agreed. Google used a standard that virtually nobody (except some carriers) cared about to get a foot in the door for better interoperability with iPhones, to try to solve an issue that is mostly US-only (green bubble anxiety),
In most of the rest of the world nobody gives a shit about RCS since we have adopted other messengers (than iMessage or SMS/MMS) ages ago, most of which are already end-to-end encrypted.
I understand why GrapheneOS has to spend time on this (the US is a large user base), but it's sad nonetheless.
The RCS spec has encryption in its documentation. I think the current spec version is 4.0?
It has it in its current documentation (maybe 3.0 too? I forget, but it's new this year), and Apple and Google have had messages to themselves encrypted for a while (but not to each other, which is what the RCS docs are intended to resolve). It took many years to get it documented though (despite loudly claiming RCS is more secure the whole time), and AFAIK none yet implement it. Definitely none with all the documented things it needs to show to be compliant with the spec I read, e.g. key verification - I certainly don't see any of that in Google's "Messages" app! Though hopefully that will all change.
But honestly, in a non-open ecosystem, can you really trust that the near-exclusive two major players are actually playing by the rules? Apple has been relatively protective of its users on privacy stuff, but I've lost all trust in Google at this point.
Yes but there are different specs that “compatible” apps will have to adhere to, basically until everyone is always running auto updating software to the latest version supporting RCS 4.0
Long story short somebody preferred to “ship it” instead of waiting to figure out how to make encryption compatible between iOS and Android. I guess there’s some differences in how the key rings work, but Signal can figure it out and /they’re/ open source so it sucks they ever supported unencrypted messages. They just wanted to say it technically worked for rich text messages and reactions.
Almost none of my RCS conversations are encrypted. Who cares what's in the spec if nobody uses it?
I don't know much about RCS other than that carriers need to be involved, but there's a way to not involve them, which Google did for a while using some kind of compat-service (jibe or something?), and then they stopped doing it.
Never seen RCS working on any carrier ever since. I don't understand why Google couldn't just continue doing what it was doing. Why require carriers?
The intended purpose of RCS was to be federated between carriers, just like SMS. If you centralise it then it's just a worse version of any of Google's abandoned chat apps. But there's a realpolitik reason to insist on centralised RCS: because it's already got the reputation of decentralisation, it makes it look like Google is better than it actually is.
3 replies →
From [0], it seems that RCS can use the cellular signal instead of LTE or 5G:
> In cases where RCS is able to operate over cellular networks without data, it supports messaging as well as file transfer, enriched calling, and more.
[0]: https://en.wikipedia.org/wiki/Rich_Communication_Services
In LTE and 5G there exists no cellular signal without data. That was a 2G/3G thing. Since 4G everything is data. The separate sms and voice services are gone. And 3G is rapidly being deprecated.
That's not quite true. VoLTE was an optional part of 4G in the beginning. I had one of the gaming ASUS phones that shipped with 4G, but no VoLTE. 6 months after getting it, the US phone carriers conspired to make VoLTE mandatory for connecting to their towers, effectively bricking my device. ASUS never issued the firmware update that would have enabled the feature in the modem, which had the capability, and the community hack to enable it never worked for me.
2 replies →
It's true that it's all packet-switched rather than circuit-switched, but IMS traffic is still handled differently than regular data traffic. (The most user-visible implication of this is the QCI difference: cellular phone calls are much more reliable at poor signal strength and high congestion than over-the-top VoIP calls).
The point of the exercise is for Google and Apple to maintain control over the ecosystem.
RCS is technically superior (protocol, transport, security, all of it) but is captured from the start on the technical level by design by the big players. From the perspective of the vast majority of users who have very limited technical awareness, it was silently slipped in as an upgrade at one point or another. This means that those not adopting the proprietary BigTech solution are perceived as being difficult by insisting on using software that's now perceived as outdated or as otherwise mildly incompatible.
GrapheneOS does not want to adopt RCS for public perception. It is still a better option than SMS/MMS and providing it is beneficial. GrapheneOS will still recommend using better platforms and protocols but RCS being bundled and cross platform are great reasons to implement it.
Suppose GrapheneOS becomes highly popular. Then I have to fight the average Joe who insists RCS is fine enough.
I understood from other comments that RCS is the default communication channel in N.America an I can sort of see why you want to give people a somewhat less worse option here than Google's Messenger. But RCS should not be the default imho, because lazy people gonna be lazy. So I hereby endorse you to gently push newcomers towards a safe and privacy friendly default by pre-installing Signal or whatever meets the bar and give it a prominent place.
Eh, I don’t think you have to include Apple here. If it were up to them, the iPhone would still have zero RCS support right now. The current implementation of RCS, even in iOS 27 beta, is clunky.
To me, the only they’re trying to maintain control of is AppleOS-to-AppleOS text communication.
> To me, the only they’re trying to maintain control of is AppleOS-to-AppleOS text communication.
Yes, exactly. Apple and Google are both acting to maintain control and this has resulted in a standard that improves functionality but is effectively poisoned at the technical level. Left to their own devices I'm sure Apple would have preferred to stay with their original solution that is even more closed off.
Idk, I mean RCS on iPhone is just SMS/MMS but fixing like 90% of the issues. I don’t find it that clunky.
1 reply →
The point is to access an e2ee protocol bundled by default on many devices, and is cross-platform.
GrapheneOS does recommend using superior platforms like Signal, but that is 3rd party, and thus has adoptability issues in convincing people to use it. Just because better platforms exist does not mean RCS should be ignored.
Thanks for clarification. Anything first party from Big Tech is a lost cause privacy wise. At the same time, nobody uses it (maybe that is different in the USA, don't know). So for me this would be ultra-low prio as I (and I expect almost every other GOS user) will never use it. But I believe GOS knows what it is doing.
Nearly everybody uses it in the USA. It's very common to text people through the default messaging app on your phone there (probably an outgrowth of the popularity of iPhones and iMessage), and backup options would be Instagram, Snapchat for a certain demographic, or Facebook messages. Whatsapp is only for messaging foreigners, and Signal/Telegram are for messaging your drug dealer.
5 replies →
I assume many people would use it due to SMS concerns and difficulty having people move to other platforms. I would personally use it as a fallback to Signal since my current fallback is SMS, which I dont like.
If the protocol is properly e2ee, it does not matter who backs it or hosts it. GrapheneOS would be in control of the client which is what matters in an e2ee system.
1 reply →
In the US everyone with an iphone uses RCS, so you'll often have family group conversations on it and so on. Whatsapp or signal are comparatively rare (although more common for anyone with overseas family naturally)
1 reply →
RCS's point is to deliver ads. It is its first purpose. The way I see the situation, the point for Graphene to implement RCS is to prepare for the foreseeable deprecation of SMS. Who knows when it will happen, but better start working now than wait and get stranded when it'll happen. I'm pretty sure RCS implementation will take a long while.
It's nice to be able to send/receive photos with more than 13 pixels in them.
I believe it was meant to be federated, like SMS, and then in practice it wasn't. With Signal you depend on your carrier and on Signal - with SMS you only depend on your carrier.
RCS allows higher resolution pictures than MMS.
RCS provides far better support for group chats, many small feature improvements and end-to-end encryption (E2EE) via Messaging Layer Security (MLS). E2EE for talking to GMS Android and iOS users without them needing to install another app is the main reason we care about it, but far better group chat support matters too. iPhone users very often don't want to have SMS/MMS users in their group chats.
This is a very US-centric (and maybe Canada) thing though? Most of the rest of the world doesn't really use or care about iMessage, even on iPhones. So, I think it's rather
-US- iPhone users very often don't want to have SMS/MMS users in their group chats.
The rest of the world is using WhatsApp, WeChat, Telegram, Snapchat, LINE, etc. for group chats (for better or worse), even on iPhone.
2 replies →
All carriers I've tried in my country have even disabled MMS entirely. They're not running RCS servers either, though, everyone is on WhatsApp anyway.
In theory carriers could increase the max resolution for MMS now that 3G is essentially dead, but I doubt they will now the slow move to RCS has started.
Perhaps it's different in other countries, but I've never seen anyone use MMS. (Everyone uses WhatsApp nowadays, but even before WhatsApp existed, I never saw anyone use MMS.)
I've seen people try, only for it to never actually work (images either compress horribly, to the point there's no reason even sending it, or just fail to send).
MMS bring broken since day 1 in my experience is probably the reason I jumped on internet chat and email, since those actually work as advertised (sure, they has some practical limits, but they tell you about those!). I probably would have sent my mum that image over MMS if MMS actually every worked. Since it never did, using a difference service was a must.
Then again, this feels like an extension of the rest of the phone system. Anything beyond calls between two people, SMS and data that involves connecting to the phone system has always (in my experience) been either janky or broken. No wonder I try to use anything else given the opportunity.
It depends heavily on country, yes. USA is extremely light on WhatsApp, and MMS use is widespread (and has been free for a long time now, and SMS even longer). RCS is a mostly silent upgrade for USA.
I'm not sure which of the two is better tbh. Utterly dominated by a Facebook-owned system, or using something that's crappy enough that people spread out to a variety of systems?
2 replies →