CC3200 —— No.3 AES的使用
概要
高级加密标准(AES)安全模块基于二进制**提供硬件加速的数据加密和解密操作。 AES是一个对称密码模块,支持硬件中的128位,192位或256位**,用于加密和解密。 AES模块基于对称算法,这意味着加密和解***是相同的。 加密数据意味着将其从纯文本转换为称为密文的不可理解的形式。 解密密文将先前加密的数据转换回其原始纯文本格式。
应用详情
该应用程序是在CC3200上使用AES DriverLib函数的参考。 开发者/用户可以参考这个简单的应用程序并在其应用程序中重新使用这些功能。 此应用程序可以使用或不使用“Uart终端”。
如果用户希望使用“Uart Terminal”提供一些输入并按照执行路径打印,则可以通过在aes_main.c文件中定义“USER-INPUT”来实现。
aesdemo:该命令允许用户练习CC3200上的AES功能。 该命令需要两个参数aes-mode和key-len。
- aes-mode是用户可以选择的AES算法,值可以是ECB或CBC或CTR或ICM或CFB。
- key-len是用户需要定义的**的长度,值可以是128或192或256。
此外,用户将被提示输入更多的“键”和“纯文本输入”
不定义或不定义USER-INPUT将允许用户在“调试”模式下跟踪IAR或CCS IDE上的执行路径,用户不需要输入。
源文件简要解释
main.c - 包含用于加密和解密的核心逻辑的主文件。 文件中的函数使用DriverLib调用来执行加密和解密。
支持文件
aes_userinput.c - 该文件在USER-INPUT模式下使用。 文件中的函数读取用户的输入,解析输入字符串并提供aes_main.c中的核心逻辑函数
pinmux.c - 由PinMUX实用程序生成。 UART0引脚在该文件中引出。
startup_ccs.c - 与CCS相关的功能
startup_ewarm.c - IAR相关功能
uart_if.c - 在UART上显示信息的函数
用法
1.设置串行通信应用程序(超级终端/ TeraTerm)。 有关详情,请访问终端设置。 在主机上,使用以下设置打开超级终端
2.运行参考应用程序(/ IAR / CCS)。
3.在超级终端上出现提示
AES命令需要发出并且可以看到结果
用户输入消息进行加密和解密时的终端快照