专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

微信音频通话私密性如何_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 22:16:52       共计:3620 浏览

微信音频通话私密性如何?

微信音频通话私密性如何?

众所周知,在互联网高速发展的时代,网络安全无疑是一个重大的问题。首先我们就一个知道数据的传输模式,了解其传输过程。咋此前提下,做好网络通信的安全护盾。

传输的主流技术

采用无线介质连接的网络称为无线网.目前无线网主要采用三种技术:微波通信,红外线通信和激光通信.这三种技术都是以大气为介质的.其中微波通信用途最广,目前的卫星网就是一种特殊形式的微波通信,它利用地球同步卫星作中继站来转发微波信号,一个同步卫星可以覆盖地球的三分之一以上表面,三个同步卫星就可以覆盖地球上全部通信区域.

传输加密的方式

无加密:早期的IM软件没有采用任何加密,聊天内容以明文的形式发送,这无异于在网络上裸奔。

普通加密:现在的IM软件大多实现了客户端与服务器间的加密通信,尽管采用的加密算法各不相同,一般是将使用服务器公钥进行加密后的信息传送到服务器,服务器用自己的密钥解密后再使用对话者的公钥加密并发送到对方客户端。这意味着服务器方是知道消息的具体内容的。但是这已经可以有效防止第三方窃取通信信息。有些IM软件提供商声称不会保留聊天数据,但是显然,他们是具有这个能力的。

端到端加密(E2EE):端到端加密直接使用对话者的公钥进行加密,服务器方(如果存在服务器的话)只负责传递消息,并不能知道消息的具体内容。

微信消息是一种即时通讯;消息即时传递和用户交互性。

即时通信是一种基于网络 的通信技术, 涉及到IP/TCP/UDP/Sockets、P2P、C/S、多媒体音视频编解码/传送、Web Service等多种技术手段。无论即时通信系统的功能如何复杂,它们大都基于相同的技术原理,主要包括客户/服务器(C/S)通信模式和对等通信(P2P)模式。(来自百度文库)这里主要说说C/S架构的通讯模式(微信就是基于这种模式)。

如图,假设一种情景。用户A登录微信后,连接到IM服务器(即微信通讯服务器),同时用户B也登录上来了。用户A要给用户B发送一条消息,这个消息会先发送到IM服务器,再由IM服务器发送给B。用户A并没有直接和用户B建立连接的。这个消息数据包里面包含了哪些信息呢?必须要告诉IM服务器,这个消息是发给谁的,即用户B。用户B要发送消息给用户A同样的原理。

C/S结构软件

C/S结构软件(即客户机/服务器模式)分为客户机和服务器两层,客户机不是毫无运算能力的输入、输出设备,而是具备了一定的数据处理和数据存储能力;通过把应用软件的计算和数据合理地分配在客户机和服务器两端,可以有效地降低网络通信量和服务器运算量。由于服务器连接数量和数据通信量的限制,这种结构的软件适于在用户数目不多的局域网内使用。

C/S架构的通讯模式

C/S结构软件在保护数据的安全性方面有着先天的弊端。由于C/S结构软件的数据分布特性,客户端所发生的火灾、盗抢、地震、病毒等都将成为可怕的数据杀手。另外,对于集团公司内部网络中常见的多级应用,C/S结构的软件必须安装多个服务器,并在多个服务器之间进行数据同步。如此一来,每个数据点上的数据安全性都将影响到整个应用的数据安全性。

Protocol Buffer通信协议

微信通信系统选用 Protocol Buffer作为通信协议。 Protocol Buffer:是 Google的一种数据交换的格式, Google公司内部的混合语言数据标准,目前已经正在使用的有超过48,162种报文格式定义和超过12,183个 proto文件。他们用于RPC系统和持续数据存储系统。

Protocol Buffers是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或RPC数据交换格式。可用于通讯协议、数据存储等领域的与语言无关、与平台无关、可扩展的序列化结构数据格式。目前提供了C++、Java、 Python三种语言的API

Protocol Buffer还有一个非常重要的优点就是可以保证同一消息报文新旧版本之间的兼容性。它独立于语言,独立于平台。由于它是一种二进制的格式,比使用xml进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换,作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域,属于开源项目。

微信的登录流程

从流程图可以看出,微信的通信保密性很大程度依赖于随机AES密钥的不可破解性,但是从另一方面来说,只要获取了这个随机AES的密钥微信的通信信息的保密性就会大大降低。

关于AES的破解

如果是single-key model,对于非满轮的AES(256位的aes应该要迭代14轮),有如下研究(从左到右分别为轮数,数据量,时间复杂度,空间复杂度,方法,文献来源):

对于满轮的AES256的攻击,维基百科上说研究的复杂度为2^254.4.

这不经让我想起了一个故事,话说在一个非常大的互联网公司,网络经常断线,怀疑是收到了黑客的攻击,并开始请来网络安全专家,经过一系列的网路安全检查。结果没有发现任何问题。最后在不经意间发现网络安全管理人员被买通了,每隔一段时间就切断网络数据链接。现在在高速发展的时代,网络漏洞永远都是待完善的,而最为致命的是人为物理性的攻击。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:我的世界java版国际版下载_java | ·下一条:怎么使用ForIn声明来遍历数组内的元素_java

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有