WhatsApp vereist implementatie eigen protocol bij verbinding andere chatapps

WhatsApp gaat vereisen dat andere chatapps via WhatsApps eigen protocol berichten versturen. Vanaf donderdag moet het mogelijk zijn om te chatten met WhatsApp-gebruikers vanuit andere chatapps.

Dat eigen protocol is een aangepaste versie van het Extensible Messaging and Presence Protocol, ofwel XMPP, zegt Meta. Versleuteling van berichten moet via het Signal-protocol dat WhatsApp gebruikt of via een gelijkwaardig alternatief. De verbinding met servers van derden verloopt via HTTP, waarbij data is gestructureerd in XML-bestanden.

Meta zegt dat het bij gebruik van apps van derden niet kan garanderen dat end-to-endencryptie in stand blijft, omdat het geen controle heeft over de app aan de andere kant van de lijn. Daardoor zou het mogelijk kunnen zijn dat op de server van de derde partij iemand kan meelezen, zo zegt het bedrijf.

Bedrijven kunnen bij Meta aangeven dat ze hun chatapp willen laten werken met WhatsApp, waarna dat binnen drie maanden mogelijk moet worden. Of dat al is gebeurd, is onbekend. Meta neemt deze stap vanwege de Europese wet DMA, die donderdag ingaat. Het openstellen van WhatsApp moet concurrentie een sterkere positie geven. WhatsApp moet berichten, foto's, video's en voicememo's kunnen uitwisselen met andere apps, maar groepsgesprekken en videobellen hoeven nog niet te kunnen.

WhatsApp DMA interoperabiliteit
WhatsApps DMA-interoperabiliteit

Door Arnoud Wokke

Redacteur Tweakers

07-03-2024 • 13:44

50

Reacties (50)

50
48
30
3
0
13
Wijzig sortering
Versleuteling van berichten moet via het Signal-protocol dat WhatsApp gebruikt of via een gelijkwaardig alternatie
Huh? Hier ben ik wel benieuwd naar en ga ik eens verder induiken. Verschillende protocollen gebruiken binnen hetzelfde systeem: dat moet je toch ergens gaan vertalen? Hoe vang je dan E2EE af? Stel gewoon de (opensource-)library beschikbaar, maak dat verplicht en klaar. En hoe bepaal je wat "gelijkwaardig" is? Zijn er zat die beweren gelijkwaardig of beter te zijn, maar wat dan niet perse waar blijkt te zijn. :+
Hoe vang je dan E2EE af?
Hiervoor wordt het dubbeleratelalgoritme gebruikt. (Onder andere Signal gebruikt dit). Dit is hetzelfde systeem als dat door webservers wordt gebruikt met Perfect forward secrecy.

Je kunt het er en der wat documenten/YouTube filmpjes vinden hoe dit functioneerd. (In het Engels: Double Ratchet Algorithm )

Het algoritme zorgt ervoor, dat (vrijwel) ieder bericht een unieke versleutelingssleutel heeft, die wordt gedeeld met alle leden van een groep, en dat de leden van de groep alleen de berichten kunnen ontsleutelen van de momenten dat zij lid waren van die groep. (dus geen vroegere of latere berichten). En dan zodanig dat ook niet alle leden gelijktijdig online hoeven te zijn. Dus als één client bijvoorbeeld 2 dagen offline is (kapotte telefoon of zo), dan heeft dat geen impact op de rest van de groep. :)

Dus als een systeem aan bovenstaande voldoet, dan kunnen we het gelijkwaardig noemen denk ik?
Double Ratchet is uiteraard integraal onderdeel van Signal Protocol, dat is namelijk door hen (Moxie & Trevor) ontwikkeld. :P (Dubbelratel trouwens? Wie heeft dat verzonnen? oO Die heb ik echt nog nooit iemand horen gebruiken.) Maar anyhow: met enkel DR kom je er niet, dat is één van de functies van het gehele protocol.

Het enige dat ik kan bedenken dat “gelijkwaardig is”, zijn custom implementaties van SP. Maar dan is de vraag: als dit niet opensource is, hoe ga je dat controleren? En als het afwijkt: hoe zorg je dat het compatible blijft, want onder aan de streep moet de uitkomst precies hetzelfde zijn wil je het end-to-end compatible houden.

Volgens mij kom je in de praktijk eigenlijk altijd uit bij Signal Protocol wil je berichten kunnen uitwisselen met alle WhatsApp-gebruikers. Je kan het een andere naam geven en extra metadata erin proberen te rammen o.i.d., maar veel verder…? Potato, potatoe - zullen we maar zeggen.

Ik ben benieuwd of ze dit gewoon zo verwoord hebben om het breed te laten klinken (voor de toezichthouder), maar onder aan de streep heb je eigenlijk weinig/geen keuze. :’) Niet dat dat uitmaakt hoor, ik vind het prima en logisch; zeker omdat de EU beloofd heeft dat het niet als resultaat mag hebben dat E2EE onmogelijk wordt gemaakt, maar de bewoording is… wat vaag.

Het kan natuurlijk ook fout in het artikel staan of er ontbreekt iets dat het verklaart, kortom: straks maar eens uitgebreid de papers doornemen. :)

[Reactie gewijzigd door WhatsappHack op 22 juli 2024 18:33]

Uit https://engineering.fb.co...ing-interoperability-eu/:

Ik denk dat dat hiermee te maken heeft:
To send messages, the third-party providers have to construct message protobuf structures which are then encrypted using the Signal Protocol and then packaged into message stanzas in eXtensible Markup Language (XML).
Thanks! Zal het eens doornemen (link geeft nu een foutmelding). In wat je nu citeert staat eigenlijk dat Signal Protocol verplicht is. (Dus niet “gelijkwaardig”, er staat “then encrypted using Signal Protocol” - daar zit geen speling. :P) Enfin, ik ga het op m’n gemakje eens doorlezen - hoe het nu in ‘t artikel staat, als dat klopt, levert vraagtekens op.

-edit- Link in het artikel stelt:
In order to maximize user security, we would prefer third-party providers to use the Signal Protocol. Since this has to work for everyone however, we will allow third-party providers to use a compatible protocol if they are able to demonstrate it offers the same security guarantees as Signal.
Een protocol dat geheel compatible is met, en dezelfde garanties biedt als, Signal Protocol… Dan kom je volgens mij heel erg snel uit bij… ff denken… Signal Protocol. :+ Dit klinkt als “je mag best iets anders gebruiken, zolang je maar hetzelfde gebruikt”, maar kan aan mij liggen - misschien zie ik iets over het hoofd. ;)

Vind ik prima insteek trouwens hoor, maar een beetje belachelijk is de bewoording dan wel.

[Reactie gewijzigd door WhatsappHack op 22 juli 2024 18:33]

Ik lees dat persoonlijk anders (maar misschien is het helemaal niet anders?): ze hebben het liefst dat je Signal Protocol gebruikt, maar je mag ook een ander protocol gebruiken mits dat net zo veilig is. Maar dan heb je het probleem weer dat het ook compatible moet zijn, en dan moet er een bridge aan te pas komen denk ik. Weet ook niet of dat overigens de E2EE breekt. :+
WhatsApp moet berichten, foto's, video's en voicememo's kunnen uitwisselen met andere apps, maar groepsgesprekken en videobellen hoeven nog niet te kunnen.
Waarom komt die 'nog' vandaan? Komt die eis er wel in de toekomst?
Ja. De vereisten worden 'gefaseerd' ingevoerd.
Artikel 7:
https://www.eu-digital-ma...arkets_Act_Article_7.html

De TLDR:
Nu: Één op één tekst, foto's, video's, voicemail, bestanden
Over twee jaar: Groepsgesprekken tekst, foto's, video's, voicemail, bestanden
Over vier jaar: Bellen en videobellen (zowel één op één als groepsprekken)

Geen idee waarom op deze manier. Maar dit staat in de wet. En Big Tech zou Big Tech niet zijn als ze niet alleen het absolute minimum implementeren toch? ;)

(en er wordt ook beschreven dat eindtoteindversleuteling behouden moet blijven voor 'eigen gebruikers', enz, enz, enz.)

Edit: De eindtoteindversleuteling verduidelijkt.

[Reactie gewijzigd door lenwar op 22 juli 2024 18:33]

Over vier jaar: Bellen en videobellen (zowel één op één als groepsprekken)
Dus je kan pas in 2028 alle features gebruiken via een 3rd party client, tot die tijd zit je nog steeds best vast aan WhatsApp. Lekker geregeld. :') Zo moeilijk is het nou ook weer niet om die functies open te stellen.
Klopt.

Technisch gezien zou het allemaal niet zo spannend moeten zijn. Zeker voor een bedrijf als Meta. We zitten er hier natuurlijk veel op te zeuren, maar we kunnen niet ontkennen dat zij technisch en technologisch zeer grootse dingen doen. En daarmee moeten zij toch echt wel (ook) hele goede mensen in dienst hebben.

Maar!! :)
De DMA staat niet voor Dumb Meta Ass! De wetgeving is er niet om Meta, Apple, Alphabet, enz. te pesten. De wetgeving is er om 'machtige bedrijven' te reguleren. Hoe zinvol het daadwerkelijk is om met een andere client met de WhatsApp-client te kunnen praten is dus even afwachten. Het gaat er puur aan liggen of er andere 'grote' clients (ala Telegram, Signal, de berichtenapps van Google/Apple, enz.) het gaan implementeren.
Persoonlijk verwacht ik er niet te veel van. Waarom zouden ze interoperabiliteit willen hebben. "Het is toch veel fijner als iedereen 'hun' client gebruikt?" Maar goed. We gaan het beleven. Misschien zit ik er wel helemaal naast :)
Als er al clients komen die 'ook' WhatsApp gaan ondersteunen verwacht ik eerder dat het kleinere apps zullen zijn. Of nu ik er aan denk. Misschien komen er nu 'dedicated' derdepartij-clients? En dat kan dan wel een aardige zijn...

We gaan het beleven :)
ah kijk, totaal gemist deze tijdlijn van implementatie. Goed om te weten.
Ik vind groepsgesprekken wel een kernonderdeel van een chat app...
inderdaad, waarom zou dat nu nog niet onderdeel zijn van de eis voor het openstellen? juist groepsgesprekken is wat veel mensen nog in whatsapp houdt
Ze krijgen van Europa tot 2026 om dit te implementeren. Dan staat het ook in de DSA/DMA.
Mag toch hopen dat het nooit zo ver zal komen met groepsgesprekken. We zijn thuis al jaren van Whatsapp af, zul je zien dat je straks via Signal/Telegram alsnog in allerlei groepen terechtkomt.
Wees niet bang, Signal gaat dit soort interoperabiliteit niet implementeren. Dat kunnen ze namelijk niet doen zonder in te leveren op hun privacygaranties.
Waarom niet? Signale ontwikkelt nu ook de E2EE protocollen die andere applicaties gebruiken.
Signal doet meer dan alleen het Signalprotocol gebruiken. Heel Signal is erop ontworpen zo min mogelijk over zijn gebruikers te hoeven weten en toch de dienst te kunnen aanbieden. Interoperabiliteit met een dienst waarvan de eigenaar juist belang heeft bij het verzamelen en analyseren van metadata is daar direct strijdig mee.

Het is een beetje het Gmail-effect: ook al zit je zelf niet bij Gmail, toch kan Google een groot deel van jouw mailgedrag volgen via je contacten die er wel bij zitten.
dan kunnen ze prima wél doen, door whatsapp als dienst bovenop signal te bieden,
wilt u voor compatibiliteit óók op whatsapp beschikbaar zijn, dat kan, door DIT vinkje aan te zetten, Let op! wij kunnen uw privacy op whatsapp minder goed garanderen we zullen steeds middels een logo aangeven dat er whatsapp-deelnemers zijn zodat u daar rekening mee kunt houden in uw gesprekken
bron: toekomstige faq van signal.

[Reactie gewijzigd door i-chat op 22 juli 2024 18:33]

Als ze dat ooit zouden doen zou Signal dusdanig ver van zijn missie zijn afgedreven dat ze niet relevant meer zijn 8)7 .
Je kunt groepen die je niet leuk vind gewoon verlaten hè..

Daarbij vind ik Telegram een veel fijnere app. O.a. vanwege de ingebouwde vertaalfunctie. Als ik daarmee straks ook mee kan doen in WhatsApp groepen is dat alleen maar mooi.
Nadeel van Telegram is dat chats niet standaard E2EE is, tenzij dat ondertussen is veranderd.
Ik deels wel, zolang ik de Whatsapp App niet hoeft te gebruiken is dat voor mij al een plus.
Zelf heb ik alle andere chatapps opgezegd. Op Telegram en Signal kreeg ik namelijk spam die ik op die platformen niet uit kon zetten.

Betekent dit dat ik deze Telegram en Signal spam weer erbij krijg omdat ze kunnen interfacen met Whatsapp?! Of kan ik zometeen in Whatsapp aangeven dat ik helemaal geen berichten wil ontvangen van derden?
kans is best aanwezig dat je bepaalde mate van controle krijgt over hoe dit soort diensten omgaan met federatie, zelf zou ik iig zeker niet willen dat er zonder onderscheid maar alle signal gebruikers worden geblokkeerd (van telegram is dat wellicht anders) maar ik kan me prima voorstellen dat je bijvoorbeeld in kunt stellen dat alleen mensen van een whitelist afkomstig met je kunnen praten.

anderzijds ook via whatsapp wordt op grote schaal spam verstuurt dus het is niet een 'al die alternatieve BS verspreiden enkel spam en alleen whatsapp is goed'-verhaal verre van zelfs.
Ik hoop ok dat ik controle houd over wat er gebeurt met de federatie.

In mijn geval heb ik zeer beperkte spam op mijn whatsapp. Ik wil niet beweren dat Whatsapp het betere platform is. Het is me binnen Signal niet gelukt om te whitelisten, en hier kreeg ik in mijn geval dus veel rommel binnen.
Blijft een gek idee dat bedrijven waarschijnlijk miljoenen aan technici en advocaten betalen voor het uitzoeken van loopholes binnen de wet / hoe ze het zo onaantrekkelijk mogelijk kunnen maken.
Welke loopholes heb je het over?
https://www.eu-digital-ma...arkets_Act_Article_7.html

Het staat er toch gewoon letterlijk wat de vereisten zijn. Daar is geen woord mumbojumbo aan en hoef je geen jurist voor te zijn om het zo te vertalen, toch?

En Meta kiest er (uiteraard) voor om aan het absolute minimum te voldoen. Ik snap het wel vanuit hun perspectief.
Stel dat er drie of meer chatapps waren die alle allemaal even populair waren. In dat geval was Meta al jaren geleden begonnen met leuren van; "Kijk, wij gebruiken een standaard chatprotocol. Andere chatapps, ga allemaal alsjeblieft ook deze standaard gebruiken want we willen heel graag dat onze gebruikers ook met gebruikers van jullie chatapps kunnen communiceren." De realiteit is alleen dat ze op eenzame hoogte de grootste zijn en dat op elke mogelijke manier wilen blijven.
Nou ja... In Europa zijn ze dat.
In de VS zijn ze, naar wat ik begrijp, helemaal niet zo populair. Daar wordt iMessage en RCS verbazingwekkend veel gebruikt als het goed is.
https://meetanshi.com/blog/whatsapp-statistics/

In de VS wonen ongeveer 330 miljoen mensen, waarvan er 98 miljoen WhatsApp gebruiken. Dus dat is maar 1/3e van de Amerikanen.
Volgens diezelfde pagina is Nederland in de top-10 met WhatsApp gebruikers (92% van de Nederlanders gebruikt het)
Bedenk je dat WhatsApp voorheen geen onderdeel was van Meta, maar de grote concurrent van Facebook Messenger. Ik kan geen recente cijfers vinden, maar in 2017 gebruikte ~70% van de mensen in de VS Facebook Messenger, en ~30% WhatsApp. Qua bereik kan daar (naast reguliere SMS) geen enkele chatapp tegenop boksen.

Bron
Gemiste kans om voor een open protocol te gaan. Matrix.org zit nochtans samen met Meta in een werkgroep om te praten over het opzetten van onderlinge compatibiliteit zodat E2E gegarandeerd kan blijven.
Vanuit het standpunt van Whatsapp is het uiteraard beter om het zo moeilijk mogelijk te maken voor aanbieders van chat-apps om compatibel te zijn, want wie weet verliezen ze daarmee wel gebruikers.
Die gebruikers verliezen ze nu dus niet echt, nu afgedwongen wordt dat voor WhatsApp gesprekken het 'WhatsApp protocol' gehanteerd dient te worden.

[Reactie gewijzigd door CH4OS op 22 juli 2024 18:33]

Het is niet het WhatsApp protocol, maar het Signal protocol. En laat dat nu net....open source zijn.
Dus wat @zenlord zegt is niet waar, Signal protocol is een open protocol!
Het "WhatsApp protocol" is een aangepaste XMPP protocol, het "Signal protocol" wordt gebruikt voor het end-to-end encryption gedeelte. Staat gewoon in de tekst:
WhatsApp gaat vereisen dat andere chatapps via WhatsApps eigen protocol berichten versturen. Vanaf donderdag moet het mogelijk zijn om te chatten met WhatsApp-gebruikers vanuit andere chatapps.

Dat eigen protocol is een aangepaste versie van het Extensible Messaging and Presence Protocol, ofwel XMPP, zegt Meta. Versleuteling van berichten moet via het Signal-protocol dat WhatsApp gebruikt of via een gelijkwaardig alternatief. De verbinding met servers van derden verloopt via HTTP, waarbij data is gestructureerd in XML-bestanden.

[Reactie gewijzigd door CH4OS op 22 juli 2024 18:33]

Ik weet even niet wat de licentievoorwaarden van XMPP zijn, maar het is nog altijd een open standaard. Dus blijft het waar dat het nog steeds een open standaard/protocol is wat er gebruikt wordt.
Lees anders even wat er staat, het is een aangepaste versie, dat hoeft helemaal niet open te zijn? Als het zo open was, zou er geen Wet nodig zijn om dat wél te forceren, denk je ook niet?
Dat heeft niks met protocollen en alles met toegang tot API's en dergelijke te maken. Je kunt best hetzelfde protocol gebruiken, als je geen toegang tot de servers krijgt van Meta, heb je niks aan het gemeenschappelijke protocol (de taal).
"Meta zegt dat het bij gebruik van apps van derden niet kan garanderen dat end-to-endencryptie in stand blijft, omdat het geen controle heeft over de app aan de andere kant van de lijn"

Ja, en hoeveel waarde heeft die E2E met Facebook's volledige controle/inzage aan beide uiteindes en keys, waar zij deze uiteindes/clients natuurlijk niet zullen inzetten voor het genereren van metadata op basis van de content om weer terug te voeren naar hun servers via de achterdeur van de app...

Alleen al een kleine hash string van een gedeelde afbeelding kan meer dan duizend woorden zeggen over globale verbanden in verloop van communicatie en de interesses/belevingswereld/sociale omgeving van betreffende.

[Reactie gewijzigd door hachee op 22 juli 2024 18:33]

Maar daat gaat dat stukje natuurlijk niet per se over.

Op dit moment is het niet mogelijk voor derden om je berichten te lezen die onderweg zijn. Het is met het Signal protocol ook niet mogelijk, dat als ik in een WA-groep kom, dat ik dan oudere berichten kan lezen. Of wanneer ik er weer uit ga, latere berichten kan lezen. Vrijwel ieder bericht heeft een unieke sleutel.

Daar gaan die E2EE over. Van client naar client. Dat zijn de eerste twee E'tjes.

De WA-client kan uiteraard gewoon alles zien. Alles wat ik kan zien, kan de client ook zien, want die moet het in mensentaal aan mij kunnen weergeven. WA 'claimt' dat zij niet meekijken. (ik heb niet de expertise om het te controleren, maar ik geloof ze best). WA kan niet garanderen dat de app "AlternatieveWhatsAppski.ru" niet actief alle berichtjes doorsluist naar het Witte Huis, of niet transparant via een proxy werkt die daar alles versleuteld/ontsleuteld en niet pas op jouw telefoon.
Ben erg benieuwd wat de EU hiermee gaat doen.

Als alle chatapp diensten deze houding aannemen, gaat niemand tussen apps kunnen chatten. Wat ze nu doen is natuurlijk op het scherpst van de snede zitten. Zoals Apple dat ook doet. Heel jammer.

Ik hoop hierom dat de EU iets gaat opnemen dat ze verplicht het protocol van een of twee apps van de top te ondersteunen.

Het zou wél nog kunnen dat er een 'bridge' dienst komt. Dat zou wel cool zijn.
Ik moet zeggen dat ik sta te kijken van de hoeveelheid positief nieuws naar aanleiding van de DSA en DMA. De techreuzen lijken door te hebben dat het menens is en dat ze iets moeten doen. We moeten nog zien hoe serieus het allemaal is maar er zit beweging in.
Bedrijven kunnen bij Meta aangeven dat ze hun chatapp willen laten werken met WhatsApp, waarna dat binnen drie maanden mogelijk moet worden.
Ik ben wel benieuwd wat voorwaarden Meta stelt. Kan iedereen zomaar iedere applicatie aansluiten? Zijn er kosten aan verbonden? Mag je spam sturen? Moet je juist beloven om spam te filteren? En censuur?

Ik ben blij dat het mogelijk wordt om vanuit andere applicaties met WhatsApp te communiceren maar ik zie ook wel dat er nog wel wat uitdagingen zijn.
WhatsApp vereist implementatie eigen protocol bij verbinding andere chatapps
In de Meta verklaring staat:
As we continue to discuss this architecture with third-party providers, we think there is also an approach to implementing interop where we could give third-party providers the option to add a proxy or an “intermediary” between their client and the WhatsApp server. A proxy could potentially give third-party providers more flexibility and control over what their client can receive from the WhatsApp server and also removes the requirement that third-party clients must implement WhatsApp’s client-to-server protocol, i.e. maintain their existing “chat channel” on their clients.
Of het echt geëist gaat worden is dus nog de vraag. Dat hangt vooral af van de intenties waarmee Meta zulke gesprekken over interoperabiliteit ingaat. We kunnen vermoedens hebben, maar hoe Meta er echt in staat weten we pas als er informatie over interoperabiliteitsgesprekken naar buiten komt.

[Reactie gewijzigd door locke960 op 22 juli 2024 18:33]

Op dit item kan niet meer gereageerd worden.