Skip to content

Commit c1ea37c

Browse files
committed
update tagotip welcome.md
1 parent 50339cf commit c1ea37c

1 file changed

Lines changed: 40 additions & 3 deletions

File tree

docs/tagotip/welcome.md

Lines changed: 40 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ PUSH|ate2bd...c0d0|sensor-01|[temperature:=32.5#C;humidity:=65#%]
1717
| | HTTP/JSON | TagoTiP | TagoTiP/S (encrypted) |
1818
|---|---|---|---|
1919
| **Payload size** | ~487 bytes | ~130 bytes | ~115 bytes |
20-
| **vs. HTTP/JSON** || 3.7x smaller | 4.2x smaller |
21-
| **TLS required?** | Yes | Recommended | No — AES-128-CCM built-in |
20+
| **vs. HTTP/JSON** || 3. smaller | 4. smaller |
21+
| **TLS required?** | Yes | Recommended | No — AEAD encryption built-in |
2222
| **Parse complexity** | JSON parser | Linear scan, no backtracking | Envelope + linear scan |
2323

2424
### Built for constrained devices
@@ -27,6 +27,7 @@ PUSH|ate2bd...c0d0|sensor-01|[temperature:=32.5#C;humidity:=65#%]
2727
- **Type-safe** — explicit operators for numbers (`:=`), strings (`=`), booleans (`?=`), and locations (`@=`)
2828
- **C-friendly** — predictable buffer sizes, no dynamic allocation, linear parsing
2929
- **Compact** — variable, value, unit, timestamp, group, location, and metadata in a single frame
30+
- **Transport-agnostic** — works over UDP, TCP, HTTP(S), MQTT, or any byte-capable channel
3031

3132
### Runs over anything
3233

@@ -41,10 +42,46 @@ TagoTiP is transport-agnostic. Pick the transport that fits your hardware and ne
4142

4243
### Encryption without TLS
4344

44-
Need security on LoRa, Sigfox, NB-IoT, or raw UDP where TLS is too expensive? **TagoTiP/S** wraps frames in an AES-128-CCM authenticated encryption envelope — only **25 bytes** of overhead, with built-in replay protection and integrity verification.
45+
Need security on LoRa, Sigfox, NB-IoT, or raw UDP where TLS is too expensive? **TagoTiP/S** wraps frames in an AEAD authenticated encryption envelope — as little as **25 bytes** of overhead, with built-in replay protection and integrity verification.
46+
47+
Choose the cipher suite that fits your security and resource constraints:
48+
49+
| Cipher Suite | Key | Tag | Envelope Overhead |
50+
|---|---|---|---|
51+
| **AES-128-CCM** | 128-bit | 8 B | 25 bytes |
52+
| AES-128-GCM | 128-bit | 16 B | 33 bytes |
53+
| AES-256-CCM | 256-bit | 8 B | 25 bytes |
54+
| AES-256-GCM | 256-bit | 16 B | 33 bytes |
55+
| ChaCha20-Poly1305 | 256-bit | 16 B | 33 bytes |
4556

4657
Read the full [TagoTiP/S Specification](/docs/tagotip/tagotips-specification).
4758

59+
## How it compares
60+
61+
### TagoTiP vs. other IoT data formats
62+
63+
| | TagoTiP | HTTP + JSON | MQTT + JSON | Protobuf |
64+
|---|---|---|---|---|
65+
| **Typical payload** | ~130 bytes | ~487 bytes | ~210 bytes | ~80 bytes |
66+
| **Human-readable** | Yes | Partially | Partially | No |
67+
| **Schema required** | No | No | No | Yes |
68+
| **Debug in a terminal** | Yes | Verbose | Binary framing | No |
69+
| **Build with `sprintf`** | Yes | Complex | Needs MQTT library | Needs code generator |
70+
| **IoT type system** | Built-in (number, string, bool, location) | Application-defined | Application-defined | Schema-defined |
71+
| **Metadata, unit, group, timestamp** | Native syntax | Application-defined | Application-defined | Schema-defined |
72+
73+
### TagoTiP/S vs. other IoT security
74+
75+
| | TagoTiP/S | TLS 1.3 | DTLS 1.2 |
76+
|---|---|---|---|
77+
| **Handshake** | None — 0 bytes | ~2–4 KB | ~2–5 KB |
78+
| **Round trips before first data** | 0 | 1–2 | 2–3 |
79+
| **Per-message overhead** | 25–33 bytes | ~29 bytes + TCP | ~29 bytes |
80+
| **Session state** | Stateless | Per-connection | Per-connection |
81+
| **Certificate management** | None | Required | Required or PSK |
82+
| **Works over LoRa / Sigfox / NB-IoT** | Yes | No | No |
83+
| **Works without TCP** | Yes | No | UDP only |
84+
4885
## Quick example
4986

5087
Push a temperature reading with unit, timestamp, and metadata — all in one frame:

0 commit comments

Comments
 (0)