生如夏花的博客

专注于工业物联网行业数据采集,嵌入式Linux系统裁剪,5G智慧网关软件开发等

MQTT建立连接

MQTT协议的两个主要组件是客户端和代理。

MQTT客户端可以是任何运行MQTT库并通过网络连接到MQTT代理的设备。

MQTT代理负责接收、过滤以及向已订阅的客户端发送消息,并处理客户端身份验证和授权。

MQTT发布/订阅模式

发布/订阅(Pub/Sub)架构提供了一种灵活的、可伸缩的方式来构建能够处理许多连接的客户端的分布式系统。

MQTT基于发布/订阅架构,支持持久会话与服务质量QoS功能,实现了发布者与订阅者在空间、时间以及同步等方面的解耦。

MQTT简介

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议)是一个基于C/S架构的发布/订阅模式的消息传输协议

目的是在带宽和连接有限的不可靠网络的环境下发送少量数据,设计思想是轻量、开放、简单并且易于实现。

这些特性使得MQTT非常适合在受限的环境的环境中使用,比如机器对机器(M2M)通信和物联网(IoT)。

TLS

SSL/TLS是使用最广泛的加密通信方法。

SSL/TLS中广泛运用了对称密码、消息认证码、公钥密码、数字签名、伪随机数生成器等密码技术。

SSL(Secure Socket Layer)与TLS(Transport Layer Security)是不同的,TLS相当于是SSL的后续版本。

SSL/TLS可以通过切换密码套件来使用强度更高的密码算法。

PGP

PGP说明
时间1990年
作者菲利普·齐默曼
全称Pretty Good Privary
用途商业密码软件
支持平台Windows、Mac OS X、Linux
版本商用版、免费版
GnuPGGNU Privacy Guard,遵循OpenGPG规范编写的密码软件。

PGP设计目的是在连国家都不可信的情况下仍然能够使用,因此并不关心有没有可信的认证机构,而是采用了“由用户自己来决定信任谁”的设计。

伪随机生成器

在密码技术中,随机数被用来生成密码。

随机数的性质分为三类:随机性、不可预测性和不可重现性。

线性同余法是很多库函数所采用的生成伪随机数的方法,但不可以用于密码技术。

用于密码技术的伪随机数生成器,需要使用单向散列函数和密码技术确保不可预测性。

Linux路由表

主机和网关(路由器)的本质区别在于主机从不把数据报从一个接口转发到另一个接口,而网关(路由器)则要转发数据报

当今大多数用户系统,IP层既可以配置为网关(路由器)的功能,也可以配置为主机的功能。