DeWEB:链上网站与 tape:// 地址DeWEB: on-chain websites and tape:// addresses

网站字节存在链上、地址形如 tape://4246.0.tape,打开时逐字节校验哈希;含规范 v0.2 的解析流程、上传方式与费用。site bytes live on chain under addresses like tape://4246.0.tape, verified byte-by-byte on open; includes the spec v0.2 resolution flow, upload paths and costs.

DeWEB 是 TapeOut 对「去中心化网站 + 消息」这一层的称呼。网站文件写在链上合约里,地址形如 tape://4246.0.tape/,打开时由客户端直接从链上读取并逐字节核对哈希,不依赖网站主人的服务器。

网站如何长在链上

一枚电路开通容器后,容器就是它的链上账户。网站文件从网站仓库合约(SiteRegistry)读出,按 24,000 字节一块存储,单个文件最大 8.4 MB。

flowchart LR A["tape://4246.0.tape"] --> B["解析出处理器合约"] B --> C["由链号加处理器编号加电路编号<br/>唯一算出容器地址"] C --> D["检查电路是否存在<br/>容器是否已开通"] D --> E["从 SiteRegistry 读文件块"] E --> F["逐块核对长度与 SHA-256"] F --> G["隔离渲染"]

打开一个地址的解析流程

规范 v0.2 规定客户端按固定顺序处理,任何一步对不上就拒绝显示:

  1. 1
    找到处理器读工厂合约,按链号拿到对应处理器合约地址。
  2. 2
    算出容器地址由「链 + 处理器合约 + #ID」唯一算出,不是任何人自报的。
  3. 3
    检查状态电路是否存在、容器是否已开通、是否被客户端屏蔽。
  4. 4
    检查开通状态遵守规范的客户端只显示已开通的名字。
  5. 5
    读文件从网站仓库合约按块读出文件清单与内容。
  6. 6
    逐字节校验长度必须等于声明大小,SHA-256 必须等于链上记录。
  7. 7
    隔离显示每个网站独立运行,不能读写用户数据或影响其他网站。

两条安全底线:每次读取要至少 2 家不同运营方的节点给出完全相同结果,任何不一致就拒绝(不取多数);打开网站时所有文件钉在链上同一区块高度读取。

打开方式

在哪里怎么输入需要什么
任何浏览器https://4246-0.tapekit.org/(官方网关)什么都不用装
浏览器地址栏快捷搜索配置一次后输入 tape 4246.0.tape搜索引擎设置
浏览器扩展tape + 空格 + 4246.0.tape安装扩展
网页内链接web+tape://4246.0.tape/在网关首页允许一次
桌面应用(计划中)tape://4246.0.tape/应用向系统注册协议

上传与开通

准备网站的要求:只能是纯静态文件、一律用相对路径、文件名只用英文、每个文件先算好 SHA-256。想拿到「100% 链上」标记,HTML 与 CSS 里不能引用任何链外地址——字体、脚本、统计代码都要自托管。

方式说明
HashPort 控制台托管服务,选电路、拖入文件夹、确认两次钱包签名,其余几十笔上传交易由一个临时钱包代签
直接调用合约putFile 写入第一块(≤24,000 字节)、appendChunk 逐块追加、setFallback 设置单页应用回退页、removeFile 删除
社区容器工厂一键「选号 → 铸造 → 流片 → 开通容器」,用 1 个 NAND 流片,成本最低

上传成本只有链上 gas,约每 MB 0.01–0.03 BNB。

多链部署

X Layer 主网已上线处理器工厂、电路容器、网站仓库与 TapeSend,Base 仍在计划中。网站仓库与名字绑定合约在两条链上的地址不同,规范客户端已按链内置了对应地址;开通费用 X Layer 为 0.08 OKB。

BEM 挖矿只在 BNB Chain 上:X Layer 上可以建处理器、开容器、发消息、放网站,但不产出 BEM。

链上 Linux 演示

2026-09-07 官方发布「在 L1 主网上跑 Linux」演示:主线 Linux 6.5.12(rv32ima、无 MMU、busybox 用户空间),16 MB 内存存在 16,384 个页合约里,每次 tick() 最多执行 1,024 条指令,开机到 root 登录约 4,180 万条指令。演示中机器的所有者就是一个电路容器。这是技术演示,不是可用系统。

社区链上应用

截至 2026-09-25 扫链,共 51 个写过文件的链上网站:社区真实应用 39 个(BNB Chain 36、X Layer 3),官方站点 2 个,其余为测试与模板页。

应用类型
tapeout.space把所有链上网站画成一张图,带社区网关与一键上链工具
TapeWeb全网链上站点查看器
容器工厂一键开容器,选号 → 铸造 → 流片 → 开通
TapeChat / DeQQ / TAPQQ基于 TapeSend 的聊天客户端
Perpetua / NAND Driver / C3S生命游戏、21 个门的自动驾驶小车、反射电路研究
TAPE STRIKE / Neon Reliquary链上游戏,前者 600 KB 全部写进 BNB Chain

第三方项目不代表官方背书,链接与状态请以访问时为准。

与普通网站的区别

维度普通网站DeWEB
内容存放服务器与 CDN链上合约,按块存储
能否被替换站长随时可换版本与哈希公开可核对
下线风险域名、服务器到期即失效链上记录不因单点停机消失
修改成本几乎为零每次改动都要写链

继续阅读:消息层见 TapeSend,读取工具链见 TapeKit,应用创建见 TapeCode。

How a site lives on-chain

Three steps take a site on-chain:

  1. Bind: use SiteRegistry to bind the site to the container identity.
  2. Publish: release the files through HashPort.
  3. Visit: open it through tape://.
flowchart LR A[Bind via SiteRegistry] --> B[Publish via HashPort] B --> C[Visit via tape://] C --> D[TapeKit fetches and checks]

How a tape:// address gets opened

The browser derives the container address from the name, reads the files back from the chain chunk by chunk, and shows nothing until every byte checks out.

  1. Find the processor: read the factory contract to get the processor contract address.
  2. Derive the container address: it is computed from "chain + processor contract + #ID", not self-reported, so nobody can impersonate another site.
  3. Check the state: does the circuit exist? Is the container open? Is it blocked by this client?
  4. Activation check: a spec-compliant client only shows activated names.
  5. Read the files: read from the SiteRegistry repository contract, stored in 24,000-byte chunks, each file up to 8.4 MB.
  6. Verify byte by byte: the length must match the declared size and the SHA-256 must match the on-chain record, or it is not shown.
  7. Render isolated: each site runs on its own and can harm neither you nor other sites.
Two baselines: every read needs at least two nodes from different operators to return exactly the same result, and any mismatch is rejected (no majority vote); all files are read as of the same block, so a site is never half old and half new.

The tape:// spec v0.2

The tape:// spec v0.2 (2026-09-13, draft) governs exactly four things: URL format, address resolution, verification, site isolation. It does not cover how files are uploaded, how a normal browser visits them, or how a wallet is built. Three parts matter most to developers:

  • Site isolation (§7): an on-chain site may be malicious, so the shell must keep it from harming you, other sites, or the shell itself — one origin per site, no privileged execution, restricted network requests and popups.
  • The "100% on-chain" mark (§8): only sites that pass both static scans and runtime checks show "100% on-chain".
  • The immutability promise (§15.1): the spec separates "what never changes" from "what may change" and sets version-number rules.

What to open it with

WhereHow to typeWhat you need
Any browserhttps://4246-0.tapekit.org/ (official gateway)nothing to install
Chrome address-bar shortcuttape+ Tab then 4246.0.tapeset up once in search settings
Chrome extensiontape+ space then 4246.0.tapeinstall the extension
Web linkweb+tape://4246.0.tape/allow once on the gateway home
Desktop app (planned)tape://4246.0.tape/the app registers the protocol

The community builds openers too: the Wafer desktop browser (Mac beta) and a browser extension with a configurable gateway. Both are third-party — vet the source before installing.

How to put a site up

A. HashPort console (hosted): pick a circuit, drag in the site folder, sign; it handles hashing and chunking. You confirm 2 wallet signatures and a temporary wallet signs the rest of the uploads; the cost is on-chain gas only, about 0.01‒0.03 BNB per MB, the service fee shows 0 BNB, and binding your own domain is optional and free.

B. Call the contracts yourself: putFile writes the first chunk (≤24,000 bytes), appendChunk appends, setFallback sets the single-page-app fallback, and removeFile deletes.

Even with no circuit skills you can open a container in a minute: the community "container factory" runs pick a name, mint, tape out, open the container, using one NAND for the lowest cost.

Before publishing: static files only, always relative paths, prefer English file names, compute each file SHA-256 first; to earn the "100% on-chain" mark, the HTML/CSS must not reference any off-chain address (self-host fonts, scripts and analytics).

Does activation cost anything

Accounts conflict: the spec says 0.08 BNB per 30 days (pay 1‒120 months up front, non-refundable); HashPort shows a 0 BNB service fee with free domain binding; the on-chain monthlyFee() currently reads 0. As of writing it is 0 on-chain while the docs lag behind, so trust the amount your wallet shows.

Activation is only an official-client convention to show activated sites; it does not lock the data away — anyone can read the chain.

A hash is a file fingerprint: it proves you fetched the published copy, not that the content is true.

What it changes

  • Blocking cost: from blocking one IP to blocking a whole chain.
  • Ownership: a site finally belongs to whoever holds the private key.
  • Security: from trusting institutions to byte-by-byte hash checks.
  • Asset: sites become tradeable, financeable and cash-flowing.
  • Publishing: digital content can be permanent for the first time.

Still early

Storage cost, read speed and UX are all still early — do not treat it as a finished internet.

On-chain Linux: a technical demo

On 2026-09-07 the founder posted a demo he called "the first time Linux ran on an L1 mainnet": every instruction executed by a BNB Chain mainnet transaction, all state stored on-chain. He compared it with Cartesi — Cartesi runs Linux on an off-chain node and the L1 only recomputes a step when there is a dispute.

The official on-chain Linux page shows the demo running mainline Linux 6.5.12 (rv32ima, no MMU, busybox userland):

  • 16 MB of memory lives in 16,384 page contracts;
  • each tick() call runs up to 1,024 instructions;
  • from boot to the root login prompt it ran about 41.8 million instructions;
  • the "machine" is owned by a circuit container.

It is not about speed — it is about proving that every step of computation can be put on-chain for anyone to check.

Community DeWEB apps at a glance

See DeWEB Zone for sites already built.