快速链接:
.
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈
说明: 在无特别的说明下,本文讲述得都是armv8-aarch64体系、linux kernel 4.14 arm64软件环境!
文章目录
术语:
SIMD Single-Instruction, Multiple-Data
ARMV8的安全扩展使用SIMD指令、floating-point寄存器.
1、ARMv8.0的安全扩展:
• ARMv8.0-AES, which includes AESD and AESE instructions.
• ARMv8.0-SHA, which includes the SHA1* and SHA256* instructions.
2、Armv8.2的安全扩展
AES和SHA可配置enable、disable
ID_AA64ISAR0_EL1.AES
ID_AA64ISAR0_EL1.{SHA2, SHA1}
又增加了两个功能(仅适用于aarch64):
(1)、SHA增加SHA2和SHA3:
• SHA2-512 (SHA512).
• SHA3
(2)、支持 SM3 and SM4
ID_AA64ISAR0_EL1.{SM3, SM4}
3、aarch64指令
ARMV8的安全扩展使用SIMD指令、floating-point寄存器.
(1)、Armv8.0 Cryptographic Extension instructions
(2)、Armv8.2 SHA2-512 instructions
(3)、Armv8.2 SHA3 instructions
(4)、Armv8.2 SM3和SM4
4、aarch32指令
而在aarch32上,就没有SHA2和SHA3、sm3和sm4指令了。