1/ SIMD-0332,由 @bw_solana 编写,减少了 Solana 的 Turbine 加权洗牌中使用的 ChaCha 轮次,从 20 -> 8。此优化在保持验证者树生成的加密安全性的同时,提升了区块传播的性能 🧵
2/ ChaCha 轮是什么意思?ChaCha 轮像一个确定性扰动器,每一轮对数据应用一系列函数进行扰动。更多的轮次会导致更多的扰动和更强的安全性,但也会增加计算时间。
3/ 今天,Turbine 在构建区块传播树时使用 ChaCha20 以确定性地打乱按权重加权的验证者。这可以防止审查攻击,但增加了计算开销。
4/ 随着 Agave 转向 XDP,使得重传发送几乎瞬时,权重洗牌现在消耗了大部分时间。每个碎片约为 1µs,ChaCha8 确保这一步保持高效而不成为瓶颈。
5.27K