Skip to content

Security model

This page describes how Rightra protects content and where that protection ends.

Encryption

The browser SDK generates a random 256-bit key for each work and encrypts every segment with AES-256-GCM.

  • Each segment has its own initialization vector.
  • The additional authenticated data (AAD) binds each segment to its content ID and index, so segments cannot be reordered or moved between works.

Key custody

After all segments are uploaded, the SDK sends the key to Rightra. Rightra wraps the key and stores it sealed at rest. A content item has one active key.

Playback key delivery

  1. The player generates an ephemeral ECDH P-256 key pair and creates a playback session with the public key.
  2. Rightra wraps the content key to that public key (ECDH with HKDF-SHA256) and returns it in the session response.
  3. The player unwraps the key in memory and decrypts each segment as it plays.

Sessions are short-lived. See Create a playback session.

Limits

The decryption key exists in page memory during playback. This is true of any browser-based protection system, and no browser DRM changes it. A determined user can capture decrypted media.

Rightra is designed for attribution rather than prevention. Every session carries a forensic watermark, so a leaked copy can be traced to the session that produced it.