验证器集轮转
为了在平台区块链上达成共识, 一组特定的主节点, 称为验证器, 验证和签名区块. 直到 0.19 版, 验证器集是静态的, 并且托管在 DCG 控制的节点上. 在 0.20 版本中, 长效主节点仲裁链 (LLMQ) 用于在所有主节点之间动态分配和轮转验证器集. 这种方法均匀地分配工作量并使网络更加安全和可靠.
加密的证明
此前, 客户端需要使用受信任的完整节点来确保从平台网络检索到的数据的有效性和完整性. 在这个版本中, DAPI 提供了有效的加密证明以及平台数据, 使轻客户端 (例如移动钱包) 能够安全地与 Dash 平台进行互动.
平台状态阈值签名
验证器集此前使用平台状态加密摘要的非聚合 EdDSA 签名, 以提供加密证明并保证网络共识. 这些签名的数量和总体大小使得轻客户端使用证明来源变得紧张. 在 0.20 版本中, 使用 BLS 阈值签名机制只产生一个签名, 移动钱包和其他轻客户端可以轻松验证.
点对点层级优化
此前, 需要依赖完整节点和验证器集来验证所有类型的 P2P 信息. 这意味着完整节点还接收到包含仅与验证器集相关的网络通讯, 以达成共识. 在新版本中, 完整节点不再接收验证器集所产生的中间共识通讯. 相反, 验证器集只生成一条带有 BLS 阈值签名的信息. 以将产生的共识决策传播到网络的其余部分. 这大大减少了网络负载, 因为不再需要将很多消息传播到完整节点, 从而减少了 99.5% 的带宽使用.
平台元数据
Dash 平台现在将额外的元数据附加到 DAPI 响应中, 例如当前平台区块链高度, 以及参与网络共识的所有节点观察和同意的同步核心区块链高度. 由于平台和 Core 区块链是异步的, 平台使用这个 Core 高度来确保所有平台节点对 Core 网络状态具有确定性的看法.
严格和安全的数据合约验证
新版本的 Dash 平台协议将用于定义数据合约的 JSON Schema 规范更新为最新的 2020-12 版本, 并采用严格的验证规则来防止提交给网络的数据合约中潜在的用户错误. 还采用了特殊的正则表达式引擎来缓解 ReDoS 攻击.
强大的 JS 钱包同步
之前版本的 JS 钱包库在同步期间并不总是从 DAPI 接收所有请求的交易和即时锁定信息. 这已在 0.20 版中解决.
Dashmate 优化
最新版本的 Dashmate 包含 20 个修复和优化. 其中最重要的是旨在使设置本地开发网络更加方便和可靠, 以及性能优化和 Windows 系统的支持.