2.2. 全终端TLS协议支持
“超级固话”的语音通信功能,从一开始就设计使用比较安全的TLS协议来建立通信链路,TLS协议是支付宝也在使用的安全通信协议,从安全架构上是远超于UDP模式的。
“超级固话”可以支持全终端的TLS模式,完全取代UDP协议,确保企业通信的安全性问题,目前所有APP使用的都是内置的TLS协议;采用的IP话机也都支持TLS协议。
TLS协议全称:传输层安全性协议(英语:Transport Layer Security,缩写作TLS),及其前身安全套接层(Secure Sockets Layer,缩写作SSL)是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。
TLS协议采用主从式架构模型,用于在两个应用程序间透过网络创建起安全的连线,防止在交换数据时受到窃听及篡改。
TLS协议的优势是与高层的应用层协议(如HTTP、FTP、Telnet等)无耦合。应用层协议能透明地运行在TLS协议之上,由TLS协议进行创建加密通道需要的协商和认证。应用层协议传送的数据在通过TLS协议时都会被加密,从而保证通信的私密性。
TLS协议是可选的,必须配置客户端和服务器才能使用。主要有两种方式实现这一目标:一个是使用统一的TLS协议通信端口(例如:用于HTTPS的端口443);另一个是客户端请求服务器连接到TLS时使用特定的协议机制(例如:邮件、新闻协议和STARTTLS)。一旦客户端和服务器都同意使用TLS协议,他们通过使用一个握手过程协商出一个有状态的连接以传输数据。通过握手,客户端和服务器协商各种参数用于创建安全连接:
当客户端连接到支持TLS协议的服务器要求创建安全连接并列出了受支持的密码组合(加密密码算法和加密哈希函数),握手开始。
服务器从该列表中决定加密和散列函数,并通知客户端。
服务器发回其数字证书,此证书通常包含服务器的名称、受信任的证书颁发机构(CA)和服务器的公钥。
客户端确认其颁发的证书的有效性。
为了生成会话密钥用于安全连接,客户端使用服务器的公钥加密随机生成的密钥,并将其发送到服务器,只有服务器才能使用自己的私钥解密。
利用随机数,双方生成用于加密和解密的对称密钥。这就是TLS协议的握手,握手完毕后的连接是安全的,直到连接(被)关闭。如果上述任何一个步骤失败,TLS握手过程就会失败,并且断开所有的连接。
2.3. UDP协议更改端口
有些特殊场合下,为了支持一些没有TLS协议的IP终端,我们还需要打开UDP协议,使用UDP协议可以通过更改SIP端口的方式,来降低SIP攻击的概率。
互联网上的SIP协议端口的攻击,也比较简单,主要是针对UDP协议的特点,以及5060的公共端口进行扫描和攻击,把端口改掉,就可以避免95%以上的SIP攻击。