Live Chat Visual Assist Platform Pricing Documentation Security
Sign in Request access
Visual Assist Security

Zero-knowledge by design,
not by policy.

Visual Assist sessions are end-to-end encrypted using ECDH key exchange and AES-256-GCM. Your page content is never readable by our servers. No session recording, no content storage, nothing to breach.

Visual Assist Live Chat Email
How it works

End-to-end encrypted in three steps

Every co-browse session performs a fresh key exchange. No keys are ever reused.

Key exchange

Both browsers generate ephemeral ECDH P-256 keypairs. They exchange public keys through our server. Private keys never leave the browser.

Key derivation

Each side independently derives an identical shared secret using ECDH, then derives the session encryption key using HKDF-SHA-256 with a unique per-session salt.

Encrypted streaming

All page content is encrypted with AES-256-GCM before transmission. Every message uses a fresh random IV and includes an authentication tag to detect tampering.

Zero knowledge

What the server sees vs. what it doesn't

Our server routes encrypted payloads but cannot decrypt them.

Server cannot access

  • Page HTML, CSS, and text content
  • User input and form data
  • Console logs and errors
  • Network request/response bodies
  • Annotations and drawings
  • Cursor positions and interactions
  • ECDH private keys
  • AES session keys

Server can access (metadata only)

  • Session ID and team ID
  • Session start/end timestamps
  • That events are flowing (not content)
  • Visitor consent status
Cryptographic standards

NIST-approved. No custom crypto.

All cryptographic operations use the W3C Web Crypto API backed by platform-native implementations. No third-party cryptographic libraries.

Key Exchange

ECDH P-256

NIST FIPS 186-4

Key Derivation

HKDF-SHA-256

NIST SP 800-56C

Bulk Encryption

AES-256-GCM

NIST SP 800-38D

Channel Auth

HMAC-SHA-256

FIPS 198-1

Key Exchange Protocol

Fresh keys. Every session.

Ephemeral ECDH keypairs are generated per session. The server relays wrapped keys but cannot unwrap them.

Agent Browser Helpr Server Visitor Browser
Generate ECDH P-256 keypair
key_offer {public key}
Generate ECDH P-256 keypair
Derive shared secret (ECDH)
Derive KEK via HKDF-SHA-256
key_answer {public key, wrapped session key}
Derive shared secret (ECDH)
Unwrap session key
AES-256-GCM encrypted channel
No session recording

Nothing to subpoena. Nothing to breach.

Visual Assist is live-only by design. When a session ends, all in-memory state is discarded. There is no replay, no server-side buffer, and no persistent storage of encrypted payloads.

  • No session replay capability
  • No server-side content buffer
  • No disk writes of session data
  • No data retention of page content
  • Session metadata retained for 90 days (audit only)
No recording. Ever.
Access controls

Consent, authentication, and authorization

Multiple layers of access control govern who can initiate sessions and what level of access they have.

Visitor consent

Configurable consent mode. Require explicit visitor approval before viewing, or use silent mode for seamless support.

Channel authentication

Time-windowed HMAC-SHA-256 tokens with constant-time comparison. Strict channel format validation.

Role-based access

Per-agent Visual Assist permission. Organization admins, team admins, and agents have distinct access levels.

Element blocking

Administrators designate page elements hidden from agents. Blocked content is excluded before encryption.

Session lifecycle

Automatic timeout after 30 minutes of inactivity. Stale session cleanup at 2 hours.

Rate limiting

Per-connection event limits and per-IP connection caps. Message size limits and protocol validation.

Defense in depth

Two layers of encryption. Independent.

All connections use TLS for transport encryption. On top of that, Visual Assist adds application-layer AES-256-GCM encryption. Compromising TLS alone does not expose page content.

Transport Layer TLS 1.2+
Application Layer AES-256-GCM (end-to-end)
Page Content
Industry comparison

How helpr compares

Most co-browse solutions rely on TLS only and store session recordings server-side.

helpr Typical solutions
EncryptionE2E AES-256-GCMTLS only (server decrypts)
Session recordingNone (by design)Server-side recording
Server content accessZero-knowledgeFull access
Key managementEphemeral per-sessionShared or server-managed
Data at restNoneRecordings stored
Consent modelConfigurable (explicit or silent)Varies
FAQ

Frequently asked questions

Can helpr see our customers' screens?
No. Screen data is encrypted end-to-end between the visitor's browser and the agent's browser using ECDH key exchange + AES-256-GCM. Our servers route the encrypted payloads but cannot decrypt them.
Does helpr record co-browse sessions?
No. There is no session recording, no replay capability, and no server-side storage of screen content. Once a co-browse session ends, the encrypted data and ephemeral keys are discarded.
Is helpr GDPR compliant?
Yes. Because screen data is end-to-end encrypted and never readable by our servers, helpr acts as a data processor with minimal data exposure. We support data processing agreements (DPAs) on request.
Does the visitor need to install anything?
No. The visitor's browser runs a lightweight JavaScript snippet (the helpr widget). No browser extension, download, or plugin required.
Can agents control the visitor's browser?
Only with explicit visitor consent. The visitor sees a prompt and must approve before the agent can interact. All remote actions are end-to-end encrypted. The visitor can revoke remote control at any time.
Can we mask or exclude sensitive fields?
Yes. Helpr includes a visual element picker — open your site in config mode, click on any element to exclude, and the CSS selector is saved automatically. Blocked elements are never captured, never encrypted, and never sent.
What happens if your server is compromised?
An attacker would see encrypted WebSocket traffic they cannot decrypt, connection metadata (IPs, timestamps), and session identifiers. They would not have access to screen content or DOM data. The encryption keys exist only in the browsers.

Questions about security?

Contact our security team for architecture reviews, compliance documentation, or penetration test coordination.