某中心Graviton2芯片的优化提升效率,形式化验证缩短开发时间。
大多数在线安全交易受RSA等公钥加密方案保护,其安全性基于大数分解的难度。公钥加密通过支持私钥的加密交换提升安全性,但由于依赖大整数模幂等操作,会带来显著计算开销。研究人员和工程师引入各种优化以提高公钥加密效率,但由此产生的复杂性使得验证加密算法行为正确变得困难。加密算法中的错误可能导致灾难性后果。
本文阐述某中心自动推理团队如何通过结合形式化验证,在某中心Graviton2芯片上将RSA签名吞吐量提升33%至94%(取决于密钥大小),同时证明优化方案的功能正确性。
Graviton2是基于Arm Neoverse N1内核的服务器级CPU。为提升RSA签名吞吐量,结合了快速模算术技术与Graviton2特定的汇编级优化。代码采用恒定时间风格编写(例如无秘密相关分支或内存访问模式)以避免侧信道攻击。优化函数及其证明已纳入某机构Web服务的s2n-bignum形式化验证大数运算库,并被AWS-LC密码库及其绑定项目采用。
密钥大小(位) | 基线吞吐量(操作/秒) | 优化后吞吐量(操作/秒) | 加速比(%) |
---|---|---|---|
2048 | 299 | 541 | 81.00% |
3072 | 95 | 127 | 33.50% |
4096 | 42 | 81 | 94.20% |
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。