Ksana
EN

公开 signet

瞬间确认,
最终在比特币上落定。

Ksana 是一条智能合约链:约五秒确认,并把每个区块写进比特币。哪些区块算最终,只由比特币的链决定,中间没有跨链桥,没有委员会,也没有排序器。

  • 约 5 秒确认
  • 比特币 6 个确认后最终
  • CPU 挖矿
  • Rust 合约

01一笔操作的一生

一笔操作,
三道印记。

每笔操作都要经过三道印记,一道比一道更有分量。钱包会显示它走到了哪一道;应用按涉及的金额,决定等到哪一道。

  1. 约 5 秒

    快轨确认

    出块者把你的操作收进一个快轨区块,每个节点都重放一遍。新状态立即生效:余额变了,合约也看得到。

  2. 下一个比特币区块

    已写入比特币

    区块头和条目随一笔结算交易写进比特币。从此任何人都能从比特币上读到它们,谁也扣不下来。

  3. 6 个确认,约一小时起

    BTC 最终

    每个节点和索引器都按同一条规则,从比特币的链上判定最终性。要推翻一个最终的区块,就得重组比特币本身。

要等多久,为什么

02工作原理

上有快轨,
下有比特币。

Ksana 用自己的工作量证明链换取速度,把一切需要长久留存的交给比特币:每个区块的记录,以及哪些区块已经最终的判定。

快轨约 5 秒确认

比特币约 10 分钟一块

  • 快轨确认≈ 5 秒
  • 已写入比特币下一个比特币区块
  • BTC 最终6 个确认
  • 结算

示意图,未按比例:一个比特币区块约跨过 120 个快轨区块。

  1. 出块者挖出快轨区块

    人人都能挖,用普通 CPU 跑 Argon2id。同时挖出的区块不会被丢弃,而是并入一个区块 DAG(GHOSTDAG);每个区块都写明它看到的比特币区块,也就是它的锚定。

  2. 结算把它们写进比特币

    一对比特币交易,先提交、后揭示,在 Taproot 见证里装着紧凑的区块头和操作本身。一批转账只占几百字节的见证数据。

  3. 由比特币判定最终

    一个区块的数据在比特币上有了 6 个确认,每个节点只凭比特币就会得出同样的结论。一条更重、却没有及时把自己写进比特币的链,夺不走主链。

了解 Ksana 的工作原理

03为什么是 Ksana

除了比特币和算力,
什么都不用信任。

  • 一切都能从比特币重建

    索引器只连 bitcoind。它用比特币上的数据重新执行每个区块,核对每个状态根。哪怕所有 Ksana 节点都下线,这条链也还在。

  • 没有跨链桥,没有托管

    Ksana 从不保管你的比特币。KSA 是这条链自己的资产;BTC 留在比特币上,合约照样看得到它的流动。

  • 比特币钱包就是你的账户

    账户就是一把 Taproot 密钥,你的 Ksana 账户和比特币共用一个地址。Unisat 与 Xverse 用 BIP322 签署 Ksana 操作。

  • 一扇出块者关不上的门

    把操作放进你自己的比特币交易。一旦确认,每个出块者都必须收录它,否则他们的区块无效。

  • CPU 挖矿,没有预挖

    Argon2id,每次哈希用 2 MiB 内存。主网从零个 KSA 起步,每一枚都是出块奖励。

  • 能读比特币的合约

    用 Rust 编写、编译成 WebAssembly,gas 精确计量。合约能读六块深的比特币区块头,用 Merkle 证明核验比特币付款,还能看到携带这次调用的那笔交易。

04两种提交方式

想快时够快,
要紧时谁也拦不住。

路径 B

代付

签一条消息,付一点 KSA 手续费。出块者几秒内收录它,并替你付结算所需的比特币手续费。

  • 约 5 秒快轨确认
  • 用 KSA 付费
  • 不需要比特币

路径 C

原生

把操作放进你自己的比特币交易。确认之后,每个出块者都必须收录它:谁也拦不住你。

  • 比特币确认后收录
  • 用 BTC 付矿工费,出块者不收费
  • 抗审查

手上只有比特币?可以充值:用一笔比特币付款,从兑换合约买到 KSA,然后走路径 B。

05KSA

靠工作量发行,
上限 2.1 亿。

KSA 用来支付代付操作的手续费和合约的 gas。新的 KSA 只以出块奖励的形式出现,在区块数据写进比特币之后才发放;奖励按一张跨越几十年的时间表减半。

210,000,000
KSA,总量永远不会更多
4.2
每个奖励槽的 KSA,5 秒一槽
2 · 4 · 8
减半间隔(年):2 年后第一次,再过 4 年第二次,之后每 8 年一次
≈ 220
年后,每个奖励槽的奖励降到零

主网尚未上线。signet 上的 KSA 是没有价值的测试币。

奖励、手续费与携带者报酬

KSA 发行量(百万)

050100150200010203040

上线后的年数

  • KSA 发行量
  • 减半
  • 上限 2.1 亿
主网 KSA 的发行曲线。每一枚都是出块奖励,创世时不分配任何 KSA。

06开发

用你熟悉的
工具开发。

给浏览器和 Node 用的 TypeScript SDK,用 Rust 编写、编译成 WebAssembly 的合约,包办其余一切的命令行客户端,以及在这三者之下的 JSON-RPC。

import {
  KsanaRpcClient,
  SIGNET,
  UnisatAdapter,
  VMOP_VERSION,
  btcNetworkOf,
  fromHex,
  ksaAssetId,
  parseAccount,
  signVmopWithWallet,
} from '@ksana/sdk';

const rpc = new KsanaRpcClient('https://signet.ksana.network/rpc');
const params = await rpc.getParams(SIGNET); // 节点若在别的网络上,这里会拒绝
const wallet = new UnisatAdapter(); // 钱包的 Taproot 地址就是你的 Ksana 账户
const account = fromHex((await wallet.getAccount()).account, 32);

const { nonce } = await rpc.getAccount(account);
const { path_b } = await rpc.estimateFee();
const op = await signVmopWithWallet(
  {
    version: VMOP_VERSION,
    chain_id: params.chain_id,
    account,
    nonce,
    fee: { kind: 'Token', amount: 2n * path_b.amount }, // 路径 B:手续费用 KSA 支付
    max_gas: 10_000n, // 一笔转账正好用 10,000 gas
    action: {
      kind: 'AssetTransfer',
      asset: ksaAssetId(),
      to: parseAccount('tb1p…', btcNetworkOf(params)),
      amount: 100_000_000n, // 1 KSA:8 位小数
    },
  },
  wallet, // 钱包里签一次 BIP322,不花一聪比特币
);
const { op_id } = await rpc.submitOp(op); // 约 5 秒快轨确认

07自己运行

整条链,
你都能自己跑。

节点

跟随这条链,对照比特币检查每个区块,用 CPU 挖矿,并结算你挖出的区块。

运行节点

索引器

只凭 bitcoind 重建整条链,不经过任何 Ksana 节点,并核验每个状态根。

运行索引器

钱包

用 Unisat 或 Xverse 走路径 B、路径 C 和充值,在托管的 signet 页面上,或连你自己的节点。

使用钱包

08进展

出块要快,
上线要稳。

  1. 已完成

    规范已冻结

    共识规则已于 2026 年 10 月 5 日冻结。此后的任何改动,都要走升级时间表。

  2. 已完成

    审计与攻防

    内部安全审计,重组与扣留区块的对抗测试,模糊测试,以及节点对照索引器、长达五小时的浸泡测试。

  3. 进行中

    公开 signet

    运行在比特币的公开 signet 上,有种子节点、索引器、网页钱包和水龙头。只用测试币。

  4. 下一步

    主网

    尚未上线。signet 要先运行至少四周,在真实的手续费市场上观察结算和携带者报酬。

一瞬之间,
写进比特币。