002-STM32+BC26|260Y(NB-IOT)基本控制篇(阿里云物联网平台)-STM32+BC260Y使用MQTT+SSL(mbedtls)加密方式接入阿里云物联网平台(不验证服务器证书)
说明
阿里云的TCP和TCP+SSL方式连接MQTT服务器使用的端口号都是 1883;
如果使用SSL连接, 拼接的ClientID参数时 securemode=2
服务器下发的TCP数据 ---> 经过mbedtls库解密 ---> 获得真实数据
测试
1.打开本节代码
2.修改自己的阿里云设备信息
3.编译下载程序, 观察日志打印口(日志都是加密的数据,就大体说一下)
程序说明
1,为便于使用mbedtls的SSL功能,我封装了下
2.先说几个自己需要实现的函数,mbedtls底层会调用这些函数
随机数函数和返回时间戳函数(不验证证书时间的话用不到)
网络接收处理函数(mbedtls底层会自动调用这个函数)
SSL的底层获取数据的方式是指明需要多少个数据,然后咱再返回多少个数据.
所以我把数据接收以后存储到了环形队列, 然后SSL要多少我就给多少.