说明:
1、mbedTLS的前身是PolarSSL,开源免费。
主要提供了的SSL/TLS支持(在传输层对网络进行加密),各种加密算法,各种哈希算法,随机数生成以及X.509(密码学里公钥证书的格式标准)的支持。
2、mbedTLS支持的加密算法含对称加密和非对称加密
(1)mbedTLS支持的对称加密算法有:AES,ARCFOUR,Blowfish/BF,Camellia,DES/3DES,GCM,XTEA
加密和解密用到的密钥是相同的,加密速度快,适合数据收发通信,缺点是密钥的传输略麻烦。
(2)mbedTLS支持的非对称加密算法有:Diffie-Hellman-Merkle,RSA,Elliptic Curves over GF(p),Elliptic Curve Digital Signature Algorithm (ECDSA)和Elliptic Curve Diffie Hellman (ECDH)
加密和解密用的密钥是不同的,加密的速度慢,适合密钥的传输。
3、关于AES加密,简单的说就是下面图示,由密钥和要解码的数据,通过算法生成密文,然后发给接受者,接受者使用相应的密钥解密数据。
4、现在研究下这个,主要是方便后面新版RL-TCPnet V7.X教程和对应的物联网教程做好铺垫。
例子说明:
1、使用的256bit AES加密。
2、mbedTLS支持密钥种子和密钥的生成,其中密钥种子函数提示要在Windows或者unix平台才可以使用,所以程序里面直接用的密钥生成函数。
3、例子是采用AES的CBC模式,这种模式每次固定加密或解密16个字节的数据,不足16个时,补0。由于mbed的API做了封装,每次可以处理16字节的整数倍。
4、特别注意CBC模式有个初始化表IV,也是16个字节。大家使用的时候要保证加密端和接收端一致。
例程下载:
链接:https://pan.baidu.com/s/1pv3hogesXA2lESDtq2Ur5g 提取码:gnaw
安装最新的mbedTLS软件包:
测试效果:
上一篇:基于STM32的无损压缩算法miniLZO移植
下一篇:【STM32H7教程】第32章 STM32H7的TIM定时器基础知识和HAL库API
推荐阅读
史海拾趣
DIOFIT公司一直秉持着品质至上的生产理念,注重产品质量和用户体验。他们严格控制原材料采购和生产流程,确保每一款产品都符合高标准的质量要求。同时,DIOFIT公司还建立了完善的售后服务体系,及时解决用户在使用过程中遇到的问题,赢得了用户的信赖和好评。
品质是Big-Sun Electronics Co Ltd公司一直以来的核心竞争力。公司建立了严格的质量管理体系,从原材料采购到生产流程控制,再到产品出厂检验,每一个环节都严格把关。同时,Big-Sun还注重品牌建设,通过广告宣传和客户服务,不断提升品牌知名度和美誉度。
Broyce Control的故事始于1963年,当时创始人[XXXXX]在英国的一个工业小镇上开设了这家专注于控制面板制造的公司。起初,Broyce Control主要为当地的中小型工厂提供定制化的电气控制解决方案。由于[XXXXX]对电气技术的深刻理解和对工业应用的敏锐洞察,公司的产品在市场上迅速获得了认可。随着口碑的传播,订单量逐渐增加,Broyce Control逐渐积累起了一定的资本和技术储备。
随着全球对环境保护意识的增强,ddm hopt + schuler公司开始关注绿色制造和可持续发展。公司投入大量资源进行绿色生产技术的研发,成功开发出一系列节能、环保的电子生产设备。这些设备在保障生产效率和产品质量的同时,显著降低了能源消耗和废弃物排放。这一举措不仅提升了公司的品牌形象,也赢得了客户和市场的广泛赞誉。
进入21世纪后,ddm hopt + schuler公司紧跟数字化浪潮,积极推动数字化转型和智能制造。公司引入先进的物联网、大数据和人工智能技术,对生产线进行智能化改造和升级。通过实时数据监控和分析,公司能够更准确地预测市场需求、优化生产计划、提高生产效率。同时,智能制造也为企业带来了更高的灵活性和更低的成本。
大家好! 和大家探讨一个问题,着个问题是我从来没有经历过的,很费解! 电路图附在附件上,很简单,主要是共阳显示,单片机即使是送静态显示,LED始终是全亮,如果把段码写成全 暗,仍然是全亮!现在在怀疑是单片机是不是烧坏了,但是单片机 ...… 查看全部问答∨ |
|
把内部RAM中20H单元中的1个字节十六进制数转换为2位ASCII码,存放在R0指示的两个单元中 MAIN:MOV A,20H ; SWAP  ...… 查看全部问答∨ |
|
最近我拿到一个新的开发板,发现,往nand flash拷贝几十M的数据进去,断电再启动后, 1,系统启动的时间变慢(看了启动串口输出,是卡在nand flahs部分) 2,产生了FILE00001.CHK之类的文件,而且拷贝,断电再启动的次数越多,之类文件产生的越多 ...… 查看全部问答∨ |
如何用codewarrior+usb_tap 调试MPC827x的BSP包? 刚开始学习开发bsp包,手上有MPC827x+codewarrior+usb_tap,弄了半天还是没有头绪,请做过的给个建议! 先谢谢了! 我的思路是这样,先根据codewarrior的配置文件连上cpu,这是flash和sdram都初始化好了,然后再调串口,加中断,local bus,pci等 ...… 查看全部问答∨ |
本人使用的是cel公司的zic2410芯片,代码是原厂提供的关于zigbee组网(本人没有改过)。 现在打开后找不到man函数,当我点击“start debug”后,出现了以下的汇编“main”函数 ,可是程序框中也没有对应的程序。 在左边的project栏里,除了c文件 ...… 查看全部问答∨ |