分组密码有五种工作体制:1.电码本模式(Electronic Codebook Book (ECB));2.密码分组链接模式(Cipher Block Chaining (CBC));3.计算器模式(Counter (CTR));4.密码反馈模式(Cipher FeedBack (CFB));5.输出反馈模式(Output FeedBack (OFB))。
以下逐一介绍一下:
1.电码本模式(Electronic Codebook Book (ECB)
这种模式是将整个明文分成若干段相同的小段,然后对每一小段进行加密。
2.密码分组链接模式(Cipher Block Chaining (CBC))
这种模式是先将明文切分成若干小段,然后每一小段与初始块或者上一段的密文段进行异或运算后,再与密钥进行加密。
3.计算器模式(Counter (CTR))
计算器模式不常见,在CTR模式中, 有一个自增的算子,这个算子用密钥加密之后的输出和明文异或的结果得到密文,相当于一次一密。这种加密方式简单快速,安全可靠,而且可以并行加密,但是在计算器不能维持很长的情况下,密钥只能使用一次。
4.密码反馈模式(Cipher FeedBack (CFB))
5.输出反馈模式(Output FeedBack (OFB))
AES让我想到030 051M0内核是没有AES的好像,L053 M0+内核是有AES的
我们来看下同样是AES,寄存器有啥区别
首先看下L053
在看下复旦微的
这个AES感觉各厂家都差不多的
复旦微的多了个中断
看下S文件 的确有
看下AES_CR寄存器,主要就是通过这个来切换各种处理模式
Test_AES_CBC_Decrypt
AES_EncryptionAndDecryption(keyBuf,16,ivrBuf,dataInBuf,16,dataOut,&dataOutLen);
去加解密网站看看结果
AES_EncryptionAndDecryption(keyBuf,16,ivrBuf,dataInBuf,16,dataOut,&dataOutLen);
去AES加解密网站看看结果
基本还是正确的
CTR后面的就看看结果,没有再去测试了