会话开始时,客户端发送以stream开头的XML流到服务器:

<?xml version”1。0”>

<stream;stream to=”harrypotter。lit”

version=”1。0”

xmlns=”jabber:client”

xmlns;stream=http://adobe。jabber。org/streams>

作为回应,服务器通过向客户端发送<stream:stream>标签反方向打开的应答数据流:

<?xml version=”1。0”>

<stream:stream from=”harrypotter。lit”

Id=”k0d1m44rt74ht”

Version=”1。0”

Xmlns=”jabber:client”

Xmlns:stream=”http://adobe。jabber。org/streams”> 

打开应答的数据流之后,服务器尝试与客户端就如何进行连接达成一致。首先,服务器告知客户端其支持的数据流形式:

<stream:features>

<starttls xmlns=”url:ieft:params:xml:ns:xmpp-tls”>

<optional/>论文网

</starttls>

<mechanisms xmlns=”url:ietf:params:xml:ns:xmpp-sasl”>

<mechanism>PLAIN</mechanism>

<required/>

</mechanisms>

<compression xmlns=”http://jabber。org/features/compress”>

<method>zlib</method>

</compression>

</stream:features>

客户端发送包含客户用户名以及密码的数据流到服务器上:

<auth xmlns=”url:ieft:params:xml:ns:xmpp-sasl” mechanism=”PLAIN”>

AGFsaWNLAHBhc3N3b3JkCg==

</auth>

服务器回应客户端认证成功:

<success xmlns=url:itef:params:xml:ns:xmpp-sasl”/>

之后服务器将会重置会话,发送新的以stream开头的XML流并声明与之前不同的数据流特点,最后开始XMPP会话:

<iq id=”uyq9z865” type=”set”>

<session xmlns=url:ieft:params:xml:ns:xmpp-session/>

</iq>

服务器提示应答成功:

<iq id=” uyq9z865” type=”result”/>

至此客户端可以开始发送信息,上面列举的XMPP会话模式中包含了XML流和XML节的交互以及客户端发出的输出XML节和由服务器分配的输入XML节。

由上述数据流可以看出在XMPP协议的运用中,无论是否在等待响应,客户端总是可以毫无阻碍的发送大量的请求。当这些请求被响应时,服务器端会向客户端动态的返回相关的数据流。这在XMPP协议的用户体验中是一项十分重要的应用。

2。2。3  认证方式

SASL框架的优点在于其允许应用开发者基于不同的需求去支持不同的认证机制。下面列举一些在XMPP社区广泛使用的认证方式: 

(1)PLAIN

该认证方式为基于密码的简单方法。用户密码不经任何加密直接被发送出去,有着暴露信息的潜在危险,故该方式仅适用于其XML数据流在TLS的保护之下。

(2)DIGEST-MD5

相对于PLAIN机制,该机制提供了较强的安全性保障。由于其密码在传输的过程中经过了加密处理,所以不需要TLS,但是其互通性存在一定问题。

(3)SCRAM

该机制在于TLS关联时为抵抗大多数安全威胁提供了较强的安全防护,但是由于此机制属于较新的技术,在所有XMPP服务器上使用SCRAM还需要一段时间。

这些认证方式根据不同的用户需求有效地保护了用户的信息安全以及数据传输的稳定。文献综述

2。3  XMPP协议的优点                                                                                                                                                                                                                     

上一篇:Zemax小型尘埃粒子计数传感器光学系统仿真设计
下一篇:基于坐标变换方法的隐身斗篷以及单元结构设计

基于移动通信的工业生产线状态监测技术研究

XMPP多点尘埃粒子计数器通信电路设计

STM32基于WIFI通信的数字温湿度监测系统设计

数字音频流的FPGA的AES流编解码监测系统设计

STM32单片机微气象监测终端的设计

TPMS射频无线轮胎监测系统设计+电路图

PLC+Modbus通信的连续烟气监测系统设计+梯形图

互联网教育”变革路径研究进展【7972字】

安康汉江网讯

我国风险投资的发展现状问题及对策分析

张洁小说《无字》中的女性意识

老年2型糖尿病患者运动疗...

LiMn1-xFexPO4正极材料合成及充放电性能研究

麦秸秆还田和沼液灌溉对...

新課改下小學语文洧效阅...

ASP.net+sqlserver企业设备管理系统设计与开发

网络语言“XX体”研究