AssetHub
AssetHub 是实物能源数据与链交汇的地方。运营方缴纳保证金、登记每项资产背后的设备并发布读数;预言机发布参考数据,聚合为中位数。
提供方
| 角色 | 可以 |
|---|---|
| 电表(Meter) | 登记设备、提交读数 |
| 设备(Device) | 登记设备、提交读数 |
| 预言机(Oracle) | 向主题提交数值 |
| 桥(Bridge) | 为跨链数据源预留 |
- 注册无需许可:
registerProvider(role, displayName, bond),以保证金代币(第一个白名单结算币,如 USDC)缴纳,金额不低于minBond。 - 提供方可以追加保证金,或提取超出最低额的部分;没有活跃设备时可以注销并取回保证金。
- 注册不要求 KYC;被制裁地址由排序器过滤拦截,而非 AssetHub 本身。
罚没与监禁
只有治理方可以罚没:slashProvider(provider, reason)。每次罚没扣除一定比例的保证金(默认 5%)转入罚没地址,并记一次违规。违规达到阈值(默认 3 次)后提供方被监禁(默认 7 天),期间不能提交数据。治理方通过 unjailProvider 解除监禁。
设备
- 电表和设备角色的提供方可以登记设备:
registerDevice(deviceId, deviceType, jurisdiction, pubkey)。 - 运营方可以记录认证哈希和固件版本(
attestDevice),也可以更新类型或辖区。 - 设备可以由其运营方或治理方吊销——吊销不可逆。
- 代币绑定为其产生收益的设备;创建时每台设备都必须活跃且由代币管理员运营。
读数
submitReading(deviceId, periodStart, periodEnd, unit, iotValue, operationalValue) 记录一个周期的发电量:
iotValue是设备自身测得的值;operationalValue是运营方系统(计费、SCADA)记录的值。- 两者在容差内一致(默认 2%)时,读数标记为已核验:
|a − b| × 10000 ≤ max(a, b) × toleranceBps。 - 治理方可以要求只接受已核验读数,或要求设备完成认证后才能提交读数。
"已核验"的含义。 两个值由同一个运营方提交,因此核验检查的是内部一致性,而非独立真实性。又因为代币的设备必须由其发行方运营,代币的发电数据是由发行方自己上报的。AssetHub 让这些数据有保证金约束、带时间戳、公开且可追责;独立核验(第三方电表、审计)取决于发行方和治理方如何选择运营方——链本身无法单独提供。
主题
治理方创建主题(createTopic(topicId, description, minSources)),例如区域批发电价或电网排放因子。预言机提供方提交数值;当至少 minSources 个来源提交后,主题的值为当前提交值的中位数。交易和借贷所用的资产价格来自 Chainlink,而非 AssetHub 主题。
参数(治理方设置)
| 参数 | 默认值 |
|---|---|
| 最低保证金 | 1 个保证金代币单位(如 1 USDC) |
| 读数容差 | 2% |
| 罚没比例 | 每次 5% |
| 监禁阈值 | 3 次违规 |
| 监禁时长 | 7 天 |
| 拒绝未核验读数 | 关闭 |
| 要求设备认证 | 关闭 |
实时参数见能源数据页面。
事件
ProviderRegistered、BondIncreased、BondWithdrawn、ProviderDeregistered、ProviderSlashed、ProviderUnjailed、DeviceRegistered、DeviceUpdated、DeviceAttested、DeviceRevoked、ReadingSubmitted、TopicCreated、ValueSubmitted。