PCIe SSD固件签名技术解读

企业为什么要定期进行固件升级?

在一款产品出厂后,随着所使用的软、硬件等环境的改变,产品将出现对新的软、硬件不兼容或者所运行的业务程序速度逐渐降低等现象。同样,此类问题也会在SSD产品发生,为此SSD厂商会定期推出Firmware,其目的主要有两点:

1)通过Firmware更新,修复Bug,提升性能

2)通过Firmware优化、升级,使得设备更好的兼容新的软、硬件,使之保持最佳的工作状态

 

为用户提供更安全的固件升级

作为业内领先的PCIe SSD产品供应商,Memblaze为了保证向客户提供长久处于最佳状态的SSD产品和解决方案,同样会向用户定期发布Firmware更新。而为了避免在交付过程中给黑客或者蓄意破坏者留下篡改固件的漏洞,Memblaze对Firmware加入了固件签名,确保在交付传输过程中的有效性和安全性。目前,PBlaze5900系列SSD产品已全面支持固件签名技术。

PCIe SSD固件签名技术解读

Memblaze在向用户发布固件时,固件经过SHA算法生成32字节(256bit)的固件摘要A,再通过Memblaze独有的RSA私钥对固件摘要进行加密,最后加密摘要报文与固件一起组成经过数字签名的固件。此过程就好比,《X战警》中那个具备分身术的变种人,利用异能瞬间产生N个分身,并通过特殊防伪技术,最终出现N个真假难辨的“自己”,让敌方目瞪口呆。

PCIe SSD固件签名技术解读

若想精准辨别,就要先**“防伪技术”。听上去很难,实际上Memblaze早已设定完善的解锁机制。用户在一键下载数字签名固件后,先利用存储在PBlaze5 SSD只读区域的RSA公钥对签名固件解密获得初始固件摘要A,再通过SHA算法生成新的32字节固件报文摘要B,两固件摘要进行比对。若完全相同,固件则是由Memblaze提供的有效固件,用户即可放心升级。

PCIe SSD固件签名技术解读

从固件安全和升级效率来讲,这些细节技术不得不提。PBlaze5 SSD可将固件存放在多个slot,进行双备份冗余,其中slot1设置为只读用来存放出厂特定版本,也就是包含RSA公钥固件,slot2和3可以存放不同的版本固件。用户逐步完成下载、固件摘要比对之后(完全相同),固件会被写入NAND介质中,且无需热启动,即可完成升级,进而提升固件升级效率。