1# llimphi-wasm-net23*Read this in English: [README.md](README.md).*
45Transporte P2P para distribución de apps WASM Tier 3.
67Un protocolo de stream mínimo sobre `BrahmanNet` (card-net, la malla libp2p
8TCP+Noise+Yamux+Kad compartida):
910- `serve_blobs` levanta un responder que, por cada stream entrante en
11 `/llimphi-wasm/blob/1.0.0`, atiende un `Get{hash}` sirviendo el bytecode
12 de un `DiskStore` (o `NotFound`).
13- `fetch_blob` abre un stream a un provider y pide un blob por hash.
14- `fetch_blob_dht` descubre providers por la DHT y prueba con cada uno.
15- `RemoteSource` envuelve lo anterior como un `BlobSource` síncrono, para
16 que la cadena `resolve→verificar` de `llimphi-wasm-dist` corra sobre la red
17 sin enterarse del transporte.
1819El framing copia el de minga (`[u32 LE len][postcard]`). La integridad NO se
20confía a la red: `llimphi-wasm-dist::resolve` rehashea el blob recibido
21contra el hash pedido, así un provider malicioso no puede colar otro wasm.
2223---
2425Parte de **llimphi** — ver [llimphi](../LEEME.md).
Transporte P2P para distribución de apps WASM Tier 3.
Un protocolo de stream mínimo sobre BrahmanNet (card-net, la malla libp2p
TCP+Noise+Yamux+Kad compartida):
serve_blobs levanta un responder que, por cada stream entrante en
/llimphi-wasm/blob/1.0.0, atiende un Get{hash} sirviendo el bytecode
de un DiskStore (o NotFound).
fetch_blob abre un stream a un provider y pide un blob por hash.
fetch_blob_dht descubre providers por la DHT y prueba con cada uno.
RemoteSource envuelve lo anterior como un BlobSource síncrono, para
que la cadena resolve→verificar de llimphi-wasm-dist corra sobre la red
sin enterarse del transporte.
El framing copia el de minga ([u32 LE len][postcard]). La integridad NO se
confía a la red: llimphi-wasm-dist::resolve rehashea el blob recibido
contra el hash pedido, así un provider malicioso no puede colar otro wasm.