Взаимодействие токенов
Модель единого состояния
┌──────────────────────────────────┐
│ Rome EVM │
│ │
│ ERC-20 "rUSDC" │
│ ┌────────────────────────┐ │
│ │ balanceOf(user) │─────┼──► читает напрямую из SPL ATA
│ │ transfer(to, amount) │─────┼──► выполняет SPL transfer через precompile
│ │ totalSupply() │─────┼──► читает объём выпуска SPL mint
│ └────────────────────────┘ │
│ │
└──────────────────────────────────┘
│
│ одни и те же базовые данные
↓
┌──────────────────────────────────┐
│ Solana │
│ │
│ SPL Token Account (ATA) │
│ Владелец: PDA пользователя │
│ Mint: USDC (нативный Circle) │
│ Количество: 1000000 (= 1 USDC) │
│ │
└──────────────────────────────────┘ERC20SPL: контракт-обёртка
ERC20SPLFactory
Реестр токенов
Поток депозита / вывода
Депозит SPL → EVM
Вывод EVM → SPL
Вычисление PDA
Ключевые шаблоны
Чтение SPL-балансов из Solidity
Перевод токенов через SPL precompile
Газовый токен
Ограничения
Что дальше
Последнее обновление
Это было полезно?