引言
物联网的关键在与可通过网络进行远程数据传输与控制,例如手机APP控制家里的摄像头、微波炉等,安全问题尤为重要,对传输数据进行加密传输成为保障网络安全的必然手段之一,在物联网领域,比较成熟且应用广泛的两个加密库分别是OpenSSL和mbedtls,由于mbedtls小巧灵活,可灵活裁剪代码,并占用极小的内存空间,被广泛应用于物联网设备数据加密解密,后面文章主要也是为要mbedtls加密库展开。
mbedtls简介:
从功能角度来看,mbedtls分成三部分:
- 密码学工具箱实现
- X.509证书处理实现
- TLS/DTLS协议实现
相比于OpenSLL,mbedtls小巧灵活而且易于使用,具有多种配置选项,可根据实际情况灵活地裁剪代码,降低对硬件平台的资源占用,mbedtls的测试用例保证了mbedtls的稳定性和可靠性
一般规模的公司很难独立开发新的密码学算法,建议再物联网安全应用中选择已有的安全算法。这部分基本是移植过来,懂得基本原理和使用即可,无需过多关注密码学内容即可保证系统的加密安全性。
可以看到,mbedtls是基于TCP/IP传输层协议封装的一层通讯加密接口,移植后应用层直接调用即可。
安装方法:
$ sudo apt-get update
$ sudo apt-get install cmake // 下载cmake
$ git clone https://github.com/ARMmbed/mbedtls.git
$ cd mbedtls/
$ git reset --hard 6c34268e203d23bbfbfda3f7362dac8b9b9382bc
$ cmake -DUSE_SHARED_MBEDTLS_LIBRARY=On . // 启用生成动态链接库选项
$ make
$ sudo make install
$ sudo ldconfig
$ echo "export MBEDTLS_BASE=mbedtls源代码路径" >> $HOME/.bashrc // 添加环境变量
$ source $HOME/.bashrc
验证是否安装成功:
$ hello
若安装成功则会打印如下内容:MD5(‘Hello, world!’) = 6cd3556deb0da54bca060b4c39479839
如何对mbedtls进行裁剪:
mbedtls可通过修改配置文件的方式进行裁剪,默认的配置文件位于include/mbedtls/config.h文件中
注意:数据加密,其安全性不在于对方不知道网络传输所使用的加密算法,而在于知道哪一种算法,但是却还是无法解密,这才是算法加密的精髓所在
今天的文章数据加密与安全专题《mbedtls工具篇,实用教程1@mbedtls简介和安装教程》分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/11784.html