CESS 技术月报 | 2024 年 1 月进展
一、重要递交、修改、发布
区块链网络
CESS 测试网 v0.7.5 版本由共识节点和存储节点组成。共识节点维护 CESS 网络的世界态(by CESS Node),同时是 CESS 网络中的“数据认证站”(by TEE Worker)。存储节点负责提供可验证的存储空间,是 CESS 网络中的“数据存储池”。以下是本月进展:
1. 共识节点 [v0.7.5]
- 修复 nodeadm v1.5.2 版本在部分情况下无法部署共识节点的问题;
- 修复 CESS Node 合并 TEE Worker 仓库后无法编译的问题;
- 修复因国库资金不足导致随机挑战奖励发放失败的问题;
- 修复 TEE Worker 在重构代码库后共享密钥无法被有效启用的问题;
- 修复 RPC 节点因连接数量超过默认上限而出现无法连接的问题;
- 修复 CESS Node 未及时清除随机挑战失效惩罚次数记录的问题;
- CESS 链的 Token 从 12 位更新为 18 位,以更好地实现与以太坊代币的转换;
- 实现 CESS 链对 MetaMask 钱包的兼容,以改善用户的使用体验;
- 完成 CESS Node 在线升级,将随机挑战惩罚次数上限更新为 42 次,以验证经济模型的最新优化调整;
- 完成 CESS Node 所有 pallet 的 benchmark 编写和测试;
- 完成 TEE Worker 密钥共享模块的升级,使用链上加密通道替代原 p2p 网络,提升安全性和稳定性;
- 完善 nodeadm 程序,以适配多类型 TEE Worker 的部署需求;
- 新增质押金赎回冷却机制,存储节点被强制踢出网络后需经过 180 天冷却期才能赎回质押金;
- 完成 CESS Node storage-handler 等 pallet 的 README 文档撰写;
- 完成 TEE Worker 用户指南的编写,包含 TEE Worker 类型介绍、部署方法和原理介绍等内容;
2. 存储节点 [v0.7.8]
- 更新 gRPC 通信模块,以适配最新版本 TEE Worker 的交互要求;
- 新增保存闲置空间证明密钥的功能,以减少链上获取密钥的查询次数;
- 修复存储节点使用非签名账户质押时,查询起始质押区块高度失败的问题;
- 利用自动化文件上传脚本完成存储节点文件上传压力测试,节点存储服务状态良好;
- stat 命令新增已声明空间、负债信息等数据的展示;
- increase 命令新增 space 子命令,用于追加存储空间;
- 修复查询随机挑战奖励收益信息失败的问题;
- 修复服役文件 Tag 计算后不向区块链上报状态的问题;
- 新增存储节点主动拒绝接收无效用户文件的功能,防止了节点资源的浪费;
- 更新存储节点 stat 命令,增加了节点质押起始区块高度信息的显示;
- 完成一机部署多存储节点容器的用户操作手册的编写和测试;
- 优化存储节点交易发送机制,当发送结果异常时主动查询链上状态来确定交易是否发送成功;
产品
CESS 致力于为 Web3 提供可落地的存储服务和 CDN 服务,满足大规模商用存储需求,实现了毫秒级数据检索和返还。CESS 首创了去中心化对象存储服务(DeOSS),CESS 网络的产品生态也逐渐丰富与繁荣,目前已孵化出在线文件分享工具(DeShare)、公链快照存储服务、CESS 网盘等创新应用,欢迎前去体验。以下是本月进展:
1. 对象存储服务(DeOSS)
- 新增 go-sdk 解析区块时间戳的功能;
- 新增 go-sdk 查询存储节点质押起始时间(区块高度)的功能;
- 新增用户文件名特殊字符过滤功能,防止特殊字符无法显示的问题;
- 新增文件分块上传和断点续传功能,以提高大文件的传输效率和稳定性;
- 完善 go-sdk 链上事件解析功能,支持所有系统交易事件的解析;
- 完善认证方式,移除了申请 Token 授权的方式,统一更新为使用钱包账户认证;
- 更新用户操作指南,根据最新版本的 DeOSS 完善了所有 API 请求示例;
- 优化文件调度机制,优先将用户文件分发至下载服务良好的存储节点;
- 优化文件上传流程中的 Token 校验机制,完善了对各种异常情况的判断和处理;
- 修复因 RPC 连接失败导致 DeOSS 设置区块链状态失败的问题;
- 升级文件上传流程,减少因用户空间不足等因素造成交易失败的问题;
- 升级 go-sdk 交易发送模块,交易发送后追加 6 秒等待时间,以等待交易在区块中被确认;
2. 区块链浏览器(Substats)
- 完成 v2.0 后台数据库表的设计与创建;
- 完成 v2.0 后台解析区块交易功能的开发;
3. 在线文件分享工具(DeShare)
- 升级后台邮箱模块,支持向用户指定邮箱发送已上传文件的文件名、下载链接等信息;
- 完成新版本页面的开发和上线;