SHA-1退休:数千万用户通向加密网站之路被阻
Facebook和Cloudflare警告道:上千万用户将无法访问只使用SHA-2签名证书的HTTPS网站。2016年-2017年是SHA-1算法的缓冲期。2017年开始CA机构将不能颁发含有sha-1
算法的数字签名证书。
作者:nana来源:安全牛|2015-12-15 10:15
Facebook和Cloudflare警告道:上千万用户将无法访问只使用SHA-2签名证书的HTTPS网站。
如果这些网站只使用SHA-2哈希算法进行签名的数字证书,数千万Web用户将再也无法通过HTTPS协议访问这些站点。
该警告来自Facebook和CloudFlare,原因是浏览器厂商在考虑加快老旧又易受攻击的SHA-1函数的退休。
这两家公司已经在他们的站点上部署了支持SHA-1证书的机制,面向的是不支持SHA-2但仍在世界某些地方广泛使用的老版浏览器和操作系统。
这些老旧系统包括Windows XP SP3以前的Windows版本、安卓2.3(姜饼)以前的版本和任何依赖OpenSSL 0.9.8进行加密通信的应用。
SHA-1 (安全散列(哈希)算法1)可追溯至1995年,在2008年研究人员发现用更老的MD5函数进行签名的证书能被伪造之后,就成为了SSL/TLS证书签名的默认选项。
SHA-1本身在理论上也是可被攻破的, 但针对它的攻击可行性依赖于可用的计算能力。2012年,著名密码研究专家布鲁斯·施奈尔估计:如果使用商业云计算服务进行,可行的SHA-1攻击在 2015年的成本将达到70万美元,到了2018年可能将耗费17.3万美元,这是在犯罪集团的承受范围之内的。
因此,CA浏览器论坛(CA/B论坛),一个由证书颁发机构和浏览器厂商组成的数字证书使用和保障指南设置的组织,决定从2016年1月1日起 SHA-1签名的证书不应该再被颁发。浏览器厂商也决定,现有SHA-1证书将从2017年1月1日起不再被他们的浏览器所信任——即使浏览器并没有专门 设置从那时起将这些证书作废。
然而,在10月份,一组研究人员展示了突破SHA-1的新方法,比之前预期的攻击成本的降低更快了一些。这一事件促使像Mozilla和微软这样的浏览器厂商开始考虑要不要将SHA-1证书在他们产品中的退休时限更提前一些。
为让用户仍能继续访问他们的在线资产,继续使用SHA-1的HTTPS站点主人(大约有100万,包括了流量最大的14万站点中的大约1/6),便处于要拿到用SHA-2签名的新证书的压力之下了。
不过,CloudFlare的研究人员指出,这一问题的实质,是目前访问HTTPS服务的用户中有1.69%是从不支持SHA-2的浏览器和操作系统访问的。
从百分比上看,这一数字似乎不大,但那可是3.7千万人,而且其中大多数分布在“世界上最穷、最受压迫、最饱受战争蹂躏的国家。”CloudFlare首席执行官马修·普林斯周三在一篇博客文章中说。
根据CloudFlare的数据,SHA-2支持率最低的十大国家是:中国(6.08%)、喀麦隆(5.39%)、也门(5.25%)、苏丹 (4.69%)、埃及(4.85%)、利比亚(4.83%)、象牙海岸(4.67%)、尼泊尔(4.52%)、加纳(4.42%)和尼日利亚 (4.32%)。前25的国家名单中包括了来自非洲、中东、亚洲和中南美洲的其他国家。
“换句话说,今年12月31号之后,最脆弱的最需要加密保护的那部分互联网用户将被从加密网络中断开。”CloudFlare研究人员称,“而不幸的是,如果我们想再增加20亿互联网用户,他们中的许多人会用二手安卓机上线。因此,这一问题短期内得不到解决。”
Facebook提出了相同的问题,估测当前在用的浏览器中3%~7%不支持SHA-256,也就是SHA-2。
“这些人的分布很不均衡,大部分集中在发展中国家,在这些国家中最有可能的结果就是,希望延伸至目标用户群的政府、公司企业和非政府组织的HTTPS部署遭遇严重的倒退。”Facebook首席安全官阿列克斯·斯塔莫斯在周三发表的一篇博客文章中说。
Facebook已经通过建立基于用户使用的浏览器自动切换证书的机制解决了这个问题。在Facebook的机制下,当代浏览器可以使用SHA-2证书而其他更老版本的浏览器则会收到用SHA-1签名的证书。
这一措施使得浏览器厂商可以继续执行他们在明年取消对SHA-1证书支持的计划,而站点也可以服务那些使用不太可能被升级的老旧设备访问的用户。
Facebook已将其证书切换机制作为Proxygen HTTP库项目的一部分在BSD许可协议下开源了。这意味着其他开发者也能在他们自己的项目和TLS代理中使用这一机制。
运营内容分发网络以优化和保护其客户站点的CloudFlare 为其付费用户启动了自动SHA-1回退服务。如果自己愿意的话,公司和企业客户可以关闭这一功能,高级用户则将在今年年底能够拥有相同的功能。
Facebook和CloudFlare并不是唯一这样做的企业,中国互联网企业阿里巴巴在它的许多网站上也开始回避SHA-1的使用。鉴于中国有数量庞大的互联网用户使用缺乏SHA-2支持的浏览器访问网络,阿里巴巴做出此决策不足为怪。
Facebook和CloudFlare想做得更进一步。他们敦促CA/B论坛建立新的证书类型——遗留验证证书(LV证书),这类证书中仍可使用SHA-1签名。
这类证书可以在现有SHA-1证书退休日期之后发放给那些能证明自己为当代浏览器使用当代证书和协议而仅仅为遗留浏览器回退到LV证书的组织。
SHA-1退休:数千万用户通向加密网站之路被阻的更多相关文章
- Maven-009-Nexus 用户密码加密(安全必须)
信息数据大爆发的时代,我们关心什么?没错,数据安全!数据安全!数据安全!(重要事情说三遍,哈哈哈...) 之前我们存放在 maven settings.xml 文件中的 Nexus 私服用户密码都是明 ...
- C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- javascript用户密码加密,js密码加密
1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset ...
- Cognos权限认证CJP方式之用户密码加密
在项目开发过程中,用户往往对系统的安全都有明确的要求,下面针对cognos门户认证用户密码如何加密来提供一个简单的wf 1Cognos权限认证方式:CJP 2Cognos用户数据库类型:Oracle ...
- c# 对用户密码加密解密
一.使用16位.32位.64位MD5方法对用户名加密 1)16位的MD5加密 ? 1 2 3 4 5 6 7 8 9 10 11 12 /// <summary> /// 16位MD5加密 ...
- 转 C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- 深喉起底APP线下预装市场,如何一夜间拥有千万用户
注:预装对于中国的移动互联网创业者有多重要?i黑马知道这样一个内幕,某商务告诉我他们公司的前2000万用户就是靠预装打下来的,总部在北京,直接派驻商务长期扎根在深圳搞定手机厂商.而这家公司初期发展得益 ...
- [项目实施失败讨论Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn)
[Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn) 原文:http://community.csdn.net/Exp ...
- 【美】范·K·萨普曼 - 通向财务自由之路(2013年11月26日)
<通向财务自由之路> 作 者:[美]范·K·萨普曼 译 者:董梅 系 列: 出 版:机械工业出版社 字 数:约40千字 阅读完成:2013年11月26日
随机推荐
- shell 命令 mkdir -p
开发中我们会遇到嵌套创建文件目录的需要,这时需要用到 mkdir -p 比如我要在本地嵌套创建 /Users/dairui/Downloads/zookeeper/dataLogDir目录 直接使用 ...
- 学习JavaScript计划
1.首先根据视频做小例子 2.每天记录到博客 3.这次坚持把这个学完,并完成接口测试界面的编写
- 最小生成树Prim poj1258 poj2485 poj1789
poj:1258 Agri-Net Time Limit: 1000 MS Memory Limit: 10000 KB 64-bit integer IO format: %I64d , %I64u ...
- 调用GOOGLE的TTS实现文字转语音(XE7+小米2)(XE10.1+小米5)
相关资料: 注意:在手机上必须选安装文字转语音引擎“google Text To Speech”地址:http://www.shouji56.com/soft/GoogleWenZiZhuanYuYi ...
- CopyOnWriteArrayList源码解析(2)
此文已由作者赵计刚授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 5.删除元素 public boolean remove(Object o) 使用方法: list.remo ...
- MariaDB 数据库索引详解(9)
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...
- [模板]最小割树(Gomory-Hu Tree)(luogu4897)
给定一个\(n\)个点\(m\)条边的无向连通图,多次询问两点之间的最小割 两点间的最小割是这样定义的:原图的每条边有一个割断它的代价,你需要用最小的代价使得这两个点不连通 Input 第一行两个数\ ...
- 06_python_小数据池/ is == /编码
一.小数据池 1.代码块 python程序是由代码块构成的.一个代码块的文本作为python程序执行的单元.代码块: 一个模块, 一个函数, 一个类, 甚至每一个command命令都是一个代码块. 一 ...
- 实现域名访问网站—nginx反向代理
今天在跟项目的时候,是否被耍了三个多小时,最后在我准备号材料准备他人求助的时候,在收集材料的时候,居然访问通了, 别问我为什么,我也不知道 ,哈哈哈哈(苦逼脸...) 分享出来,大家共同学习: 这个是 ...
- collections, time, queue的应用
collections (克来克深思) Counter from collections import Counter # 引入模块, 计数器 Counter(康特) s = 'sadfasdfas ...