You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/WHITEPAPER.md
+30-5Lines changed: 30 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,8 @@ Modern web apps must render meaningful JSON on the client. HTTPS protects transp
15
15
16
16
FISE complements, not replaces: TLS, authentication/authorization, backend rate-limits, or cryptography for secrets. It is best suited where **data itself is the asset** (e.g., curated POI, pricing, recommendations, AI metadata).
17
17
18
+
FISE also supports **chunked, block-local pipelines** that enable **parallel encode/decode and streaming**, allowing clients to begin rendering **before** the full payload arrives.
19
+
18
20
---
19
21
20
22
## 1. Introduction
@@ -54,7 +56,8 @@ A few fetch calls and pagination often suffice to replicate valuable datasets at
54
56
2.**Security through diversity** — each app/session/request may use a different rule-set.
4.**Semantic obfuscation** — protect *meaning*, not transport.
57
-
5.**Cheap to run, costly to reverse** — microsecond-level ops; no universal, protocol-level decoder.
59
+
5.**Cheap to run, costly to reverse** — microsecond-level ops; no universal, protocol-level decoder.
60
+
6.**Streaming & Parallel-ready** — rules can be designed block-local, enabling **per-chunk** encode/decode and multi-core execution.
58
61
59
62
---
60
63
@@ -91,6 +94,11 @@ Interleave (data + salt + metadata [+ decoy]) into a **non-deterministic**, non-
91
94
### 4.6 Final Output
92
95
A string/byte stream with **no fixed structure** shared across deployments. There is **no protocol-level universal decoder**; decoding requires the **matching rule-set**.
93
96
97
+
### 4.7 Streaming/Framed Mode (optional)
98
+
- Payload is split into **chunks**; each chunk carries **local metadata** (rule id, offsets) and optional **HMAC bindings** (server-side verify).
99
+
- Interleave/drift parameters derive from **(ruleset, chunkIndex, bindings)** → **no global dependency**, so chunks can be **encoded/decoded in parallel**.
100
+
- A **super-header** specifies framing (`version`, `nChunks`, `flags`).
101
+
94
102
---
95
103
96
104
## 5. Decoding
@@ -102,6 +110,8 @@ Given a matching rule-set:
102
110
4. Reverse optional cipher stage.
103
111
5. Restore plaintext JSON for rendering.
104
112
113
+
> **Framed mode.** The client may **decode chunk-by-chunk** (possibly in parallel workers) and **incrementally render** while the stream is arriving. If a rule needs cross-chunk state, carry a **small deterministic state** between chunks.
114
+
105
115
---
106
116
107
117
## 6. Security Model
@@ -133,6 +143,11 @@ Attackers can run your app, hook decode functions, or dump plaintext **after** d
133
143
### 6.6 Rotation
134
144
-**Per-session** or **per-request** rule-set rotation drastically increases reverse-engineering cost and decoder maintenance.
-**Anti-replay**: include request/session bindings and **timestamp buckets** in each chunk’s meta.
149
+
-**Boundary hiding**: optional decoy/padding and variable chunk sizes.
150
+
136
151
> **Claim wording**: We do **not** claim “impossible to decode.” We claim **no protocol-level universal decoder**, and **significant per-target cost** under rotation, validation, and normalization-resistant channels.
137
152
138
153
---
@@ -164,6 +179,9 @@ Attackers can run your app, hook decode functions, or dump plaintext **after** d
Report **TTFR** (time-to-first-render) and **throughput** with N workers (server Node workers; client Web Workers/WASM). Typical chunk sizes: **8–32 KB**. Compare streaming vs. non-streaming P95/P99.
184
+
167
185
---
168
186
169
187
## 9. Deployment Guidance
@@ -183,6 +201,11 @@ Attackers can run your app, hook decode functions, or dump plaintext **after** d
- **Score**: aggregate survival metrics + integrity checks; published in Registry.
317
339
318
340
### 14.6 Rule Builder (UI + AI)
@@ -337,4 +359,7 @@ Automated suite to stress channels and layout:
337
359
- v0.3: WASM fast-path; AI rule-mutation loop; telemetry-backed fitness.
338
360
- v1.0: Rule Builder stable; signed packages; enterprise rotation policies.
339
361
362
+
### 14.10 FISE-Framed Profile
363
+
A standard profile for chunked streaming: header (`version`, `ruleset`, `nChunks`), per-chunk meta (bindings, offsets, HMAC), recommended chunk sizes, and **Registry tags**: `framed`, `streaming-ready`, `mobile-fast`.
364
+
340
365
> **Takeaway**: The ecosystem turns FISE from a library into a **platform**—safe programmability, verifiable quality, and community-driven diversity without exposing secrets on the client.
0 commit comments