zynq7000程序加密(二)

时间:2024-03-27 14:45:40

参考资料:  

ZYNQ U-BOOT 鉴权和解密方法(authentication和decryption)  来自 <https://blog.csdn.net/cph77777/article/details/79708982>

 

主要内容:

uboot中下载加密的PL文件;

 

开发环境:

 windows 7 x64   +  vivado2017.4  +  SDX2017.4

vmware12中(ubuntu16.04.3    +  vivado2017.4   +  SDX2017.4)

 

uboot中下载加密的PL文件

1. U-Boot 命令配置:

最新的 2018.01版本的UBOOT中添加解密命令: zynqrsa 和 zynqaes; 并用生成的uboot.elf制作启动boot.bin文件。

zynq7000程序加密(二)

 

2. 制作加密PL文件:

步骤1: 鼠标右键单击生成的 fsbl  -->  "create boot image"

zynq7000程序加密(二)

步骤2:  设置好加密选项后, 并勾选上“split”拆分成独立的加密文件。

 点击按键“create image”后生成多个加密文件,其中jm600_v30.bit.bin是PL的加密文件。

zynq7000程序加密(二)

zynq7000程序加密(二)

 

3. 下载加密PL文件:

将PL的加密文件jm600_v30.bit.bin复制到SD卡,上电启动到uboot中,通过zynqaes命令解密并下载到PL

读取加密PL文件到DDR内存0x10000000位置;

Uboot>  fatload mmc 0   0x10000000   jm600_v30.bit.bin

reading fpga.bit.bin

4044672 bytes read in 237 ms (16.3 MiB/s)

Uboot>  

 

将加密下载加密文件;

Uboot>   zynqaes  load   0x10000000   ${filesize} 

zynq_decrypt_load: FPGA config done

Uboot>

zynq7000程序加密(二)

 

 

4. 编辑uboot的启动脚本,上电时自动下载加密PL文件:

   请参考文章:    《zynq7000采用Nandflash 启动系统》

 

 

 

相关文章