SS详解(一):原理

很多人根本搞不清楚SS几种模式是什么东西,基本上按照自己那种能勉强弄通就用哪种,稍微遇到一点问题动不动就怪固件不稳定,说句老实话,每次遇到这种情况,我心里就是千万匹草泥马奔腾而过。

好吧,之前不懂不怪你,是因为几乎没有几篇内容是扫盲的,大部分都是针对专业人员的讨论,下面打算从最粗浅的内容开始介绍,专业人员请略过此篇文章内容,因为对你毫无帮助。

首先,我们看看SS到底是什么东西,SS全名ShadowSocks,是一位在知乎网站工作的大神开发的一套针对DPI(深度包检测)系统弱点开发的一套网络加密工具。它通过抹除网络数据通讯的特征,来让检测系统无从下手,从理论上来说,SS的处理模型并非绝对没有弱点,但是,这个弱点要利用则难度非常大,用个比喻来说,如果你在鱼缸里面,要找到一条特定颜色的小鱼,会很简单,但是,当面对整个海洋来说,要找到这条鱼几乎是不可能的。

SS就是利用这样一个原理,把自己的数据通讯模式变得毫无特征,所以,当拦截系统需要对SS进行拦截的时候,需要对每一个水滴进行检测,而目前任何一个国家的拦截系统的运算能力,都几乎是不可能做到的。 我们稍微了解下,SS到底是如何做到这种功能的,说穿了道理也很简单,传统的VPN也好,网络加密也好,首要考虑的是安全原则,也就是:即便你知道了我在传输数据,你也一样无法解开我传输的内容,所以,大家根本不太在乎到底别人是否能够发现自己在传输加密的数据,因为通过RSA的天才算法,使得在传输过程中的数据解密几乎在目前的状态下是不太可能的,甚至在整个加密传输开始前,大家甚至可以大喇喇地使用明文来传输一些打招呼的信息,用来告诉对方,接下来我准备用闽南话和你通话了,拦截系统则刚好利用了这点,它们并不在乎听懂你说什么,但是,只要你一说,接下来用闽南话开始通话这几个字,就开始搞鬼,或者直接把你的通话线路掐掉,或者在你前面说的话前面插几句四川话,让听的人觉得:说什么鬼啊,明明是四川话,说好的闽南话呢?肯定是骗子,不理他,于是,你的加密传输就中断。

所以,在几轮的系统升级后,到了2016年春季,几乎所有的VPN协议以及网络加密传输协议,均可用不同的方式被破坏,导致整个通讯出现中断。 但SS呢?它利用了一点:也就是通话双方都是可预先约定的,例如约定双方讲的就是闽南话,你要听懂我说的,就要找个懂闽南话的人和我聊,这样,从第一句开始说的话开始,就是用闽南话开始说,而听的呢,则一早准备好一个懂闽南话的来交流,这样通讯双方可以互相听懂,而偷听的人由于并不知道双方约定是用什么语言的,于是就傻眼了,而在网络传输中可用的语言几乎是无限种类的,所以就造就了SS神奇的能力,于是偷听的人心想:你妹的,看老子怎么治你!最终,SS的作者会被拉去喝茶被迫删代码了。可惜机关算尽,github的源代码的复制能力,不是作者删了自己的代码就可以阻止一套代码传播的。 つづく

来源: SS详解(一):原理

» 本文链接:SS详解(一):原理 » 转载请注明来源:刺客博客

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏闻道于事

商城项目整理(三)JDBC增删改查

商品表的增加,修改,删除,订单表的增加,确认,用户表的查看,日志表的增加,查看 商品表建表语句: 1 create table TEST.GOODS_TABL...

5415
来自专栏谈补锅

记录C#常用的代码片段

using Newtonsoft.Json; using Newtonsoft.Json.Linq;

882
来自专栏葡萄城控件技术团队

Table-values parameter(TVP)系列之二: 利用DataTable将其作为参数传给SP

一,回顾         上一部分讲述了“在T-SQL中创建和使用TVP”,通过T-SQL建立如下的对象:         1)Tables ...

2039
来自专栏跟着阿笨一起玩NET

C#巧用Excel模版变成把Table打印出来

转载:http://blog.csdn.net/gwblue/article/details/38865525

1102
来自专栏跟着阿笨一起玩NET

[C#]工具类—FTP上传下载

  不错的文章:http://www.cnblogs.com/greatverve/archive/2012/03/03/csharp-ftp.html

1081
来自专栏跟着阿笨一起玩NET

C# 通过HttpWebRequest在后台对WebService进行调用

http://www.cnblogs.com/macroxu-1982/archive/2009/12/23/1630415.html

2722
来自专栏码匠的流水账

聊聊EurekaRibbonClientConfiguration

spring-cloud-netflix-eureka-client-2.0.0.RELEASE-sources.jar!/org/springframewor...

1091
来自专栏菩提树下的杨过

winform中linkLabel的用法(示例)

private void Form1_Load(object sender, EventArgs e)         {             this...

1895
来自专栏码匠的流水账

聊聊spring cloud的AbstractLoadBalancingClient

本文主要研究一下spring cloud的AbstractLoadBalancingClient

812
来自专栏互联网开发者交流社区

WinForm之窗体应用程序

1733

扫码关注云+社区