GoPlus 安全研究院:RWA 业务模型与安全要点分析
2026-06-0510:17
Go+ Security
2026-06-05 10:17
Go+ Security
2026-06-05 10:17
收藏文章
订阅专栏

RWA(Real World Asset)指通过区块链技术,将房地产、债券、黄金等现实世界中的资产转化为链上的数字代币。简单来说,就是把我们熟悉的房子、股票、黄金,甚至艺术品,变成像比特币一样可以在区块链上交易的小份“数字凭证”

基本原理

RWA 的基本原理,可以概括为:通过一套完整的机制,将现实世界中的资产(如黄金、房子、美债)的价值、所有权和未来收益,可信地映射到区块链上,使其能够像加密货币一样在全球范围内流通和交易。这个过程的实现,主要包含四个核心环节:

  1. 资产链下确权
  2. 数据与信息上链
  3. 代币化发行
  4. 围绕价值流转的监管与合规

1. 资产链下确权:建立法律基础

这是整个流程的起点和基石。现实世界的资产首先必须通过传统法律体系完成所有权确认。

▪️核心任务:确保资产真实存在、权属清晰、无纠纷,并符合所在地法律。例如,房子要有房产证,黄金要有仓单和鉴定报告。

▪️主要角色:律师、审计师、托管机构、资产评估方。

▪️关键步骤: (1) 尽职调查:律师和审计师对资产进行财务、法律和实物层面的审核,出具法律意见书和审计报告。 (2) 合法托管:将资产(尤其是实物资产)交由受信任的第三方托管机构(如银行金库、专业保管公司)进行安全保管。资产本身并不“上链”,只是其所有权证明权益凭证上链。 (3) 形成“事实”证明:最终生成一份能证明资产所有权或权益的数字化文档。这份文档是链下实体世界与链上数字世界之间的第一道法律桥梁

2. 信息与价值上链:实现可信映射

这一步将链下确认好的资产信息,通过预言机等技术手段,可靠地记录到区块链上。

▪️核心任务:将所有权证明和关键元数据(金额、价值、期限、预期收益等)转化为区块链节点可识别、不可篡改的数据。

▪️核心技术与挑战预言机(Oracle)。预言机是连接链上(区块链)和链下(现实世界)的中介。它负责将外部数据(如资产估值、价格信息、甚至托管机构的状态报告)安全地传递给链上的智能合约。如何保证预言机传递的数据真实、防篡改,是整个 RWA 安全性的一大关键。通常会采用“多签”(多个独立数据源交叉验证)等方式来提高可靠性。

▪️关键角色:预言机服务商、托管机构(提供资产状态的实时更新)。

3. 代币化发行:创造链上资产

当现实世界资产的信息和价值被安全地带到链上后,就可以通过智能合约发行代表该资产权益的代币(Token)

▪️核心任务:智能合约根据预设规则,铸造(发行)与链下资产一一对应的数字代币。

▪️代币类型:根据资产属性,选择不同的代币标准(EIP/ERC 协议): ৹ 同质化资产:如美债、信贷、黄金,通常使用 ERC-20 或支持合规控制的 ERC-3643 标准,铸造出可互换、可分割的代币。 ৹ 非同质化资产:如房产、艺术品,通常使用 ERC-721 标准,铸造出独一无二的 NFT。 ৹ 复杂金融资产:如带有到期日、票息结构的债券,可使用更灵活的 ERC-3525 标准。

▪️关键角色:智能合约开发者、发行方。

4. 流转、清算与合规:实现持续运营

代币发行后,便可以在区块链上进行交易、转账、抵押借贷等流转活动。这个环节的关键在于确保所有活动都在合法合规的框架内进行。

▪️核心任务:为代币提供流动性,并管理全生命周期的合规风险。

▪️主要活动: ৹ 交易与流动性:在去中心化交易所(DEX)或合规的证券型代币交易所(如 tZERO)上进行交易。 ৹ 权益行使与收益分配:通过智能合约自动执行分红、利息支付等。例如,代币化美债的持有者,其地址会自动收到 USDC 利息。 ৹ 合规控制:使用内置了 KYC/AML(了解你的客户 / 反洗钱)模块的代币标准(如 ERC-3643),确保只有经过白名单认证的地址才能持有和转移代币。必要时,发行方还可拥有“冻结”代币的权限,以响应法律要求。 ৹ 清算与赎回:当资产到期或持有者想要退出时,可以通过燃烧(销毁)代币,赎回链下对应的实物资产或法定货币。

核心要点总结

RWA 并没有把物理世界的东西“变”成代码,而是通过法律合同、托管机构、预言机和智能合约这四道防线,在数字世界里创建了一个与物理资产价值、权利相绑定的“数字孪生体”。

业务类型

RWA 的类型、典型项目以及所涉及的关键协议标准如下,其中国债和私人信贷是目前规模最大的类别,而 ERC-3643 和 ERC-3525 则是当前最受关注的技术标准。

1. 国债与证券

▪️核心特点与价值:将美国国债等低风险资产代币化,提供链上稳定收益,是目前规模最大的类别之一(占 RWA 总值近 30%)

▪️典型项目 (2025–2026 年动态 ) :Ondo Finance (OUSG, USDY): 资管规模超 10 亿美元,已扩展至 Solana 生态。 BlackRock BUIDL: 管理近20 亿美元资产的代币化货币市场基金,是传统金融入局的标杆。 Amundi SAFO: 欧洲资管巨头在 Solana 上推出的首只符合 UCITS 规范的代币化基金。

▪️相关协议: ERC-3643 ( 合规标准 ) ERC-1400 ( 证券型代币 ) ERC-3525 ( 复杂金融工具 )

2. 私人信贷

▪️核心特点与价值:将企业贷款、应收账款等代币化,为中小企业提供融资渠道。是 RWA 中占比最大的类别,占总值超 57%。

▪️典型项目 (2025–2026 年动态 ) :Centrifuge: 资产池规模超 5 亿美元,与 MakerDAO 合作,已发布 V3 版本。 Maple Finance: 推出 BTC 收益策略(年化 5.1%),吸引传统资本。

▪️相关协议:ERC-3525 ( 债权拆分与转让 )

3. 稳定币

▪️核心特点与价值:法币(主要是美元)的数字化映射,是加密世界的“现金”和交易媒介,市场规模达数千亿美元。

▪️典型项目 (2025–2026 年动态 ) :USDT (Tether)USDC (Circle): 占据市场主导地位,链上交易量巨大。

▪️相关协议:ERC-20 ( 同质化代币 )

4. 贵金属

核心特点与价值:将实物黄金等代币化,提供低波动性的避险资产选择,与比特币相关性低。 典型项目 (2025–2026 年动态 ) :PAX Gold (PAXG): 由 Paxos 发行,1:1 锚定伦敦合格交割金条。 相关协议:ERC-20 ( 同质化代币 )

5. 房地产

▪️核心特点与价值:将住宅、商业地产代币化,实现碎片化投资和租金自动分发,解决流动性问题。

▪️典型项目 (2025–2026 年动态 ) : RealT: 允许以低至50 美元的价格投资美国住宅,并获得租金分红。 Propy: 利用 NFT 进行产权登记,已完成超 2.3 万笔跨国交易。

▪️相关协议: ERC-721 ( 产权 NFT) ERC-3525 ( 收益权拆分 )

6. 新兴 / 非金融资产

▪️核心特点与价值:涵盖农业、知识产权、实体设备等,通过 RWA 实现直接融资资产确权

▪️典型项目 (2025–2026 年动态 ) :马陆葡萄: 中国首单农业 RWA,将葡萄园资产数据化,提升品牌溢价。 海南华铁: 将高空工程机械使用权转化为链上资产,实现设备融资。 元隆雅图: 探索 IP 文创资产的 RWA 化。

▪️相关协议:ERC-7765 ( 附带权益的 NFT)

核心协议 (EIP/ERC)

这些协议标准是 RWA 在以太坊生态(及兼容链)上实现的技术基石。它们定义了代币如何创建、转移、交易以及处理复杂的合规与业务逻辑。

1. ERC-20:同质化代币标准

▪️定位:RWA 的“地基”标准。

▪️应用:绝大多数稳定币国债代币(如 OUSG)、大宗商品代币(如 PAXG)都是基于 ERC-20 发行的。因为它简单、高效,适用于所有价值统一、可互换的资产。

▪️参考文献:

EIP-20

ERC-20 Token Standard

2. ERC-721:非同质化代币标准

▪️定位:数字资产的“身份证”。

▪️应用:用于代表独一无二的资产或权利。在 RWA 中,常用于发行代表房产所有权的 NFT(如 Propy)、特定实体物品赎回权的 NFT(如限量版运动鞋)等。

▪️参考文献:

EIP-721

ERC-721 Non-Fungible Token Standard

3. ERC-3525:半同质化代币标准 (SFT)

▪️定位:RWA 的“瑞士军刀”。

▪️核心能力:它结合了 ERC-20 和 ERC-721 的特点,一个关键创新是引入了 “槽位 /Slot” 概念。相同槽位的代币可以像 ERC-20 一样拆分、合并、互换,但每个代币又有唯一的 ID(如 NFT)。

▪️应用场景复杂金融工具:完美适用于债券、期权、期货、发票等。例如,一张面值 100 万的债券代币,可以拆分成 10 张面值 10 万的债券代币。 会员积分系统:同一家店的积分可以互相转账和合并,但不同商家的积分因“槽位”不同而无法互通。

▪️参考文献:

EIP-3525

ERC-3525 Reference Implementation

4. ERC-3643 / ERC-1400:合规与证券型代币标准

▪️定位:RWA 的“合规守门人”。

▪️核心能力:内置了许可制(白名单)、转账控制等金融合规所必需的功能。例如,只有通过 KYC/AML 认证的地址才能持有和交易代币。

▪️应用场景:用于发行证券型代币,如代币化股票、债券等,确保链上交易符合现实世界的监管要求。

▪️参考文献:

EIP-3643

ERC-3643: Docs

ERC-1400

ERC-1400 Implementation

ERC-3643 vs ERC-1400

5. ERC-7943:通用 RWA 接口 (uRWA)

▪️定位:RWA 的“通用语言”。

▪️状态:草案,截至 2026 年 1 月 30 日为最后征集意见期。

▪️核心能力:旨在为所有 RWA 代币(无论是基于 ERC-20 还是 ERC-721)提供一套标准的合规和操作接口。它标准化了 canSend、canReceive、freeze(冻结)、forcedTransfer(强制转移)等功能,让 DeFi 协议能以一种统一的方式与各种 RWA 代币交互。

▪️参考文献:

EIP-7943

ERC-7943 Tokenization Standard

ERC-3643 vs ERC-7943

6. ERC-7765:附带权益的 NFT 标准

▪️定位:连接数字与物理世界的“权益凭证”。

▪️核心能力:扩展了 ERC-721,定义了一个 exercisePrivilege(行使特权)功能。NFT 持有者可以在链上发起交易,行使与其绑定的现实世界权益,如兑换实物商品、获取服务、参加活动等。

▪️应用场景数字藏品 + 实体赋能。购买一个代表某款酒的 NFT,可以行使兑换一瓶实体酒的权利,或者直接到店核销。

▪️参考文献:

EIP-7765

Understanding ERC-7765

ERC-7765 Implementaton Example

合约风险与安全

合约安全通用检查项

参数检查漏洞
算数计算漏洞
重入漏洞
签名重放
访问控制漏洞
拒绝服务攻击
条件竞争攻击 (new)
区块状态依赖安全 (new)
价格操纵攻击
闪电贷攻击
逻辑检查漏洞
业务漏洞漏洞

RWA 安全检查增项

  1. 代码设计安全:
    ▪️硬编码地址安全
    ▪️fallback()/receive() 函数安全
    ▪️函数返回值安全
    ▪️外部调用安全
    ▪️tx.origin 安全
  2. 合约实现安全

    ▪️参数检查:
    ৹ 地址有效性校验缺失:仅检查参数类型为 address,但未校验其是否为零地址合约地址(当需要 EOA 时)。 攻击逻辑:将资产转入 address(0),导致资产永久锁定。或者本应销毁代币的操作,却将代币转给了一个无法处理此操作的合约,导致资产卡在合约中。
    ৹ 短地址攻击:传入的地址参数长度不足 20 字节,利用 EVM 的自动补零机制篡改后续参数(如金额)的解析。 攻击逻辑:攻击者传入 19 字节地址,EVM 在其右侧自动补零。补零操作会”占用”紧跟其后的金额参数的第一个字节,导致金额数值被错误地放大(约 256 倍)。
    ৹ 整数检查:传入的整数类型参数未检查大小或者范围,导致算术运算结果溢出或者超出预期。 攻击逻辑:精心构造 amount,使计算 balance + amount 时溢出归零或变小,或者使无符号整数 balance — amount 意外变成极大值。
    ৹ calldata 长度校验缺失:解码 calldata 或 bytes 类型数据前,未验证其长度是否符合预期。 攻击逻辑:传入的编码数据比预期短,abi.decode 可能读取到未定义内存区域的数据,造成状态变量被污染或合约异常崩溃。
    ৹ 汇编代码中的参数操纵:在 assembly 代码块中,手动计算的内存地址偏移量可以被用户控制的参数操纵而产生溢出。 攻击逻辑:用户提供一个极大的 index 参数,在计算内存地址 base + offset * index 时,乘法或加法运算发生溢出,导致指针意外地指向函数选择器区域,覆盖并篡改了要调用的函数逻辑。

    ▪️算数计算:
    ৹ 整数溢出 ( 上溢 / 下溢 ):运算结果超出类型范围。
    ৹ 精度损失:整数除法截断小数部分,尤其是在循环中,可能会导致结果存在较大偏差。
    ৹ 不安全的类型转换:截断高位或符号位异常。
    ৹ 可预测的随机数:使用链上公开变量作为随机源。

    ▪️重入漏洞:
    ৹ 单函数重入:攻击和生在同一个函数内。 攻击逻辑:函数在更新状态前发起外部调用,攻击者利用 fallback 函数递归调用同一个 withdraw 函数,直到耗尽资金。
    ৹ 跨函数重入:攻击和回调发生在不同函数之间,这些函数共享同一个状态变量。 攻击逻辑:函数 A 在状态未更新时调用外部合约,攻击者转而调用另一个依赖同一状态的函数 B,利用状态差进行非法操作(如转账)。
    ৹ 跨合约重入:漏洞的根源涉及多个合约,它们共享或依赖同一状态。 攻击逻辑:一个合约的状态在被调用前未更新,导致另一个依赖此状态的合约在执行逻辑时被攻击者“欺骗”,非常隐蔽。
    ৹ 跨链重入:发生在不同区块链网络的互操作协议或跨链桥中,相对复杂且少见。 攻击逻辑:攻击者在一条链上发起攻击,利用跨链消息传递的延迟或状态未同步,在另一条链上重复执行操作,窃取资产。
    ৹ 只读重入:攻击者重入一个仅读取状态的函数(view/pure),这是跨合约重入的一种特殊形式。 攻击逻辑:当合约的状态在更新过程中,攻击者调用第三方协议读取该“过时”状态,导致第三方协议基于错误数据执行操作(如错误清算)。

    ▪️签名重放:
    ৹ 跨链重放:同一签名在不同区块链(EVM 兼容链)上被重复提交。 攻击逻辑:用户在主网对一笔交易 ( 如授权 ) 签名,攻击者将该签名原封不动地在 BSC、Polygon 等链上广播。由于链 ID 未包含在签名中,其他链会认为签名有效。
    ৹ 跨合约重放:同一签名在不同合约地址上被重复使用。 攻击逻辑:用户对 A 合约的某方法(如 transfer)签名,攻击者将该签名提交给 B 合约。若 B 合约部署了相同逻辑且不校验目标地址,则签名可被重放。
    ৹ 跨函数重放:同一签名被用于调用同一个合约里的不同函数。攻击逻辑:典型于基于 delegatecall 的代理合约,或使用 msg.data 通配符验证的场景。对 withdraw() 的签名可能被用于调用 withdrawTo(),签名含义发生“功能偏移”。
    ৹ 交易重放:同一条链上,同一笔原始交易 RLP 签名被重复提交。 攻击逻辑:最常见于分叉后的链。在 ETC 与 ETH 分叉后,用户在一侧链广播的交易,攻击者在另一侧链原样广播(nonce 相同且有效),导致两侧资产同时转移。

    ▪️条件竞争: 多个操作对同一状态变量的访问和修改顺序,影响了合约的预期逻辑。
    ৹ 交易排序依赖 (TOD,Transaction Ordering Dependence):合约逻辑假设交易会按某种顺序执行,但矿工 / 验证者可自主排序。
    ৹ 余额检查与更新之间的窗口 ( 即重入攻击 ) :函数先检查余额发起外部调用再更新余额,留下状态不一致窗口。 批量操作的非原子性:循环处理多个用户 / 资产时,单个操作失败不影响整体未快照状态
    ৹ Nonce 竞态:两个交易读到相同的 nonce 值,同时提交,最终只有一个成功,另一个失败或产生意料外的状态。

    ▪️访问控制(通用)
    ৹ 缺少函数级访问控制:敏感函数(如 withdraw、setOwner、mint)未添加任何权限修饰器(如 onlyOwner)。
    ৹ tx.origin 滥用:使用 tx.origin(交易原始发起者)而非 msg.sender(直接调用者)进行权限验证。
    ৹ 初始化函数未加锁:可升级合约的 initialize 函数(替代构造函数)可被任何人多次调用
    ৹ 基于 extcodesize 的身份校验绕过使用 extcodesize 或 tx.origin == msg.sender 判断调用者为 EOA(外部账户),但 EVM 规则中存在例外,包括: 构造函数中调用:合约在构造函数中 extcodesize 返回 0 CREATE2 预部署:地址已存在但无代码 SELFDESTRUCT 后的地址:代码清空后仍可接收调用。
    ৹ 公开的初始化函数:初始化函数声明为 public,且未检查 initializer 状态。

    ▪️区块数据依赖:
    合约逻辑过度依赖区块头中的特定字段(如 block.timestamp、block.number、blockhash、block.difficulty/prevrandao 等)作为关键决策依据,而这些字段在一定程度上可被矿工 / 验证者操纵不符合预期的时间语义。

    ▪️可升级合约:
    ৹ 未受保护的升级函数:合约的升级函数(如 upgrade)缺少严格的权限控制
    ৹ 未初始化的代理与重复初始化 (Initialization Attacks):可升级合约中的 initialize 函数缺乏防护,攻击者可以抢先初始化并接管管理员权限。
    ৹ 存储布局冲突与碰撞 (Storage Collisions):代理合约通过固定存储槽位读取状态。如果新旧逻辑合约的变量声明顺序不一致类型不匹配,就会发生碰撞,导致数据被覆写或读取错误。
    ৹ UUPS 模式中的自毁升级逻辑 (UUPS Self-Destruct):在 UUPS(通用升级代理标准)模式中,升级逻辑写在实现合约里。如果新版合约破坏了 _authorizeUpgrade 函数或移除了升级功能,该合约将永远无法再升级
    ৹ 函数选择器冲突 (Selector Clashes):代理合约本身拥有 upgrade 等函数。如果实现合约里恰好有一个同名函数(函数选择器相同),调用可能会被代理拦截执行,而不是转发给逻辑合约。
    ৹ 委派调用上下文风险 (Delegatecall Context):代理合约使用 delegatecall 执行逻辑合约,这导致 msg.sender 和 this 的上下文环境极易混淆,且逻辑合约本身如果被直接调用,状态将无法更新。

    ▪️操纵价格 / 预言机(通用)
  3. 业务逻辑安全

▪️全局暂停 / 恢复功能审计

▪️代币铸造 / 销毁功能审计

▪️代币的存入 / 赎回 / 清算功能审计
৹ 存入资产计算错误
৹ 强制赎回
৹ 强制结算

▪️白名单 / 黑名单 / 账户冻结功能审计

▪️份额代币相关功能审计

▪️代币转移相关功能审计

▪️资产证明风险:
৹ 链下资产证明(如 PoR)的验证逻辑

▪️角色权限管理
৹ Owner / Admin 权限过大:
管理员可以:
任意增发资产
修改 NAV / Oracle 价格 强制赎回
冻结用户资产
修改 KYC 状态
替换托管地址
升级实现合约
修改利率
修改清算参数

如果这些操作:
没有 timelock
没有多签
没有权限隔离
没有事件审计

就属于严重中心化风险。

৹ Role-Based Access Control(RBAC)设计错误
DEFAULT_ADMIN_ROLE 滥用
Role Admin 配置错误
revokeRole 缺失
多角色组合攻击

৹ KYC / Compliance 权限漏洞
任意修改 KYC 状态
黑名单绕过
Freeze 权限滥用

৹ Oracle / NAV 更新权限漏洞
任意设置 NAV
单节点 Oracle
Stale Price 长期不更新

৹ Custodian / Treasury 权限漏洞
Treasury 可直接转走资金
Custodian 替换漏洞
链下托管与链上权限不一致

৹ Pause / Emergency 权限漏洞
永久 Pause
Emergency Withdraw 滥用

৹ 签名权限漏洞
签名重放
签名权限过宽
后端 signer 中心化

৹ 多签与治理漏洞
单点风险,比如 1/n 多签
Governor 可直接升级

৹ 跨链权限漏洞
Bridge Operator 权限漏洞:桥接管理员可:mint wrapped RWA, forged message 和 replay message
不同链权限不一致导致监管绕过

৹ RWA 特有的“法律权限”风险
法院命令权限 forceTransfer() 和 seize() 滥用、缺乏审计或者无事件记录

৹ 收益分配逻辑审计
收益计算逻辑审计
收益提取逻辑审计

最危险的一类漏洞

RWA 中最危险的往往不是传统重入。而是:“合法权限” + “中心化控制” + “缺少约束”,即:管理员拥有“协议允许”的能力,但系统没有足够:

  • 制衡
  • 延迟
  • 透明度
  • 可审计性

最终形成:

  • Rug Pull
  • 定向冻结
  • NAV 操纵
  • 非法增发
  • 非法赎回
  • 合规绕过

RWA 合约安全的本质上不仅是语法语义上的安全审计,更是:

  • 权限架构检查
  • 治理安全审计
  • 合规流程审计
  • 链下信任模型。

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

专栏文章
查看更多
数据请求中

推荐专栏

数据请求中

一起「遇见」未来

DOWNLOAD FORESIGHT NEWS APP

Download QR Code