请问应当使用什么软件计算.bin文件的SHA256值?
Posted: Thu Jun 04, 2020 2:09 am
我们的项目有OTA的需求。我们OTA的过程是,首先向服务端获取一个UpdateInfo文件,文件里记录了最新版本号、更新内容还有新版本的固件SHA256值等信息。当发现服务器的最新版本号高于当前固件版本号就会开始升级,升级后最后一个步骤就是校验哈希值,把本地计算出来的哈希值跟UpdateInfo里面的哈希值进行比对,一致则说明数据没有丢包或错包。
这种方案需要基于一套相同的SHA256算法,但是我发现网上下载的或者是系统自带的SHA256校验软件,计算出来的校验值,跟ESP32使用库函数计算出来的校验值,是不一致的, 因此判断ESP32内部库函数的SHA256算法可能不一样,也可能存在大小端对调或者是补码的过程。
现在我们的做法是,每次要计算固件的哈希值,把要计算的固件当成烧录到ota2分区,然后再烧录一个能计算sha256的固件到ota1分区,启动ota1分区去计算ota2分区的SHA256值,这种方法十分繁琐。
所以我想知道有没有一种软件,能够得出与ESP32库函数计算出来相同SHA256的软件?
这种方案需要基于一套相同的SHA256算法,但是我发现网上下载的或者是系统自带的SHA256校验软件,计算出来的校验值,跟ESP32使用库函数计算出来的校验值,是不一致的, 因此判断ESP32内部库函数的SHA256算法可能不一样,也可能存在大小端对调或者是补码的过程。
现在我们的做法是,每次要计算固件的哈希值,把要计算的固件当成烧录到ota2分区,然后再烧录一个能计算sha256的固件到ota1分区,启动ota1分区去计算ota2分区的SHA256值,这种方法十分繁琐。
所以我想知道有没有一种软件,能够得出与ESP32库函数计算出来相同SHA256的软件?