【分享】在Linux用户态使用MPSoC AES 加密加速器

作者:付汉杰,hankf@xilinx.com,文章转载自:博客园

文档Using Cryptography in Zynq UltraScale MPSoC提供了在Linux用户态使用MPSoC AES 加速器的例子。

如果要使用Device key或者PUF key,需要使用Xilinx Linux 2020.1。Xilinx Linux 2020.1增加了选择密钥类型的功能。选择密钥类型的代码如下:

__u8 key_type[] = {AES_DEVICE_KEY};
// __u8 key_type[] = {AES_PUF_KEY};

setsockopt(tfmfd, SOL_ALG, ALG_SET_KEY_TYPE, key_type, 0);
setsockopt(tfmfd, SOL_ALG, ALG_SET_KEY, NULL, 0);

生成密钥,可以参考《UG1283 Bootgen User Guide》。

另外,文档Using Cryptography in Zynq UltraScale MPSoC 提供了在Standalone/FreeRTOS环境下使用MPSoC AES/RSA 加速器的例子。

推荐阅读