来源:互联网 更新时间:2026-08-26 14:02
TON 新手入门:从钱&包选择到资产保护的完整指南。TON(The Open Network)是一个去中心化区块链平台,最初由 Telegram 团队设计和开发。它的目标是构建一个高性能且可扩展的区块链生态,支持大规模的去中心化应用(DApps)和智能合约。
TON 的特殊之处在于,它既容易上手,又与 Telegram 深度整合,让普通用户也能轻松使用代币;但同时,它的架构与其他区块链差异明显,并采用非主流的 FunC 语言编写智能合约,因此又显得复杂。本文将从账号、代币和交易三个维度,介绍 TON 的核心特点以及用户资产安全需要注意的问题。
今天,本站小编整理了一份 TON 新手必备指南,内容涵盖钱&包选择到资产保护的方方面面,希望能对大家有所帮助。
TON 账号地址的生成方式与大多数区块链不同——它本质上是一个智能合约地址。首先,从私钥开始,TON 主要使用 Ed25519 算法生成公钥,具体流程如下:
E39ECDA0A7B0C60A7107EC43967829DBE8BC356A49B9DFC6186B3EAC74B5477D
另一种是“美化”后的公钥,包含公钥信息与校验位,格式如:Pubjns2gp7DGCnEH7EOWeCnb6Lw1akm538YYaz6sdLVHfRB2
如果你以为拿到公钥就能像以太坊那样直接算出账号地址,那就错了。仅有公钥还不足以生成账号地址。前面我们提到,用户的账号地址是一个智能合约地址,但连账号都没有,又如何部署合约?正确的顺序是:先计算出地址,接收少量初始代币,然后再部署合约。账号地址的计算过程如下图所示:
0:b4c1b2ede12aa76f4a44353944258bcc8f99e9c7c474711a152c78b43218e296
以及用户友好形式,例如:
仔细观察这些地址会发现,它们仅首尾几个字符不同,中间的 `account_id` 是一致的。但我们依然无法直接看出公钥与账号地址之间的关系——诀窍就在于开头的 `initial data`,其中包含用户的公钥,用户正是通过它掌握钱&包合约的所有权。`workchainId` 也很好理解:TON 并不是单一的一条链,而是由多个分片组成,每个分片处理特定的一组账号和交易。为了定位和管理智能合约,需要明确指出它们所在的分片。而 `Bounceable` 和 `Non-bounceable` 的区别,则与智能合约的工作机制有关,我们稍后会继续介绍。
以下是一个用户钱&包合约的部分源代码,从代码可以看出,当合约接收到用户的消息时,会读取 4 个参数。
没错,这个用户钱&包合约在部署时,需要传入一些初始参数,其中就包括一个 256 位的 public_key 信息。这样一来,即使所有用户使用相同的合约代码,也会各自拥有独立的合约地址。用户发起的所有交易都需要对 `in_msg` 进行签名,然后通过自己的钱&包合约验证签名(check_signature),之后再由合约去调用链上的各种操作。从这里也能推断出:一个公钥实际上可以对应无数个钱&包地址——只需部署不同源代码的钱&包合约或使用不同的初始化数据,就能得到完全不同的合约地址。
代币是资产在链上的表现形式,因此它是我们需要了解的基本概念。Jetton 是 TON 代币的标准形式,由两个合约组成:Jetton-minter 和 Jetton-wallet。
当代币被发行时,会创建一个 Jetton-minter 合约,合约初始化时记录了代币的总量、管理员、钱&包代码等信息。
当代币分发给用户时,Minter 合约会为每个用户部署一个钱&包合约,并在合约初始化时记录用户的余额、所有权、代币 Minter 合约地址、用户钱&包代码等信息——每个用户都会独立部署一个合约。需要注意,这里创建的合约是用于管理特定 Jetton 代币的钱&包合约,与用户的主账号钱&包合约不同,其中的 owner_address 记录的是用户的主账号钱&包地址。
当用户 Alice 向 Bob 转账时,调用关系如下:
Alice 在链下通过 APP 签名,并调用她的钱&包合约下达操作指令。这些指令会进一步调用她的代币钱&包进行转账。当 Bob 的代币钱&包收到代币后,它会通知 Bob 的钱&包合约(即 Bob Jetton-wallet 的 Owner 地址)。如果交易过程中有剩余的 Gas,还会返还给响应地址,通常是 Alice 的账号合约。
这是 Tonviewer 浏览器解析的一笔 Jetton 代币转账:
一个 ERC20 转账最少只需要调用一个合约,而一笔 Jetton 代币转账至少要调用四个合约。这样做是为了让转账可以在链上并发进行,提高交易效率。
在 TON 中,当某个账户发生特定事件时,会触发一笔交易。最常见的事件是“接收某条消息”。一笔交易包含以下内容:
最初触发合约的传入消息(也存在特殊的触发方式)
由传入消息引起的合约行动,例如更新合约的存储(可选)
发送给其他参与者的传出消息(可选)
1. 异步:TON 的交易并不是在一次调用里完成的,它可能需要通过消息传递到多个不同的智能合约,从而执行一系列调用。由于分片链中的路由不同,TON 无法保证多个智能合约之间的消息传递顺序。
2. 手续费:异步特性还会带来一个问题——消耗的手续费难以预估。因此,发起交易时,钱&包通常会多发送一些代币作为手续费。如果调用的合约有良好的手续费处理机制,那么剩余的手续费最终会返还到用户钱&包。用户可能会观察到钱&包里的代币突然变少,过几分钟又变多,正是这个原因。
3. 反弹:反弹是合约的一种错误处理机制。当调用的合约不存在或抛出错误时,如果交易设置为可反弹的,那么就会反弹回一条 bounced 消息给发起调用的合约。举例来说,用户发起一笔转账,如果调用过程出错,就需要反弹消息,这样用户的钱&包合约才能恢复自己的余额。几乎所有在智能合约之间发送的内部消息都应该是可弹回的,即应该设置它们的“bounce”位。
TON 的诸多特性也带来了安全风险,因此用户有必要了解一些常见的陷阱。
前面提到,钱&包经常需要多发送一些手续费,以防交易执行失败。这给了攻击者可乘之机。如果你是一位 TON 钱&包用户,可能会遇到这种情况:钱&包里总是收到各种 NFT 或代币,原本以为是垃圾空投,但一查交易信息,竟然可以卖不少钱?可当你发起交易时,发现需要的手续费高得离谱(例如 1 TON),这时就要警惕了,这很可能是手续费反诈。
攻击者利用精心构造的代币合约,使得钱&包预估的转账手续费异常高,而实际执行时却只是截留手续费,并未真正发送转账消息。
首尾号钓鱼并非 TON 独有,各条公链都存在这种钓鱼攻击。攻击者会为全网每个用户地址生成一个首尾字符相同的高仿账号。当用户发送一笔转账时,攻击者用高仿账号也尾随发送一笔小额转账,目的就是在用户的收款记录里留下一条记录。如果收款用户想要转回一笔代币,可能会从历史记录里复制地址——此时很可能复制到攻击者的地址,导致转账到错误账户。攻击者可谓精准拿捏了用户的行为习惯。
TON 在转账时可以添加一个 comment 字段,用于备注交易信息。这个功能在交易所充值时会频繁用到,交易所通常要求用户在充值时备注用户 ID。然而,这一功能也经常被恶意利用,攻击者通过在备注里写入欺诈信息来骗取用户的资产。如图所示:
用户尤其需要留意 Anonymous Telegram Number 这个 NFT。如果用户用 Anonymous Telegram Number 开通了 TG 号,但没有开启两步验证,一旦这个 NFT 被钓走,黑客就能直接登录目标 TG 号,进而实施资产盗取及后续的欺骗行为。
智能合约的安全漏洞会导致用户存放在合约中的资金受损。因此,用户在选择项目时,应优先选择经过良好审计的项目。TON 的智能合约主要使用 FunC 语言编写,也有使用更高级的 Tact 或更低级的 Fift——它们都是原创程度很高的语言。新的编程语言会带来新的安全风险,尤其是对开发者而言,需要养成安全编程的良好习惯,掌握最佳安全实践,并在部署生产环境之前经过严格的安全审计。限于篇幅,本文暂不深入讨论合约安全。慢雾安全团队已推出 TON 智能合约安全审计服务,欢迎有审计需求的朋友一同探讨。
钱&包或交易所用户需要警惕假充值攻击,通常有两种类型:
假币:攻击者发行一个 metadata 与目标代币相同的代币。如果自动化入账程序没有检查这是否是正确的 minter 合约,就可能导致错误入账。
反弹:TON 的转账过程需要在两个用户的钱&包合约之间发生调用关系。如果接收方的钱&包合约不存在,并且交易设置为 Bounceable,那么消息会被反弹,原始资金在扣除手续费后将返还给发送方。对细节感兴趣的朋友可以查看我们之前披露过的假充值相关文章。
由于技术实现不同,大家习惯使用的 EVM 钱&包如 MetaMask、Rabby 等目前都不支持 TON,因此需要另外安装支持 TON 的钱&包。
此时,钱&包的安全性至关重要。我们可以从钱&包是否开源、是否支持硬件钱&包等方面来评估哪款钱&包更适合自己,而特别需要注意的是该钱&包对交易信息的解析是否全面到位。
举个例子,面对 TON 上的钓鱼网站,当黑客试图转走钱&包里的某些资产时,钱&包软件 OpenMask 和 TonKeeper @tonkeeper 的交易解析结果大相径庭,如下图所示:
在 OpenMask 看来,这似乎是一笔正常的「领取空投」交易,但事实真的如此吗?
同样一笔交易,Tonkeeper 却为我们解析出了更多信息:钓鱼网站正试图盗走钱&包中的 FISH 代币,黑客的行为成功被 Tonkeeper 揭示出来。
相比之下,你觉得使用哪款钱&包的用户更容易上当?
安全性更好的钱&包,就像一面「照妖镜」,能有效降低用户在识别钓鱼反诈上的焦虑。近期,Keystone 也已成功与 TonKeeper 完成集成,硬件钱&包的加入有望让用户在 TON 上的安全性大幅提升。
和其他公链一样,钓鱼也是目前 TON 上最常见、受害者最广泛的攻击形式。借此机会,我们来了解一下 TON 上黑客常用的钓鱼手段:
黑客通过批量发送 0 金额的 TON 到许多地址上,并在转账备注中写入诸如“领取 1000 TON 的空投,访问 http://xxxxx.com”等内容。缺乏经验的用户可能因此上当,访问钓鱼网站并进行所谓的“领取”操作,结果宝贵的资产被黑客盗走。
除了代币转账,黑客也会通过空投 NFT 到用户钱&包进行钓鱼。NFT 上除了好看的内容外,同样会留下钓鱼网站的网址来诱骗用户。
例如下面这个案例——空投给用户的 NFT 上留有假冒的 fragment 市场链接。当用户进入假冒市场并试图将空投的 NFT 挂单卖出时,便掉进了陷阱,不仅没能卖出 NFT,反而被转走了其他资产。
TON 上的转账交易都有一个可选的 comment 字段,可以理解为银&行转账时的交易附言。这本是一个方便用户的功能,但也被别有用心的钓鱼网站利用。
如下图所示,黑客试图让用户将钱&包中的 FISH 代币转出,并在交易附言中写上“Received +xxx,xxx,xxx FISH”的字样,误导用户以为自己将获得比现有数量更多的 FISH 代币,从而确认交易。
在此我们提醒各位:不要相信交易附言中的任何内容,也希望未来各个钱&包软件能为交易附言做出更明确的安全提示。
在以太坊上我们常用 Etherscan 查看链上信息,而 TON 上对应的工具有 Tonscan 和 Tonviewer。
通过比较二者在安全方面的功能,可以发现 Tonviewer 在识别反诈钓鱼方面更胜一筹:它不仅针对疑似钓鱼的交易给出了“SUSPICIOUS”的可疑提示,对空投的反诈 NFT 也加上了 SCAM 字样,防止用户上当。
而 Tonscan 仅展示了链上信息,缺少一些安全相关的提示。我们建议刚进入 TON 生态的用户,优先使用 Tonviewer 来查看钱&包地址的信息。
在任何公链上,使用硬件钱&包将助记词脱网保存,并对交易进行二次验证,都是保护资产的有效手段。Keystone 通过与 TonKeeper 钱&包集成,使得 TON 生态用户也能享受硬件钱&包带来的安全性。针对硬件钱&包用户,我们有以下建议:
• 将大额资产使用硬件钱&包保存
• 利用 Keystone 的 3 组助记词,将资产分散到多个钱&包存放,防止单点风险
• 仔细查看 Keystone 显示的交易信息,避免签名钓鱼交易
本文从 TON 的公私钥创建、钱&包合约、代币形式、交易特性等角度介绍了 TON 的一些基础技术原理,同时也探讨了使用 TON 过程中可能存在的安全问题,希望能对大家的学习有所启发。
腾讯ima怎么把微信内容一键导入知识库?
腾讯ima怎么创建共享知识库?
Celestia价格预测2026-2032:TIA币能否引领山寨币上涨行情?历史价格回顾
比特币(BTC)核心周期指标复刻历史走势 价格或跌破5.8万美元关键支撑位
比特币 2025 年价格预测:BTC 的未来走势
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
新浪机器学习热点小时报丨2026年07月25日18时_今日实时机器学习热点速递
WorkBuddy微信版怎么获得积分?
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
5000元起的鼠标哪个最值得入手?
腾讯ima知识库怎么分类管理?
短剧《史上最强洪荒修为》剧情介绍
海尔消毒柜自动消毒如何中止
博世壁挂炉关闭暖气怎么操作
男生高性价比充电头?
车载冰箱重置到出厂设置几步?
Windy卫星云图怎么看?云层变化识别技巧
WorkBuddy积分怎么获得?
5000-6000元鼠标有什么推荐?
管线机怎么接云米净水器
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc