加密
文章平均质量分 84
汽车电子菜鸟
一步一个脚印,创造美好明天
展开
-
C语言实现AES加密解密
AES加密是美国联邦政府采用的一种块加密标准,如今已经被全世界广为使用。嵌入式开发中我们也经常会用到加密解密算法,如果没有硬件模块来实现,就需要用到C代码软件实现。下面介绍调用mbedTLS中的AES加密解密函数实现AES算法。原创 2016-07-19 22:53:13 · 41963 阅读 · 4 评论 -
C语言编写CAPLdll
CANoe是一个强大的总线仿真工具,通过CAPL语言可以实现较为复杂的ECU内部逻辑,有效仿真总线网络。但是在使用的时候经常会碰到CAPL库函数不够用的情况,比如需要用到AES加密时,CAPL没有对应函数,而又没有现成的CAPL加密代码。这时就需要编写一个CAPL dll文件,调用外部代码。本文介绍通过Visual Studio编译c代码生成CAPL dll。原创 2016-07-28 23:30:15 · 11186 阅读 · 6 评论 -
C语言实现MD5/SHA1/SHA256/SHA512
哈希函数是我们做校验时经常会用到的密码学工具,目前常用的工具有MD5、SHA1、SHA256、SHA512等。其中MD5已经被证实不安全,目前只能作为一种辅助的校验手段,而不能防篡改。下面介绍如何使用mbedTLS协议栈中的hash代码生成上述4种哈希摘要。原创 2016-08-01 23:28:05 · 10260 阅读 · 0 评论 -
C语言实现AES-128 CMAC算法
美国国家标准与技术研究院NIST推荐了一种CMAC计算方式,可以避免CBC-MAC带来的缺点,编号为800-3B,文档可以从其官网上下载。该算法通过MAC密钥生成k1和k2两个子密钥,并规定了数据位填充的规则,可以通过AES-128、AES-192、AES-256三种模式进行MAC计算,支持所有整数字节的数据以及长度为0的输入。下图为MAC算法处理不需要位填充和需要位填充的两种情况。本文介绍AES-128生成的CMAC实现。原创 2016-08-29 13:00:01 · 40652 阅读 · 5 评论