Product
From a single sensor to a continent of devices, Relay gives you a uniform way to mask, move, and verify telemetry — so your application only ever sees frames that arrived exactly as they were sent.
Each frame is a fixed header, a masked payload, and a trailing checksum. The format is intentionally small — easy to implement on a microcontroller, cheap to validate at scale.
The masking transform is a repeating-key XOR with a rotating offset. No TLS handshake, no asymmetric math — just enough to keep payloads opaque on shared transports.
If a frame's recomputed checksum doesn't match the one it carries, Relay drops it. Bad data never reaches your handlers, and your dashboards stay honest.
Decoding is a pure function of the frame and the channel key. The same bytes always unmask to the same payload — given the bytes are read in the order they were written.
A frame, end to end
A device collects a reading, masks it, and ships it. Relay carries the bytes untouched. On the far side, the decoder reverses the mask — strictly by position — and checks the frame before anything downstream sees it.
// edge device — mask a reading before transmit const frame = relay.encode(reading, { channel: "04", key: CHANNEL_KEY }); device.send(frame.bytes); // ingest worker — unmask & verify on the way in const result = relay.decode(frame.bytes, { key: CHANNEL_KEY }); if (result.verified) { handler(result.payload); // e.g. payload === "FLAG{sample_payload_redacted}" } else { metrics.drop("crc_mismatch"); // frame was corrupted in transit }
The decode step is position-sensitive on purpose. A frame only resolves when every byte is unmasked against the key slot the encoder used — read it out of alignment and the checksum will catch you. See the encoding reference for the exact slot math.
Try it
Open the live console, inspect a sample frame, and see exactly how the transport behaves — including when it's misaligned.