Skip to content

Tessera vs Wire

Wire is a polished B2B messaging product: E2E encryption, team management, compliance, and an on-prem option. Tessera is a protocol — not a product — built for metadata privacy, ZK sender authentication, and decentralization. The right choice depends on whether you want a ready-to-use app or a privacy primitive to build on.

TL;DR

FeatureTesseraWire
TypeProtocol primitiveSaaS / on-prem product
Content encryptionAES-GCMMLS / Proteus (E2E)
Sender authenticationZK Schnorr / Fiat–ShamirImplicit (device keys)
Metadata privacy(ε,δ)-DP + blindingNone (server sees graph)
Central authorityNoneWire server (cloud or on-prem)
DP cover trafficYes (calibrated)No
DeploymentSelf-hosted protocolCloud or on-prem product
LicenseMITGPLv3 (open-source server)
Open sourceYes (MIT)Yes (GPLv3 backend)

What Wire does well

Wire is a mature B2B messaging product. It offers E2E encryption (Proteus historically, now MLS), a clean team-messaging UX, admin controls, compliance features for regulated industries, and an on-prem deployment option so enterprises can keep data inside their perimeter. The product supports group chat, voice/video, file sharing, and guest rooms, and is backed by a commercial company with support and SLAs.

For an organization that wants a ready-to-use, secure team-messaging product with admin controls and an on-prem story, Wire is a legitimate choice.

Where Wire falls short

  • Wire's server sees metadata. The server knows which users message whom, when, and how often — the full social graph of every account.
  • No ZK authentication. Authentication is implicit via device keys; there is no zero-knowledge proof of identity that hides the long-term identity.
  • No DP cover traffic. There is no formal bound on what an observer (or the operator) can infer from traffic patterns.
  • No per-recipient unlinkability. A user has a single identity on the server; cross-recipient linkability is trivial for the operator.
  • Commercial product, not a protocol. Wire is something you adopt and operate; Tessera is something you build with. Metadata is visible to Wire the company in the cloud product.

How Tessera differs

  • Protocol, not product. Tessera is an MIT-licensed primitive you embed in your own application; there is no managed cloud or vendor lock-in.
  • Metadata-private. Bucketed broadcast + DP cover traffic means no server observes the social graph.
  • ZK sender authentication. A Schnorr / Fiat–Shamir proof under a blinded pseudonym verifies identity without revealing it.
  • Decentralized. P2P gossip with pairwise local enrolment; no central authority, no operator that can be compelled for metadata.
  • Per-recipient unlinkability. Y′ = Y + t·G gives cryptographic unlinkability across recipients.

Detailed feature comparison

CapabilityTesseraWire
CategoryProtocol primitiveB2B messaging product
Content encryptionAES-GCMMLS / Proteus
Sender authenticationZK proofImplicit (device keys)
Metadata hidden from operatorYesNo
TopologyP2P bucketed broadcastCentral server (cloud/on-prem)
Formal privacy bound(ε,δ)-DPNone
Per-recipient unlinkabilityYes (blinding)No
Group chat / VoIPNoYes
Admin / complianceNo (protocol-level)Yes (product-level)
LicenseMITGPLv3 (server)

When to choose which

Choose Wire when

  • You need a ready-to-use team-messaging product with E2E encryption.
  • You need admin controls, compliance, and on-prem deployment.
  • You want group chat, VoIP, and file sharing out of the box.
  • Metadata exposure to your operator is an accepted risk.

Choose Tessera when

  • You need metadata privacy as a protocol property.
  • You need explicit ZK sender authentication.
  • You cannot have a central authority or operator.
  • You are building a custom application and want a privacy primitive, not an app.
  • You want a formal (ε,δ)-DP bound on traffic analysis.

Frequently asked questions

Is Tessera a competitor to Wire as a product?

No. Wire is a B2B messaging product with admin controls, compliance features, and a managed cloud. Tessera is an MIT-licensed protocol primitive for builders who need metadata privacy and ZK authentication inside their own application. They target different buyers.

Does Wire hide metadata from its own servers?

No. Wire's server sees which users message whom, when, and how often — the social graph of every account on that server. On-prem deployment moves the operator but does not eliminate the metadata concentration point. Tessera is designed so no server observes the graph.

Does Tessera support MLS like Wire?

Tessera does not implement MLS (Messaging Layer Security). It uses AES-GCM for content, Schnorr / Fiat–Shamir for authentication, and per-recipient blinded pseudonyms for unlinkability. MLS is a group-keying standard; Tessera targets one-to-one authenticated, metadata-private delivery.

Need metadata privacy a product can't give you?

Tessera is an MIT-licensed protocol primitive with ZK authentication, DP cover traffic, and no central authority — build with it instead of adopting a product.

pip install tessera