最近在学习SP6的microblaze软核,学习到bootloader。这个时候考虑到了加密。
我的设想:
系统启动到bootloader。
1.bootloader读取DNA,根据算法,算出加密密文。
2.读取SPI FLASH存放加密密文的地址。得到存储的加密密文。
3.比较1和2产生的密文,如果相等,那么拷贝程序2到内存,并进入程序2(正常应用程序。。不介绍),如果不相等拷贝程序1到内存,并进入程序1(见下面)。
4.程序1:读取DNA,算出加密密文,写入SPI FLASH存放密文的地址,并删除自己,擦出相应空间SPI FLASH。由于程序1会删除自己,那么程序1,只会运行一次。如果下次还不想等。那么也是空的程序。
总结:这是我想到的适合量产的方法,比那些需要借助上位机的方法方便,不知道是否可行? |