什么是 TLS kali中间人攻击击?如何防范这类攻击

如何防止电子邮件被拦截欺骗 _ 江门网站建设|江门网站设计|江门网络公司|江门网页设计|江门域名注册|江门网站制作|江门企业邮箱|江门网站备案|创域科技网络有限公司
|& & |& & |
&创域导航:&&
如何防止电子邮件被拦截欺骗
作者:创域科技 客服部
&&& 文章来源:互联网
&&& 点击数:3126
&&& 更新时间:
&&& 有一位读者问专家Nick Lewis:您能解释一下什么是欺骗攻击吗?有没有什么方法可以让组织免受这一新的威胁呢?  Nick Lewis:有几种不同类型的欺骗攻击,攻击者可能会利用伪造的IP数据包源、电子邮件或者网站来欺骗受害者接收恶意数据。从历史上看,IP欺骗流行于二十世纪九十年代。电子邮件伪造需要黑客伪造一个电子邮件的不同字段。网站欺骗是指攻击者制作一个看起来合法的网站使受害者输入他们的信用卡号码或其他类型的个人信息。要防止IP欺骗攻击,需遵循1995年的CERT建议:“防止IP欺骗的最佳方法是安装过滤路由器,限制你的外部界面的输入,如果数据包中有你内部网络的源地址,则不允许数据包通过。此外,你还应该过滤掉源地址与你内部网络不一致的传出数据包,从而防止源IP欺骗攻击来自您的网站。”  为了保证数据包的保护措施到位,您可能还需要检查您的ISP。如果攻击者不能发送伪造的IP数据包,他们可能会尝试进行拒绝服务攻击或攻击外部主机,从而使攻击看起来像来自不同的网络(这样就更难停止攻击)。  若要防范电子邮件欺骗或伪造,你可以使用反垃圾邮件软件,并且培训你的用户查看电子邮件标头,以识别可疑的信息,也可以在电子邮件中添加签名,以便接收方知道是谁发送的。关于电子邮件欺骗,CERT也有较好的建议。  要防范网站欺骗,请确保你访问的是通过SSL/TLS的网站。非SSL/TLS网站为黑客提供了大量的欺骗机会,所以如果您希望避免这种情况,请确保访问的网站是SSL/TLS。  但是,即使使用SSL/TLS也存在威胁。因为可能会发生中间人攻击,它是一种欺骗攻击,它会使DNS和SSL/TLS连接或路线中毒,并将你定向到恶意站点。要抵御这类攻击,您需要确保你在具有最新更新(更新中间人漏洞)的软件上运行,并使用信任的网络(具有网络级别保护)。
上一个文章:
下一个文章:
域名常见问题
建站常见问题
邮箱常见问题
友情链接:
http://localhost:9017
Copyright&& 江门市创域科技网络有限公司 版权所有公司地址:广东省江门市港口路晓港苑3号平安大厦9楼江门网站建设电话: 53087*24小时服务热线: 增值电信业务经营许可证:粤B2-号
在线客服:
业务咨询:
技术顾问:&a class=&member_mention& data-editable=&true& data-title=&@Rio& data-hash=&0d81a29a497b91e0f374aed& href=&///people/0d81a29a497b91e0f374aed& data-hovercard=&p$b$0d81a29a497b91e0f374aed&&@Rio&/a& 的故事虽然生动,但是是有错误的。通过TLS加密通信,一旦会话初始化完成,想要完成中间人攻击是非常困难的。TLS的中间人攻击是针对&b&加密会话的初始化阶段&/b&进行的,而不是实际通信的阶段。加密通信的初始化阶段,需要通过非对称密码算法来协商密钥,然后用协商好的密钥,使用对称加密算法进行实际的通信。&br&&br&不知道各位有没有见过一种锁,当用钥匙打开这种锁之后,钥匙就可以拔出来了,剩下一个开着的锁头。拿着这个开着的锁,没有钥匙,一旦锁上了就开不了。这是现实生活这的一种非对称加密的物件,能上锁,但是不能开锁。&br&&br&现在故事开始,假设我们回到了那个只能寄信的时代,大家都需要和知乎通信,而且通信的内容必须要保密。于是负责接收大家消息的&a class=&member_mention& data-editable=&true& data-title=&@顾惜朝& data-hash=&17bff67f1b6afb& href=&///people/17bff67f1b6afb& data-hovercard=&p$b$17bff67f1b6afb&&@顾惜朝&/a& 想出来一个办法,找了很多把上面说的那种锁(&b&公钥&/b&),都用钥匙打开,挂在外面。需要和知乎通信的人,在通信之前,需要拥有另外一把有两个钥匙的锁(&b&对称加密算法&/b&),然后把这把锁和其中一把钥匙(&b&对称密钥&/b&),放进一个无法被破拆的铁盒子里面,用知乎提供的那把开着的锁把铁盒子锁上。&br&&br&这时候,这个铁盒子就无法打开了,除了拥有钥匙的顾惜朝。这个装有一把锁和钥匙的铁盒子,可以放心地交到任何一个人手上,然后让他拿去给顾惜朝。顾惜朝拿到这个铁盒子之后,加密通信会话就建立了。她就会用钥匙打开铁盒子,取出锁和钥匙,写下“亲爱的知乎用户,你好,我是顾惜朝”小纸条,放进铁盒子里,然后用你提供的锁把铁盒子锁上,然后交回到你的手上。这个时候,铁盒子被你提供的锁锁上了,除了你和顾惜朝,没有别人有钥匙能够打开这个铁盒子,铁盒子也就可以安全地经过邮递送到你的手上;你收到铁盒子之后,用你自己的钥匙打开锁,读铁盒子里面的消息,然后放进新的小纸条,再寄送回去。&br&&br&以上是&b&加密通信的过程&/b&。&br&&br&接下来,别有用心的@匿名用户 出现了,偷偷地换掉了几个知乎打开放在外面的锁,并且自己充当了邮递员的身份在外面晃悠。当你需要和知乎通信的时候,匿名用户递给你一把他自己的锁,骗你说这把是知乎挂在外面的锁。当你把你自己的锁和钥匙放进去,然后交给匿名用户,麻烦他把这些送给顾惜朝的时候,匿名用户就可以找到另外一个铁盒子,装上自己的另外一把两个钥匙的锁,用真正的知乎提供的锁锁上,然后寄给顾惜朝。我们辛勤的顾惜朝依然会正常的收到一个铁盒子,里面装着一把锁和一把钥匙,只不过,这个锁已经不是你的了,而是匿名用户的,你的那把锁实际上在匿名用户手上。顾惜朝把“亲爱的知乎用户,你好,我是顾惜朝”的小纸条放进铁盒,然后让匿名用户带回去给你,而这个时候,匿名用户就可以打开这个小铁盒,偷看你们之间的消息,然后自己编造一条消息,放进铁盒里面,然后传回去给你。&br&&br&以上是&b&中间人攻击&/b&。&br&&br&为了避免中间人攻击,我们聪明的顾惜朝,发明了一种神奇的、无法撕毁、涂改和变造的小纸条(&b&数字签名&/b&),上面写着“这把锁经过顾惜朝认证,是知乎加密通信专用锁”,然后在每一把知乎提供的锁上贴上,这样子匿名用户就不能伪造锁了,这时候这个锁叫作&b&证书&/b&。&br&&br&但是问题又来了,许多新来的知乎用户不认识顾惜朝,他们怎么知道顾惜朝就是可信的,她认证的锁就是可用的?于是&a class=&member_mention& data-editable=&true& data-title=&@黄继新& data-hash=&b6fb0b7b9c680& href=&///people/b6fb0b7b9c680& data-hovercard=&p$b$b6fb0b7b9c680&&@黄继新&/a&在这个小纸条的下方又贴了一个小纸条,“顾惜朝经过黄继新的认证,可以对知乎加密通信专用锁进行认证”。黄继新不仅可以认证锁,还可以认证顾惜朝等管理员的权力,这时候黄继新就是&b&CA&/b&。可是问题还没有解决,还是有很多知乎用户不认识黄继新,于是李开复又在黄继新的小纸条上又贴了一个小纸条,“黄继新经过李开复的认证,可以对知乎加密通信专用锁进行认证”。问题依然没有解决,还是有人不认识李开复,于是这时候需要一个权威的、人们&u&无条件相信&/u&的机构来对李开复进行认证,这个机构就是&b&根CA&/b&,他贴上去的小纸条就叫作&b&根证书&/b&。&br&&br&以上是&b&信任体系&/b&,另见《&a href=&/question//answer/& class=&internal&&既然这个世界没有绝对的“权威”,那么我们该相信谁?&/a&》。&br&&br&最后一个问题,TLS的中间人攻击怎么实施。这时候&a class=&member_mention& data-editable=&true& data-title=&@Rio& data-hash=&0d81a29a497b91e0f374aed& href=&///people/0d81a29a497b91e0f374aed& data-hovercard=&p$b$0d81a29a497b91e0f374aed&&@Rio&/a&出场了,因为是知乎的工作人员,具有一个可信的证书,类似于“Rio经过黄继新的认证,可以对知乎加密通信专用锁进行认证”。于是他自己伪造了一个锁,然后利用上一级CA对他的信任,去骗取知乎用户使用他提供的锁初始化加密会话。因为他的锁上面有上一级CA的认证,所以你会认为这个锁是可信的,而实际上Rio通过自己拥有的证书,可以实施中间人攻击,窃取你和顾惜朝之间通信的内容。&br&&br&以上便是TLS的中间人攻击。&br&&br&手里掌握权力的人,只有道德能够防止他做坏事。
的故事虽然生动,但是是有错误的。通过TLS加密通信,一旦会话初始化完成,想要完成中间人攻击是非常困难的。TLS的中间人攻击是针对加密会话的初始化阶段进行的,而不是实际通信的阶段。加密通信的初始化阶段,需要通过非对称密码算法来协商密钥,然后…
已有帐号?
无法登录?
社交帐号登录
1164 人关注
144 条内容
239 人关注
435 条内容
5679 人关注
270 条内容
6259 人关注
897 条内容
106 条内容现在的 SSL 加密技术,预计多少年以后会被轻易破解? |
我的图书馆
现在的 SSL 加密技术,预计多少年以后会被轻易破解? |
【余天升的回答(88票)】:准确地说,(含TLS)是一种安全协议,不是一种具体的密码算法。如果要谈论破解的问题,会受到所使用密码算法的影响。再次要补充一下,关于「破解」这个词汇的含义,请参看另外一则问题中的答案《算法吗?》。另外结论在最后一段,可以只看加粗部分和最后结论。对于密码算法,已经进行了非常多年的研究,尤其是网络时代来临之后,对于使用密码算法对信息安全进行保护的研究也越来越多。对于家而言,一个很重要的任务便是创造一种足够健壮的密码算法使得没有人能够破解。但是密码学家们也清晰地认识到,一种绝对安全的密码算法并不是那么容易创造的。目前已知算法中,只有一种算法Random Oracle能够达到绝对安全,即攻击者即使拥有无限的存储能力、计算能力和时间也无法破解。关于这种算法的更多信息见《》既然绝对安全难以达到,密码学们退而求其次,寻求一种相对安全的方法。这种相对的安全大致可以这样子表述:破解一则消息所需要的成本(计算机、人力、电能等等)远远超过这则信息本身的价值,那么我们认为这是相对安全的;或者破解一则消息(比如情报)所需要的时间,远远大于这则消息所需要保密的期限,我们也认为这是相对安全的。现代密码学的里程碑是1977年由IBM的研究人员Horst Feistel等人提出的Lucifer算法,该算法后来被美国国家安全局采纳为一种公开通用的商用密码算法标准DES。该算法是一种分组加密算法,使用56位的加密密钥对64位的密文进行加密。由于密钥长度很短,对于DES的攻击很早就出现,并且在1999年的时候,由EFF(Electronci Frontier Foundation)领导研发的DES破解机器Deep Cracker就已经可以在一天之内(22h15min)破解DES的加密密钥。[1]密码学是一门虽然很古老,但是随着计算机科学的发展才发展起来的学科,因此密码学家们当然清楚计算机性能的飞速发展对于破解密码的影响。像DES这样在未来会随着计算能力发展而被轻易破解的算法并不是一种好的算法。一个密码算法在设计的时候会使用一些人类难以解决的问题为基础,同时这些算法还会有一个关于问题规模的一个参数,使得问题的规模容易扩大,保证在更长的一段时间内可以使用。以下举一个例子。著名的公钥密码算法RSA,是基于大整数因子分解这个难题而设计的,该算法由R.L. Rivest、A. Shamir和L. Adleman于1977年提出。对于RSA的破解方法,其中一种就是针对公钥中的一个参数进行因子分解(其中p和q均为质数),得到p和q,从而推算其他的参数和私钥。业已证明,其他可行的破解方法不会比直接对n进行因子分解来得简单。[2]对于因子分解,最基本的我们都会使用以下程序进行计算:// C风格伪代码,假定int拥有无限精度int first_factor( int n ){ if( n % 2 == 0 ) return 2; for( int i = 3; i & sqrt(n); i += 2 ) if( n % i == 0 ) return i; return 0;}并且我们不难分析出,该算法所需要的时间复杂度为。我们换一种更常见的方式表示,n是RSA密钥中的一个重要参数,我们使用这个参数的长度来描述密钥的长度,也就是我们常说的多少位的密钥。显然,如果我们称n为x位(二进制位),则有,破解的复杂度关于密钥长度的表示则变为,在描述算法复杂度的时候我们也常常忽略系数写作。这种复杂度是关于问题规模(参数n的位数)的指数,我们把这类问题成为NP问题,也就是计算的复杂度并不能表示为多项式形式的复杂度,而往往只能表示成指数形式的复杂度。如文的式子,当将n的长度增加2位,即x加2,我们可以容易算出,计算的复杂度将增加一倍。现有RSA的密钥常用1024位,若升级为2048位,计算的复杂度将增加为倍。当然,性能最好的分解因子算法并不是这个复杂度,但是也仍然是NP问题,复杂度和规模也是指数关系。通过这个例子我们可以知道,在仅仅提升计算能力,而对算法弱点的研究没有突破的情况下,我们可以通过增加算法的密钥长度使得计算的复杂度迅速提升,而远远超过现有最强的计算能力。而增加密钥的长度,对原来的算法几乎没有影响。因此,对于加密算法的破解,并不是依赖提升计算能力而进行更快的运算就可以的,对于算法本身弱点的分析从而进行破解才是能够是算法真正失效的破解途径。因此,在对整数因子分解问题没有突破性发现的情况下,再强大的计算能力都难以撼动RSA的牢固位置,因为只需要简单地提升密钥长度就可以使得当时最强大的计算机在数万年内都无法破解。当然,通过把加密数据记录下来,等到以后计算能力强大以后再进行破解也是一种看似不错的方案。当今最快超级计算机天河2号的最大运行速度为55PetaFlops[3],大约为72Peta,也就是天河2号破解DES还是需要好几十秒的。以当今最强的计算能力,DES尚不能做到秒破,如果是对于美国安全局这样子大规模记录的加密数据,各自使用不同的算法进行加密,每一个破解都需要几十秒对于那么大规模的数据而言也是需要消耗非常多的时间。个人认为,记录这些加密流量等着以后破解,还不如现在用超级计算机来为根证书的RSA公钥做因数分解来得靠谱,毕竟这算是一个一劳永逸的事情。或者通过植入根证书的方法,进行SSL/TLS的中间人攻击,也是一种很好的窃取加密数据的方法,该方法的实施可参见《》。世界上最大的安全问题在于人。技术上达不到的问题,通过行政手段可以很容易的解决,PRISM计划也反应了,美国有关部门通过跟Google、Facebook之类的大型互联网供应商直接索取用户信息,是一个多快好省的方法。信用卡号码、密码这些个人信息在政府眼中根本都是无所谓的东西,根本不用使用技术手段,行政手段就能解决。至于记录流量,我觉得更主要的是针对其他国家和组织这些行政手段无法达到的地方,需要破解这些通信量,记录下来慢慢破解确实是一个很好的方法。综上所述,在未来比较长的时间范围内,大约十几二十年,在不考虑量子计算和对密码算法破解分析没有太大突破的前提下,不大可能通过计算能力提升而使得现有的密码算法得到轻易地破解。[1] [2] [3] 【武杰的回答(8票)】:修正补充一下说到的一些内容现在的一切基于数学的密码都是基于数学难题比如大整数分解/NP问题等产生的,这些问题面对量子计算机而言几乎都是纸糊的,所以在量子计算机出现的前提下,现有的所有基于数学的加密机制都没有安全性可言,当然,目前量子计算机只不过存在于理论中,前不久谷歌购买的量子计算机实际上也不是真正的量子计算机,无法执行量子计算机特有的解密算法好的,那么我们暂时将还在潘多拉的盒子里面的量子计算机放在一边,单纯说说现在的加密的安全性作为一个安全科班出身的同学,我很负责的说,安全性,非常,非常,非常的高这样说个概念吧,现在别说AES了,单单一个56位的DES说是可以暴力破解,可是实际的成本也是非常非常高的攻击 DES 的主要形式被称为蛮力的或彻底密钥搜索,即重复尝试各种密钥直到有一个符合为止。如果 DES 使用 56 位的密钥,则可能的密钥数量是 2 的 56 次方个。随着计算机系统能力的不断发展,DES 的安全性比它刚出现时会弱得多,然而从非关键性质的实际出发,仍可以认为它是足够的。我不太记得2001年1天破解DES用的是什么方式,但是如果我没记错的话,应该借助的是超级计算机或者是互联网云计算这样的方式,反正即使现在的2013年也绝对不是一个普通人就可以用手头的资源花费1天的时间破译出一个DES密码。更何况还有双重DES,三重DES,N重DES,更别说AES了密码学所使用的数学难题的难度绝对都是远远超过当前计算机运算能力的数量级的,我说的是数量级就是100次当前计算能力和100000次所需计算能力这样的质的区别,除非出现算法上的突破或者是技术上的飞跃(比如量子计算机),否则这根本就不值得去担心。并且,以上说的这个等级的加密都还局限于“普通民用级别”,对于安全要求更好的企业级的安全算法(大部分都是多种加密的融合就比如这里提到的SSL)更是难上几个数量级。我更不会说用于绝密级的加密技术比如军方啊保密局的啊实际上银行的U盾系统也是通过基于数学的安全体系,如果真的存在哪怕一丁点儿的破译可能性损失就绝对是非常非常惊人的。(我花费1年时间破译了郭美美的也够我吃一辈子= =)即使是一种花费1亿美金花费3年时间才能破译一个加密系统的方法,那么也会有各国的情报机构大力投入的。你听说过吗?现在收集以后破译,可能吗,的确可能,但是信息的时效性绝大部分情况下远远小于加密方法安全的时效性。OVER【Clones的回答(12票)】:稍作了些补充修改,其实更准确和详细的内容,点到那些维基的词条里都有的。-----------------------------------------------SSL()在各个层次上,把基本的密码手段都使用了。密钥交换使用了非对称公钥系统,比如,其安全性是数学特性提供的,在通常使用的1024位密钥的规模下,目前的计算机基本是没办法在有效期内破解。未来可能可以使用量子计算机破解,算法已经研发出来了,但是硬件似乎还不能实用。所以目前还是安全的。密钥交换完了,通信使用的则是等对称加密系统,具体用什么原理设计我是不清楚,原则反正是一个函数,对明文进行混淆、置乱。以AES为例,其在2001年替代DES,目前还是安全的。而DES()则是上世纪七十年代出现,在1998年以一台250,000美元造价的机器可在两天多一点的时间内找到密钥,而到了2006年,用一台10,000美元的机器便可在一天内破解DES的密钥了。在各个环节的身份认证问题上,通常要利用hash散列算法,著名的的原理在90年代初出现,作为最后的改进版本,MD5在04年被证明可以破解,后续的研究已经基本确定了MD5的死刑,目前基本只用于数据效验的场合(比如BT下载大文件的时候)。而目前主要使用的散列算法应当是,其中最早的版本SHA-0在1993年发布,大约十年后基本被破解。SHA-1在1995年发布,也大约十年后出现了破解方法。SHA-2则虽然遭到严重质疑,但是还没有破解方法出现,因此通过公开招募的方法选定了新的SHA-3作为备选。上面说的很多破解方法出现的时间其实很多只是存在了可以破解的例子,时间复杂度上仍然是不能忍受的。但存在方法就存在改进的可能性,因此也就在提醒人们要更新密码算法了。一个密码算法大概从来也不敢保证能在多长时间内不出现破解方法,只能是在出现了破解之后赶紧进行改进了。目前网络上流传的数据的加密方法即便在多年后被破解了,基本上也已经失去意义,而系统也早已更换了新的密码算法了。不过密码算法不是安全协议的全部,即便密码算法全部都是可靠的,安全协议也可能存在漏洞被攻破。NSA作为情报机关,收集密码信息进行研究倒也不算什么新鲜事,DES研发过程中甚至有过NSA要求研发人员给他们留后门的传说……【孙竟的回答(5票)】:目前主要使用的是 TLS,它是在 SSL 3.0 的基础上发展起来的,其中 TLS 1.0 相当于 SSL 3.1。TLS / SSL 的作用是对传输的信息加密并签名,保证第三方无法获得被解密的信息和伪造其中一方向对方发送信息。其中,TLS 1.0 建议使用的加密算法是 RC4,TLS 1.1 和 1.2 建议使用的是 AES。TLS 1.0 采用 RC4 是为了应对 BEAST 攻击(),不幸的是又出现了 RC4 攻击()。而关于 AES,目前没有比穷举法效率高很多的破解。简单来说,采用 256 位密钥的 AES 加密,要尝试 2 的 256 次方次运算才能猜出密钥,破解算法能减少到2的 254.4 次方()。而 AES 加 / 解密的过程是很慢的,就算每秒能对 256 字节的信息计算 1 万亿次解密,也需要约 1.84e+57 年才能算出来,比宇宙的年龄不知道要长多少个数量级。如果你使用 Chrome 浏览器,可以分别访问
和 ,然后点一下地址栏左侧的小锁,切换到「连接」标签来查看这些信息。TLS 1.0 和 1.1 采用的签名算法主要的是 HMAC-SHA1 和 HMAC-MD5,TLS 1.2 采用的是 HMAC-SHA256。签名的作用是标记一条信息是由对方发布的。如果伪造用户发送一条消息,那么在不知道密钥的情况下,是不能产生正确的签名的。而签名算法通常被认为是安全的,它会产生一个与密钥相关的散列,攻击者既不能通过签名还原出原文,也不能重用该签名发起新的信息。这些签名算法的安全性并不完全依赖散列算法的安全性,因为还和密钥相关,还可在消息里附加时间戳、一次性的随机串等来防止重复攻击。因此即使一个算法被证明是可以产生碰撞的(如 MD5),可以用彩虹表还原部分原文,也无法伪造出正确的签名和还原原文。目前最大的安全漏洞是中间人攻击。要做到这点,你需要劫持用户的 DNS 和证书,让用户访问伪造的网站,并且相信你给的证书是真的。比如众所周知的某国可以把敏感的域名解析到其他地址,再自己提供一个伪造的证书,还是国家颁发的。不过也有不注重安全的网站,允许随意注册该站的邮箱。攻击者可以注册有特殊用途的邮箱,例如 ,然后就能申请到一个
域的合法证书了。攻击者再去公共场合搭个免费的 WIFI 给别人用,就能拿到一堆信息了。而如果网站压根不用
的话,那任何信息都能拿到。或者更简单暴力点,既然 TLS 不易攻破,那就想别的办法拿到密钥。例如拿到该服务器的访问权限,或者直接查机房。综上,TLS 所依赖的算法本身可以视为是安全的,但遭不住 ISP + CA 的联合攻击。【知乎用户的回答(3票)】:上面说的都很有道理。一言以蔽之,目前SSL的协议(包括其所使用的加密特定强度的加密算法)之所以能被大家接受且广泛所使用,肯定是能满足在有效的时间内(大概十数年甚至数十年)的计算安全性的。而且肯定是在某个体系内(比如破解的时间复杂度理论)能用数学来证明这个安全性的。所以,我们不妨换个角度来考虑这个问题:SSL协议不是简单的一个加密解密的过程,其中涉及到了非对称密钥体系的证书认证、会话密钥的生成(还包括这个密钥的更新)、以及用会话密钥使用对称密码体系进行加密等。这个系统中,被大家盯得最多的是暴力破解的复杂度,所以大家更多的关注密钥有多长,主要加密算法有多安全。而相应的,整个系统的具有几乎相同安全重要的部分,获得的关注就少了,这些部分,就很容易出问题。就拿无线网络被淘汰的WEP加密来说吧,用的RC4流加密,本来是安全的,结果因为系统设计的问题,出了滑子。具体可以看这个:。TK在微博上推荐了三份资料,是关于破解SSL的,地址在这:;;。如果再开阔一下思路,如果想破解你SSL通信的人再有点权利的话,那基本上SSL就没有什么安全性了。(只需做到两点:1.控制你的流量—流量途径的网络上的节点都可以做到。2.控制你的系统内置CA公钥—安全软件公司和浏览器公司还有生产系统(正版或盗版)盘的可以做到。 第二点比较困难,但在瓷器国,真不好说。)所以这个问题的答案是这样的:从密码学上来说,破解SSL加密技术,应该至少需要10年。如果不从密码学上来说,现在没有什么加密技术是绝对安全的,SSL也不例外。【王磊的回答(2票)】:以上各位大神已经表达的很清晰了,我简单说两句。首先,SSL/TLS是协议,不是算法,协议的科学性会随着时间的推进不断升级,1.0、2.0、3.0等,目前在默认CA可信的基础上,SSL协议应该是非常严谨的。再说算法,密码算法没有绝对安全不可破解,一般会认为当密码算法(包括密钥长度)升级的速度超过破解它所需计算能力的发展速度时,这个密码就是安全的。由于不研究算法,所以只能从逻辑以及PKI体系方面去理解这个问题,以上浅见。------------------------------------------------------看到很多人在针对CA体系提出质疑,尤其针对CNNIC-CA,因为本人就是从事CA方面的工作,对这个体系的运作相对比较熟悉,简单说两句。CA体系(包括CA可信机构)在目前仍然是可靠的、严谨的。首先,大家需要了解一点,是谁赋予CA这样的权利?作为权威鉴证机构,整个PKI体系中至关重要的一环,任何一家CA的运作都关乎整个互联网的安全,所以任何一个国家的ZF都没有办法对CA鉴证行为形成有效干预。在我朝生活久了,不免会有这样一种感情基调(阴谋论),乐于对任何与ZF相关的行为提出质疑,这种质疑是没有错,可怕之处在于别有用心之人利用的大众的这种心态,达到某种可怕的目的。有点扯远了,话说回来继续说CA,一家CA想要上线运营自己的鉴证业务,有这样几个环节是至关重要的:1. 搭建CA系统,定制业务流程,由国密办进行安全性以及资质方面的评估。2. 完成WebTrust审计(并非一劳永逸,每年两次),审计点会有几百个,包含资质、人员、系统、安全、业务流程、业务合规性、系统日志、合同等方面,目前WebTrust审计只由安永和普华永道提供,没错,全球的WebTrust审计也只能找这两家事务所!如果说大家对于国密办不能100%信任,那么对于这两家审计事务所的权威性和公信力,大家应该不会有太多质疑,审计行业也不是没有翻过船,谁都不敢轻举妄动。3. 完成WebTrust审计之后,拿着安永或者普华永道的审计报告,向浏览器厂商和操作系统申请信任,否则用户访问安装了CA签发的证书之后,浏览器访问会有警告提示当前证书不可信!4. 浏览器厂商、操作系统等并不会因为你提供了审计报告就100%信任你,他们也会按照自己的流程进行一系列评估,像Mozilla这样的非营利组织,对于安全方面的评估是十分严谨的。5. 退出机制,WebTrust审计过程中发现问题,比如发现虚假证书等情况,CA将不能得到审计报告,浏览器也会在信任列表中踢掉该CA的根证书。其实不仅仅是CA签发虚假证书会触发退出机制,如果CA按照既定流程签发的证书,证书持有人利用证书进行中间人攻击等行为,同样也会触发退出机制(并不是没有先例!)。总之一切因为CA违规操作、失责引发的安全风险,都会触发退出机制。对此网民也可以发挥监督作用,比如你质疑CNNIC的公信力,那好,那你就去找到证据,证明CNNIC作恶,如果几年、十几年、几十年过去了,仍然没有任何人掌握任何证据,那你的质疑也未免显得苍白了些。证书的公钥都是公开的,浏览网页的时候就可以查看,如果发现可疑的证书,那么你就把这张证书保留下来(截图总会吧),作为证据去举证。最后我想说,勇于质疑是好的,但是在你100%确信之前,不要以讹传讹被别有用心之人利用。【重九的回答(1票)】:日【李浩的回答(0票)】:首先,一个密码算法,有理论不可破和实际不可破的区别。理论不可破的密码算法只有所谓的「一次一密」,就是说用真随机的序列去加密信息,这种算法的一大问题就是真随机序列的取得,大规模应用的话效率太低。现在民用的密码算法都只能保证「实际不可破」,也就是说破解需要花上几万年的时间,把一段有限的序列输入,通过移位寄存器输出伪随机序列来加密,就叫做「流密码」或「序列密码」,把信息成特定大小的块,把密钥通过扩展算法来加密每块信息,叫做「分组密码」比如AES-256算法就是现在来说还比较安全的分组密码,AES由于设计的很巧妙,不存在像DES一样可能会在S盒中被留下后门的隐患。以上说了一些没啥关系的,现在回答题主的问题~破解一个算法,有大程度上就是暴力破解,也就是穷举,加上寻找一些数学方法,来尽量降低计算复杂度。所以一个算法的寿命和计算机技术的发展有很大关系。现在所有这些算法,在量子计算机面前也就是几微秒的事,但是量子时代自然有量子密码来加密信息,密码学就是这样在不断的「算法-破解-新算法」的循环中发展起来的。【Blues的回答(0票)】:SSL(TLS)是网络加密协议,在浏览器与网站握手交互,用到了非对称加密,在传输实际数据用到了非对称加密和哈希算法。中间监听数据流,暴力破解理论上只是时间问题,依赖计算机计算能力。但是政府会开挂的,本国网站用行政手段,直接找到网站索要服务器证书(也就是私钥),就可以解码了。未来,也许通过解密今天的SSL留,会改变历史的认识。【知乎用户的回答(0票)】:能够做到轻松的暴力破解(比如普通PC在几个小时级别)估计100年之内不太可能。但随着计算能力的指数级提升,破解的难度会越来越小。比如用*万年-&*千年-&*百年。。。【冯东的回答(2票)】:目前的答案中,还没有涉及加密系统设计目标的一个要素:时效性。加密系统的设计目标是拖延解密者足够长的时间,而不是永远阻止解密者。所谓「今天截获、明天解密」,本身就不算是攻破加密系统。再如攻破根结点证书的私钥:任何证书都是有时效的,只要攻破的时间长于时效,就是没有意义的。所谓依靠计算能力增长来破解加密,本身就不是加密系统要防御的。【有杰的回答(1票)】:在正确使用的前提下,SSL本身是安全的。楼上已经说了很多了,算法基本上不可破解,但是安全是一个整体的概念,只要一个点被突破整个防线就失守了,而这个点一般不会是SSL的算法,文章所说保留的加密数据可以通过各种方法解密,例如法庭命令,社会工程,网站攻击,乃至密码分析。如果得到了密钥,所有相关网站的历史流量可以一次性解密所谓的密钥应该就是指网站证书的私钥,由于SSL的对称加密算法及其密钥是通过证书的公钥加密的,因此只要知道了证书的私钥,根本不需要破解其加密算法就可以直接解密了,对于国家机关来讲,利用法庭命令或社会工程得这个密钥还是挺简单的,对于一些黑客直接攻击网站获取私钥也很可能,反倒是直接破解算法难度非常大。【螺哥的回答(1票)】:上面说的都是暴力破解,其实真正要去破解密文,暴力破解的效率是最低的。传统加密由4部分组成:明文,密钥,加密算法和加密后的密文。现实中破解一套加密系统一般都至少要知道其中的两样,如密文和算法,求原文和密钥,这是最困难的一种情况。最理想的情况是知道其中三样,明文、密文、和算法或密钥,求剩下那一样。破解了整个系统之后再拿着密钥和算法去破解其它密文。这是一般传统加密,如果要破解HASH这种不可逆的加密方式,除了某些特殊情况,否则拿着密文求明文基本上是不可能的。扯了这么多回到主题上来。对于SSL来说,假设你知道密文和算法,想倒推出密钥和明文,这就是上面所说最困难的破解环境之一。楼上各位已经把SSL加密理论阐述的很清楚了,暴力破解的成本相当之高,而且SSL的密钥在每次与CA服务器认证之后的session里都不一样,破解出来的密钥只能用于破译当个session的密文,所以若非有重要情报,没事闲着去破译某网民和媳妇的对话这种事一般没人干。如果真要破译SSL密文,一般会用其他手段得到加密系统的第三部分,即一段明文,或密钥。明文可用木马一类的程序通过键盘纪录(key stroke)得到;密钥可以通过伪装(spoofing)CA得到,然后再建立完整的加密系统,从而破译密文。总而言之,没有绝对安全的保险箱,就看保险箱里有多少钱。
馆藏&69351
TA的推荐TA的最新馆藏
喜欢该文的人也喜欢

我要回帖

更多关于 防止中间人攻击 的文章

 

随机推荐