導覽
近期變更
隨機頁面
新手上路
新頁面
優質條目評選
繁體
不转换
简体
繁體
3.137.164.229
登入
工具
閱讀
檢視原始碼
特殊頁面
頁面資訊
求真百科歡迎當事人提供第一手真實資料,洗刷冤屈,終結網路霸凌。
檢視 端到端加密 的原始碼
←
端到端加密
前往:
導覽
、
搜尋
由於下列原因,您沒有權限進行 編輯此頁面 的動作:
您請求的操作只有這個群組的使用者能使用:
用戶
您可以檢視並複製此頁面的原始碼。
{| class="wikitable" style="float:right; margin: -10px 0px 10px 20px; text-align:left" |<center>'''端到端加密'''<br><img src="https://www.itread01.com/upfile/2016/0923/846231413081.jpg!web" width="280"></center><small>[https://www.itread01.com/articles/1474615195.html 圖片來自itread01]</small> |} '''端到端加密'''(End-to-end encryption,縮寫:'''E2EE'''),是一種只有参与通讯的用户可以读取信息的[[数据传输|通信]]系统。总的来说,它可以防止潜在的窃听者——包括电信供应商、[[互联网服务供应商]]<ref>[https://wiki.mbalib.com/wiki/%E4%BA%92%E8%81%94%E7%BD%91%E6%9C%8D%E5%8A%A1%E6%8F%90%E4%BE%9B%E5%95%86 互联网服务供应商],mbalib</ref> 甚至是该通讯系统的提供者——获取能够用以[[加密|解密]]通讯的[[密钥]]。此类系统被设计为可以防止潜在的[[監視|监视]]或篡改企图,因为没有密钥的第三方难以破译系统中传输或储存的数据。举例来说,使用端到端加密的通讯提供商,将无法将其客户的通讯数据提供给当局。 == 现代的用法 == 直到2016年,典型的基于中心[[服务器]]的通信系统尚不包括端到端加密功能。此类系统'''至多'''只能保证[[客户端]]到[[服务器|服务端]]之间的通讯受到保护。这意味着通讯双方必须信任服务端的运营者,因为他可以阅读通讯的全部[[明文]]内容。相比之下,端到端加密被认为是更安全的,因为这种机制极大减少了第三方干扰或破坏通讯加密的可能性。对于使用普通[[即时通讯]](IM)产品的用户,通常可以选择使用第三方客户端或加解密插件,以便在非E2EE协议的通讯中实现端到端加密。 一些非E2EE的通讯系统,例如[[拉维毕特]]和 Hushmail 宣称提供了端到端加密,但实际上并没有。而另一些系统,例如 [[Telegram]]和 [[Google Allo|谷歌Allo]],由于没有默认启用端到端加密而受到了批评。 一些加密的[[备份|文件备份]]和[[檔案分享|文件共享]]服务提供客户端加密。但这并不能称作端到端加密,因为此类服务并不是用来在用户之间交换信息的。 但在很多场合,这两个术语经常被混用。 == 挑战 == === 中间人攻击 === 端到端加密能确保数据安全保密地传输于通讯的两端之间。但对于不怀好意的窃听者而言,与其尝试破解加密,不如冒充的消息接受方(例如,在[[密钥交换]]期间冒名顶替,或是设法将收件人公布的[[公开密钥加密|公共密钥]]替换成自己的)来得方便,因为此后,发信人发出的信息将以一个窃听者掌握的密钥进行加密。在获取解密的信息后,监听者还可以冒充发信人,与实际的接收者进行密钥交换、发送讯息,以避免通讯双方察觉异常。由于攻击者处在通讯双方之间,因此这种攻击方式被称为[[中间人攻击]]的。 ==== 身份验证 ==== 大多数端到端加密协议都设计了某种形式的终端[[身份验证|认证]]机制,专门用来防御中间人攻击,例如依靠[[数字证书认证机构]]或[[信任网络]]进行验证。其他的技术包括的针对用户公钥或预共享密钥生成密码哈希(设备指纹)。通讯各方可以通过外部(out-of-band)通信渠道来校验这一[[公开密钥指纹|指纹]],便可确认通讯的完整性和真实性(但不能保证机密性),之后再展开真实对话。如果指纹匹配的话,理论上可以确认不存在中间人攻击。 为了方便人工检查,指纹通常会显示为[[十六进制]]字符串。这些字符串通常会编排成特定格式并编组,以提高可读性。例如,128位MD5指纹会显示如下: 43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8 在一些协议中,指纹会被显示成[[自然语言]]。这是通过在指纹块与文字之间建立[[单射|一对一的映射]]来实现的,因此不会有[[熵]]损失。有些协议还能匹配地显示为用户的母语(如参照设备的语言设定)。 但是,在跨语言的环境下这种技术会带来一些问题。 为了提高[[国际化与本地化|本地化]]程度,一些协议选择将指纹显示为十进制字符串,而不是十六进制或自然语言串。现代化的通讯应用也可以把指纹显示为[[QR碼|二维码]],供用户使用其他设备扫描读取。 === 终端安全 === 端到端加密并不能避免终端本身的安全风险。每个用户的计算机等设备上仍然存在密钥被盗(以进行中间人攻击),或是是被解密的信息被读取的可能性。即使是最完美的加密通信,他的安全性仍然受制于两端“信箱”的安全性。提升端点安全性的手段主要有:将密钥的产生、储存和加解密操作独立到一个小的智能卡上,例如[[Google Project Vault]]。然而,由于明文输入和输出仍然对于用户设备来说依旧是可见的,因此恶意软件仍然可以实时窃听用户的对话。一个更强大的方式是将所有敏感数据隔离到一台由[[网闸]]完全限制的计算机上。一些专家已经建议将[[PGP]]用于此目的: 然而,正如[[布魯斯·施奈爾|布鲁斯·施奈尔]]所指出的,美国和以色列开发的“[[震网]]”病毒成功地通过离线渠道进入并瘫痪了伊朗在[[纳坦兹]]建设的核设施。 为了避免恶意软件导致的密钥泄漏、一种方法是将[[可信计算基]]分散在两个[[单向连接]]的计算机上,以避免恶意软件感染及其导致的敏感数据泄漏。 == 密钥交换 == 在一个端到端加密的系统中,用于加解密的密钥必须被、且仅被参与通讯的各方掌握。为实现这一目的,端到端加密系统可以使用事先预定好的一串字符(称为“[[预共享密钥]]”)来加密数据(如[[PGP]]),也可以使用该字符串生成一次性密码来进行加密(如[[DUKPT]])。此外,参与通讯的各方还可以通过协商(迪菲-赫尔曼密钥交换协议)创建密钥(如[[Off-the-Record Messaging|OTR]])。 == 參考文獻 == {{reflist}} [[Category: 310 數學總論]]
此頁面使用了以下模板:
Template:Main other
(
檢視原始碼
)
Template:Reflist
(
檢視原始碼
)
模块:Check for unknown parameters
(
檢視原始碼
)
返回「
端到端加密
」頁面