当提到网络上的信息安全问题时,一般用户可能会认为这种问题例如端到端加密,跟他们完全没有关系。确实,在与你的朋友和家人进行不涉及个人信息的聊天时,你可以不用担心你的信息安全和端到端加密的问题。
但是在现今,在互联网上的信息交换除了日常聊天以外,还涉及到网上银行,网上购物,发送电子版的个人证件,电子登机牌等等。这就是为什么即便你没有有价值的企业信息,了解一些通信软件的加密工作也不是浪费时间。如果你想要避免中间人的攻击或者不想被窃取隐私者偷走什么的话,这些企业app中的安全技术就变得十分重要了。
什么是端到端加密?
大多数信息安全方面的专家都承认端到端加密是确保信息安全的最有效的方法之一。根据这个过程,在端到端加密应用之间进行传输的消息只能被这两个软件的使用者所看到,任何第三方都无法看到。这项功能可以通过使用独一无二的数据加密和解密密钥来实现。只有终端用户才能够产生和存储这些密钥。
端到端加密系统被设计用来确保即使攻击者想方设法获得到了传输的信息,它也不能够解密它。端到端加密这项特殊的特点也跟可以存储和发送消息的服务器有关。
因为服务器不能介入密钥的产生过程,所以所有服务器只能“看到”被加密后的消息在用户之间进行传播。所以即便是从服务器处泄露的信息,也没有人能够看懂它。
让我们深入来分析一下端到端加密是如何工作的,好更好的理解其是如何保证数据安全的。
端到端加密是如何工作的?
根据端到端加密的思想,当聊天会话开始时,app的每个用户都会产生两个加密的密钥。这些密钥可以通过PGP(Pretty Good Privacy)应用来产生。自从PGP 1991发布以来,还没有发现它被破解侵入的证据。
第一个密钥是公共密钥(public key)。
端到端加密应用之间互相传递这种密钥。
第二个密钥是私密密钥(secret key)。
私密密钥不会离开设备。通过使用公共密钥,用户只能够对消息进行加密。为了将这些消息解密,根据端到端加密方法,你应该使用对应的私密密钥。
因为公共密钥只是用来进行加密工作的,所以即便是第三方非法获得了公共密钥也没有关系。这就是为什么你可以在公开的通信信道传输公共密钥的原因。
在每个端到端加密应用产生这对密钥,应用互相传递了公共密钥之后,就可以进行安全的通信。数据,比如消息,视频和音频文件在发送给服务器之前,通过在发送端的端到端加密流程。数据直到接收端应用接收它之前储存在服务器上。在接收方通知了服务器数据已经被接收之后,这个数据可以从服务器中删除,也可以在服务器中保留一段时间。
这里有一个好的分析方法可以帮助你更好的理解端到端加密应用是如何工作的。想象两个人正在用外语聊天,第三个人并不懂这门外语(也就是没有加密密钥)所以就不能从听到的话中获得任何有用的信息。
这个比较简单的概念使消息可以在两个或以上数量的终端之间安全的进行传输。加密/解密工作对于现代设备来说不是一个艰巨的任务。甚至移动设备上的应用也能不费力气的进行端到端加密。唯一可能会出现问题的场景就是多人通话。
在这种情况中,如果你想要发送一条信息,你就必须对每个接收方进行加密。接收方的数量越多,你端到端应用需要进行的工作量也就越大。为了避免饮用工作所产生的可能延时,开发者需要进行额外的工作来确保端到端加密工作不会损坏用户体验。
现在让我们来举几个可以给用户提供端到端加密功能的应用软件。
视频聊天软件
#1 WhatsApp
现在这款全世界流行的聊天软件创建于2009年。在第一版中没有任何端到端加密算法。在数据传输方面,WhatsApp使用的是开源且免费的协议叫做XMPP。XMPP是基于XML并且允许进行文字消息,音视频数据,以及文件的交换。
#2 Viber
这是一款文字和视频聊天软件,是俄罗斯最著名的聊天软件。最初在2010年上线,但是知道2016年才支持端到端加密技术。从6.0版本开始,文字和音频消息在个人和群组中传播都会受到端到端加密的保护。
但是你需要知道的是,必须所有对话参与者都使用的是最新版本的Viber端到端加密才有用。根据开发者对这款软件的评价,它与Signal信息所使用的是同样的安保理念。
加密的文字聊天软件
#1 Facebook信息应用
从2016年10月4号开始,Facebook信息应用开始使用端到端加密。这是一个可选选项,在私密对话模式下,可以看到这段加密的信息对话还会维持多长时间对人隐身。因为这个选项默认情况下是不开启的,所以需要用户自己留意确保数据传输的安全性。
#2 iMessage
iOS的这项信息应用开发于2011年。在端到端的最初阶段,信息通过1280位的RSA公共密钥和128位的AES算法的组合进行加密。然后基于ECDSA算法,此条信息会产生一个签名。之后,用户因为端到端加密的需求而交换密钥。
#3 Signal私密信息
Signal是一个使用了强力的端到端加密算法的高安全性文字聊天软件。消息通过结合了prekeys,双棘轮算法,以及3-DH握手的Signal协议进行加密。
音频通话通过SRTP和ZRTP密钥协议来进行加密。它的可靠性可以通过其他信息软件,例如WhatsApp,Facebook信息,以及Google Allo都是用它作为基本的端到端加密算法,来得以认可。
Signal协议也允许群组聊天使用端到端加密。根据Ruhr大学,英国牛津大学以及其他高校学者的研究,这个协议是安全的。
#4 Voxer对讲机应用
不久以前,Voxer对讲机,一个支持语音聊天的聊天软件加入到了端到端加密应用的家族中。开发者在2011年发布了第一版iOS和Android应用。
Voxer的最出众的特点就是事实信息模式。它允许用户整理音频广播,或者交换短语音消息。你可以在收到语音之后立即收听它,也可以把它保存下来以后再听。
现在,Voxer的开发者在这个应用中加入了端到端加密的私密聊天。从现在开始,你所通过私密聊天分享的所有数据,例如语音信息,文字信息,或者文件,都会通过基于Signal协议的端到端加密技术所保护。目前,端到端加密功能只能在1对1对话中使用.
可以设想受保护的群组聊天特性。所有使用私密聊天模式发送的内容都不能被其他设备看到。并且在你登出账户之后,所有数据都会被清除掉。
#5 Telegram信息
Telegram在2013年发布。在移动端和电脑端都可兼容。用户可以发送任何形式的消息和文件。即便端到端加密不是默认的,你可以使用这个通过进入隐私聊天模式来激活它。在通过传输协议发送信息之前,MTProto协议会对其加密。
这个端到端加密协议是Telegram应用开发者所创建的。包括3个部分。高层部分定义了API响应应答转换成二进制码的方式。密码层定义了发送数据前的加密方式。最后一个,传输层,定义了信息传输的方式。
在信息准备阶段,为了提供强力的端到端加密性能,Telegram在信息体内加入了一个64位的密钥识别记号。这个识别记号定义了用户和服务器的密钥权限。加在一起,他们组成了一个256位的密钥和256位的初始化矢量。这个矢量被用于通过AES-256算法加密信息。被加密的信息包括了一下几点:会话,信息ID,信息的序列号,以及服务器。
WebRTC应用中的安全标准
WebRTC是一项迅速风靡的搭建网页聊天应用的技术。这项技术火起来的原因可能是可以不用安装任何第三方插件就可以使用WebRTC应用。端到端加密支持也发挥着它的作用。
在WebRTC支持添加到现代浏览器之后,他们可以用来完成像Skype这样的通讯软件了。这些软件可以给用户提供所有需要的功能,包括信息加密。你可以通过你的网页浏览器来传输信息以及拨打视频电话。
你可以通过我们的视频来了解这些应用是如何使用的。
开发具有端到端加密的WebRTC不需要任何框架。但是尽管看起来挺容易,但是WebRTC应用中的浏览器安全标准并没有给我们留下什么工作空间。根据信道类型,WebRTC应用使用DTLS或者SRTP协议。
第一个协议被用来对数据流使用,第二个协议被设计用来对媒体流使用。安全协议确保了数据传输过程被加密密钥所保护。TLS/SSL标准支持允许使用安全HTTPS连接。对等端之间的端到端加密确保没有第三方可以获取你的数据,这一点对于企业应用来说是十分重要的。
没有评论:
发表评论