← Back to blog

STRK 如何通过 NEAR Intents 跨链到 Solana

January 23, 2026
12 min read
NEARSolanaStarknetCross-chainIntents

本文基于一次真实的 STRK → Solana 操作流程,对 NEAR Intents 的技术模型进行拆解说明。 目标不是介绍"跨链是什么",而是回答一个更具体的问题:

STRK 是如何在不使用传统桥(lock & mint)的情况下,通过 NEAR Intents 跨链到 Solana 的?


一、背景与问题定义

在 Starknet 生态中,STRK 是其原生代币; 在 Solana 生态中,STRK 并非原生资产。

传统理解下,STRK 若要"到 Solana"通常意味着:

  • 使用跨链桥
  • 在源链锁仓
  • 在目标链铸造一个 wrapped token
  • 用户手动 claim、承担跨链复杂性

而 NEAR Intents 给出的路径完全不同:

用户不执行跨链步骤,只表达"我要什么结果",其余由系统完成。

本文将通过一次真实操作,解释这一模型在工程上是如何成立的。


二、NEAR Intents 的核心思想(极简版)

NEAR Intents 并不是"另一个跨链桥",而是一种 结算范式(settlement paradigm)

它将跨链过程拆成三层:

  1. Intent(意图声明) 用户只声明目标状态,而不是操作步骤。

  2. Solver(执行者) Solver 在链下决定如何完成目标(路径、桥、流动性、对冲)。

  3. Settlement(可验证结算) 结果由 NEAR 链上的 Verifier 合约进行校验和记账。

这套模型可以总结为一句话:

Intent = 用户目标 + 链下竞争执行 + 链上可验证结算

(这一点与你提供的 PDF 中的技术总结完全一致)


三、一次真实 STRK → Solana 的执行流程

下面的流程,全部来自真实操作,而不是推测


Step 1:用户在 Starknet 侧存入 STRK

用户通过 near-intents.org 前端,获得一个 Starknet Deposit 地址,并从 Binance 向该地址转入 STRK。

NEAR Intents Swap 页面
NEAR Intents Swap 页面

⚠️ 注意:

  • 这一步是 链上真实转账
  • 并不是 approve,也不是签名授权
  • NEAR Intents 要求用户先完成资产注入

Step 2:用户签署 Intent(不是 Swap)

用户点击 Swap 后,钱包弹出的是一个 JSON Intent 签名,而不是代币转账。

钱包 Intent 签名 JSON
钱包 Intent 签名 JSON

签名内容包含:

  • signer(用户身份)
  • verifying_contract(intents.near)
  • token + amount
  • deadline / nonce

这个签名的语义是:

我授权 NEAR Intents 系统,为我完成一次跨链目标结算

而不是:

"我现在要换币"


Step 3:Solver 在链下执行(用户完全无感)

签名完成后:

  • 没有第二次钱包确认
  • 没有桥交互
  • 没有 claim 操作

这是因为:

真正的执行发生在 Solver 侧(链下)

Solver 会:

  • 接管用户存入的 STRK
  • 自行决定路径(是否桥、是否走 CEX、是否拆单)
  • 自行承担 gas、滑点、执行失败风险

⚠️ Solver 的实现目前 未开源,这是 NEAR Intents 的商业核心之一


Step 4:结算完成,但资产不进钱包

执行完成后,前端显示 Success,可以在intent浏览器里看到这么一条交易记录:

Swap Steps + Account Tab
Swap Steps + Account Tab

  • Starknet:STRK 余额减少
  • Solana:SOL 余额出现

但此时用户会发现:

  • OKX / Phantom 等钱包 看不到 SOL
  • Solana explorer 也查不到用户地址的入账

这不是失败,而是 设计如此


四、关键结论:钱现在到底在哪里?

这是整个流程中最容易让人"绕晕"的地方,因此必须单独说明。

结论先行

这笔 SOL 已经在 Solana 链上,但不在用户的钱包里,而是在 NEAR Intents 的 Settlement Account(PDA)中。

这是一个 "已结算、未提取(settled but unwithdrawn)" 的状态。

为什么钱包看不到?

原因来自两个事实:

1️⃣ NEAR Intents 将「结算」与「提取」分离

官方文档明确说明:

Settlement 完成 ≠ 资产进入用户钱包 用户需要主动执行 withdraw 才会进入目标链钱包

这一点在 PDF 中已有明确总结: "Settlement produces an intermediate balance until withdrawal."

2️⃣ Solana 的资产模型决定了这一点

Solana 中:

  • 钱包地址 ≠ 资产存储位置
  • 资产存在于 Token Account
  • Token Account 可以由 Program Derived Address(PDA) 控制

NEAR Intents 正是使用 PDA 来托管结算后的资产。

Account Tab - Solana balance 可见但不可用
Account Tab - Solana balance 可见但不可用


五、这和传统跨链桥的本质区别

维度传统桥NEAR Intents
用户操作多步(锁仓 / claim)一次 Intent
路径暴露用户可见用户不可见
执行风险用户承担Solver 承担
资产到达直接到钱包先结算,后提取
抽象层级资产级结果级

一句话总结:

桥在"搬资产",Intent 在"交付结果"。


六、STRK → Solana 这条路径意味着什么?

从工程角度,这次操作验证了三件事:

  1. STRK 并没有被桥接为 wrapped asset 再 claim
  2. 跨链复杂性完全由 Solver 吸收
  3. NEAR 本身承担的是结算与验证角色,而非资产中转

这也解释了为什么:

  • Solver 是 NEAR Intents 的核心壁垒
  • Solver 目前不开放实现
  • Intent 更像金融清算系统,而不是基础设施桥

七、写在最后:如何在项目中理解 NEAR Intents

NEAR Intents 不是帮用户"跨链",而是帮用户"拿到目标结果",跨链只是其中一个执行细节。


本文基于真实操作与 NEAR Intents 官方技术文档整理,不构成投资建议。

目录

正在生成目录...