OTP 软件加密运用参考
为了防止软件被他人盗用,spansion flash给每个芯片植入了代表身份的unique ID,增加了OTP扇区,目前我们可以运用这两个特性,来实现软件的加密保护。软件加密保护功能分两个目标文件实现:第一个为加密软件,是把加密后的unique ID写入OTP扇区;第二个为正式软件,正式软件里需要增加unique ID的校验功能。具体步骤详情如下:
1. 写OTP,在flash 初始化后,把加密后的unique ID写入OTP扇区,确认OTP扇区写入成功后, 设置状态寄存器S11 S12 S13为1,使OTP区处于只读状态,确保OTP扇区不被随机修改,软件流程:
2. 校验unique ID。确保OTP写入成功后升级正式出货软件,该软件在flash初始化时先读出OTP
扇区里的数据,然后解密,把解密获得的ID跟从flash读到的unique ID作比较,如果相同程序继续运行。