These days, the collaboration industry is abuzz with consumer-focused companies implementing end-to-end security in their messaging products. It started with Apple and its battle with the US government on access to iPhone data. Then, WhatsApp switched its messaging technology in such a way that no one could access messages except for the end-user client. These tools may seem like a good fit for workplace collaboration, but a quick look under the hood shows they’re not.
The workplace environment isn’t that simple. The cloud is constantly enabling more value-added features and functionality such as bots, artificial intelligence, and third-party integration. But for many cloud providers, “adding value” often means having full access to user data and content.
Enterprises are in search of the “Goldilocks” form of encryption — not too insecure, but also not too locked down. They need a balance between desirable access for groups such as IT and undesirable access from cloud providers, attackers, and more. Legal departments and information security teams also have a different set of requirements for access to information. In the end, enterprises need more flexibility to allow these additional features but also exclusive control over the management of their encryption keys and the confidentiality of their data.
Fully locked-down end-to-end consumer tools (such as WhatsApp) prevent data access from attackers and as well as the cloud provider (WhatsApp itself), but also prevent data access for anyone else, including IT. If you work for any business seriously considering “just use WhatsApp at work,” this should give you great pause.
On the other end of the spectrum, we have enterprise messaging providers such as Slack and HipChat. They typically use transport security combined with encrypted databases. This weaker form of security ultimately enables the provider, attackers, and perhaps enterprise IT (assuming such features are developed and made available) to have access. In this case, critical business data is potentially in the hands of many, and the more popular the tool, the more enticing it becomes for attackers. Most recently, Google launched Allo, promising much in the way of app performance, but with it made a huge sacrifice on privacy benefits. So how do we adapt the solution to maintain usability without compromising security?
Messaging services should be designed to ensure the value-added services themselves (such as message search, content transcoding, or integration with third-party applications) are visible to and authorized by enterprise IT. Most importantly, IT must be able to revoke access to these services in a way that can't be bypassed by the messaging service provider. “Just right” encryption begins with an open architecture for the secure distribution of encryption keys, allowing enterprises to gain exclusive control over the management of these keys and the confidentiality of their data.
The cornerstone of this architecture is called the key management server (KMS), a dedicated server responsible for creating, storing, authorizing, and providing access to the encryption keys that each client uses to encrypt and decrypt content. True end-to-end encryption then becomes possible through an architectural and operational separation between the KMS and the rest of cloud service. Think of them as being in separate realms, or trust domains, in the cloud. The KMS is in the “security realm” and all other component services that make up the cloud-based messaging app are in the “core.”
A basic message exchange in this model could go something like this: When a user wants to send content to a team member, the user’s client connects to its KMS and requests a key to encrypt the content. The key server authenticates the client, and vice versa, all in a way that is separate from the core messaging service. Then the client uses this key to encrypt the content and sends that to the core messaging provider, which delivers it to the team member. The team member follows a similar process and requests access to the key to decrypt the content.
Because the key server is under control of the enterprise, the enterprise can control what clients — including bots and other applications — get access to the keys. In addition, the enterprise can itself access information to handle situations such as forensic investigations, subpoenas for information, or digital loss prevention.