EMS launches Matrix bridging for Signal

October 06, 2021

EMS, Element’s Matrix hosting platform, has launched a fully managed Signal Bridging service (based on Matrix community contributor Tulir's open source mautrix-signal bridge) to help enterprises address all sorts of issues around the use of Signal in the workplace.

The fully managed Signal Bridging service allows EMS customers to:

  • Send messages between Element and Signal
  • Connect habitual Signal users with the rest of the organisation
  • Ease a migration from consumer-grade messaging to enterprise collaboration
  • Bring auditing and transparency to work-based Signal conversations

Leveraging the Double Ratchet

Signal and Matrix both provide end-to-end encrypted communication, radically different in some ways - but similar in others. For instance the end-to-end encryption used within the Matrix open standard (Olm) is built on the Double Ratchet Algorithm popularised by Signal. And it’s an extended version of Olm (Megolm) that enables Matrix to support end-to-end encryption between thousands of devices in large discussion rooms.

We’d even go so far as to say that if you *wanted* to put all your messaging eggs into one centralised walled garden basket, Signal is probably the most sensible option. It doesn’t have an ad-funded business model, and it doesn’t productise its users. Kudos.

Signal is, however, consumer-grade only (whereas Element covers personal, community and enterprise use cases). You put all your trust in the single deployment run by Signal, rather than selecting your own trusted instance.

Conversely, even baseline enterprise functionality (Single Sign-On, access control and the like) means the workforce gets easy-to-use secure messaging along with structured group discussions, chat rooms that support custom and third party apps, and single click links to protected files.

Enterprise-grade messaging also eradicates a bunch of shadow IT issues. Consumer apps tend to reveal telephone numbers (far from ideal in a BYOD world) and create problems when used in a workplace because there’s no option for transparency, auditing or - therefore - compliance.

Consumer messaging apps can’t offer enterprise back-up, mobile management or functions such as remote wipe.

Navigating out of the walled garden labyrinth

People turn to consumer messaging apps when there’s no enterprise grade alternative, creating a fragmented workforce spread across a labyrinth of walled gardens.

Introducing Element, and having it bridge to consumer messaging apps such as Signal, gives companies a natural migration path out of the messaging maze. Users initially stay in the app they are familiar with, and then switch to Element as they see the benefits of a messaging platform that’s integrated with the rest of the enterprise.

With EMS now offering bridging services for Microsoft Teams, Slack, WhatsApp, Signal, Telegram, Discord and IRC the entire workforce can be quickly connected and begin to migrate.

What does (and doesn’t) the bridge do?

The EMS Signal Bridging service connects a user’s Element account with their Signal account. Either app can be used as the ‘primary’ account, as the EMS bridge puppets activity in both directions (from Element to Signal, and from Signal to Element) including invites. However, the bridge doesn’t natively support voice and video. The bridge also breaks end-to-end encryption for the bridged rooms as it needs to adapt Signal’s Double-Ratchet to Matrix’s Olm/Megolm. Only fully native Matrix rooms will be end-to-end encrypted.

What does it cost to cross the bridge?

Signal bridging service is US$0.50 per remote active user per month - a remote user is counted as active if they send messages over the bridge from the Signal side during the billing month.

Is EMS powered Signal Bridging suitable for personal use too?

Yes it is, but we’re working on something specifically aimed at the personal use case which should be ready for launch very soon...




Related Posts

By the same author

Thanks for reading our blog— if you got this far, you should head toelement.ioto learn more!