加载中 ...

DAPP真的去中心化吗--从ss区块链化来谈谈区块链对开源项目的改造

2019-03-21 05:17 编辑:btc268.com 来源:区块链资讯

  现在很多人谈到去中心化就会想到区块链,甚至将去中心化和区块链划上了等号,3哥认为,这其实有些失真。

      在1991年10月15日,linux操作系统正式向外界功公布,因为它是开源的,所以任何组织和个人都可以对其加以改造和重写,由此开启了“自由软件”的风潮。简而言之,就是软件开源,免费分享。

      直到目前,linux已经有了十几个主流的免费发行版本,和无法计数的个人版本,而这些基于linux内核的操作系统已经占据了服务器市场90%以上的份额。

  某网站统计数据:

  

      就目前而言,3哥认为已经不可能有任何人通过任何方式,通过其个人的力量来决定linux发展的方向了。即使是林纳斯本人也没有能力控制整个linux系统行业。

      由此可以得出一个结论,去中心化的软件早已经产生了,而去中心化也并不是区块链的专利。而且就算使用了区块链,也不一定可以实现去中心化。

      就现在的很多自称DAPP的软件而言,其实根本谈不上什么去中心化,有的只是单纯的代币上链而已。只要项目方的服务器一关,所有的服务都会瘫痪,投资者得到的不过是记录在区块链上的一串数字而已。像这种“DAPP”在本质上,由于不开源,别人也没有服务软件,项目方就会拥有软件的生杀大权,叫你死你就不得不死,根本谈不上什么去中心化。

      那么既然区块链根本保证不了软件的去中心化,那么要它又有什么用呢?

      3哥认为,区块链所实现的只有数据的去中心化存储与运行。这是区块链的优势,也是它的弱点。简单来说,区块链就是一个去中心化运行的数据库。区块链这个数据库本身不能提供任何面向普通用户的服务,它必须借助服务软件才能直接为用户提供具体的服务。

  传统的DAPP服务逻辑图:

  

      在传统的DAPP系统逻辑中,只有区块链上的数据是去中心化的,而服务器和客户端的软件都是中心化运营。这样一来,所有的业务逻辑都是封闭的,只要服务器一关,所有服务就无法正常使用。

      3哥认为,要实现真正的DAPP,不光要实现数据上链,还必须要让整个软件系统开源。也就是服务器软件和客户端软件的开源。开放所有的业务逻辑,才能实现整个软件服务系统的去中心化。

      很多人会对此有疑问,但关系,下面3哥就以开源项目托管平台github上的知名国人项目ss(全名shadowSOCks)为例,讲讲如何对其进行区块链化的改造。

      ss据说是一位在知乎网站工作的大神开发的一套针对DPI(深度包检测)系统弱点开发的一套网络加密工具,它可以通过抹除网络数据通讯的特征,从而躲过检测系统的侦查。简单来说,它只有一个功能,就是翻墙(跨过长城,走向世界)!说来好笑,当1987年中国第一次连上互联网时,措恩教授发送的第一封邮件就是“越过长城,走向世界(Across the Great Wall we can reach every corner in the world)”。如今三十多年过去了,我们还要老调重弹。

  ss 项目在github上的关注度和各个版本: 

  

      接下来3哥就讲讲ss运作的原理。

  ss运作示意图:

  

      如图,在“中国局域网”中的“3哥”如果妄图直接联系“邻家女孩”,那么就是非法请求,会被“长城”拦截,通讯不能成功。但如果“3哥”安装了ss客户端并搭建了“ss服务器”,那么ss就会提供可靠的信息加密服务,使得“长城”无法识别“3哥”的请求到底是什么,于是“3哥”得以蒙混过关,成功连上不在“长城”中的“ss服务器”。然后“ss服务器”会将“3哥”访问“邻家女孩”的请求解密并转发给“邻家女孩”,从而完成通讯。

      那么既然ss那么好用,为啥没有能在普通大众中流行呢?

      这是因为“长城”也不是傻子,要是检测到长期大流量异常,“长城”会直接屏蔽其服务器IP地址,管你是什么请求,统统封杀!然后就是服务失效,服务提供商也乘机跑路,最后受损的可不就是用户嘛!

      事实上,ss能运行的根本原因是,中国并没有封杀全部的外国服务器,毕竟还要继续做生意,赚外国人的钱。但为了xxx原因,还是会屏蔽一部分的请求。ss则进行了针对性的伪装,成功瞒天过海。

      所以,ss虽然是一款非常好的软件,但其服务器功能被严重限制了。现在也只有一些程序员才会因为工作原因自己搭ss服务器使用,由于门槛很高,它无法在普通群众中普及。

      但就也是说,只要解决ss的中心化服务器不稳定,不可靠的问题,ss就能为千万普通用户提供服务!

  传统ss服务器多用户服务示意图:

  

      如上图所示,传统的ss服务器提供多用户服务时,需要依赖中心化服务器,因此容易被封杀。

      3哥则在思考是否能够使用区块链实现去中心化(或者成为多中心化)的ss服务提供。

      事实上,由于ss是开源软件,所以在本质上ss服务提供已经是去中心化的了。但也正是由于ss是开源软件,任何人都可以对ss进行修改,并声称自己的解决方案才是最好的,也就无法达成共识。各个ss服务提供商互不相关,因此造成了资源的极大资源浪费。而消费者也因此找不到行业内得到大多数人信任的ss服务提供商,无从选择。这也是开源软件的弊病之一,会造成极大的资源浪费。

  传统ss服务提供商互不关联:

  

      但由于区块链可以实现全球信息同步,并且其信息是去中心化存储的,既符合开源软件的去中心化原则,同时也容易达成大范围的共识。就此,3哥想到了一个将ss区块链化改造的办法。

  基于区块链信息共识的通用ss服务:

  

      其基本思路如下:

      1.发布基于主要公链的智能合约(暂称为ss合约),其合约基本功能如下:

          (1)ss服务器注册

          (2)ss服务器查询

          (3)基于时间的代币交易合同

      2.所有的ss服务器可以通过绑定的公链钱包在ss合约上注册自己的服务器ip,这样就可以使自己的ss服务器对所有用户可见,同时其所有服务费用可以通过公链钱包接收,避免跨国支付问题。

      3.所有的ss客户端则可以通过绑定的公链钱包在ss合约上查询可用的ss服务器,并通过ss合约达成基于时间的代币交易合同(比如说包一个星期的ss代理服务)。如果在一个星期内其服务不可用超过一定时间,则可以申请区块链上的合约违约退款。用户收到退款后可以另外选择新的ss服务器。

      当然以上只是非常基础的功能,基于以上合约可以添加诸如评价机制,拍卖机制来通过市场筛选出优秀的服务提供者。

      3哥所设想的以上机制基于一个根本逻辑:区块链本身不可封杀,一定是在任何时间,任何地点都有效的。从而达成ss服务的市场化,使得ss服务更加透明,安全和可靠。

  

      但要在达到完全的去中心化的同时,又让每个人都信任服务系统,就势必要实现服务软件与智能合约的开源和交易数据的上链,二者缺一,就不能实现可靠的去中心化服务。

      可能有人会问,既然软件开源,智能合约也开源,那为什么不会每个人都搞自己的一套系统呢?

      3哥认为,恰恰是软件开源,从而催生出来了区块链。在区块链上,所有的数据都是需要付费的。而拥有最多数据的智能合约,也就是价值最大的智能合约,也就是人们共识所在。如果ss合约是记录服务器数据最多的合约,其提供的服务器推荐最好,那么90%以上的用户就会优先选择在这个合约上进行交易,而90%以上的商家也会选择在这个合约上进行注册。如此一来,任你多少个版本的系统,只要你还使用我的合约,我合约中的数据,你就必须向我付费。

      3哥可以大胆预言,在未来不久,很多的开源项目都会出现软件免费,数据收费的情况。而区块链由于其交易便捷,可靠的特性必然会成为数据存储与交易的首选。这也许会成为DAPP一块新的风潮。

      让我们拭目以待。

  唯一同步更新微信公众号:3哥玩赚NEOworld

  

  唯一同步更文币乎号:33357

  点击“阅读原文”进行评论与交流↓

关键词:比特币新闻 币牛牛

转载自比特币新闻网(www.btc268.com),提供比特币行情走势分析与数字货币投资炒币最新消息。

原文标题:DAPP真的去中心化吗--从ss区块链化来谈谈区块链对开源项目的改造

原文地址:http://www.btc268.com/qkl/js/8908.html

本文来源:区块链资讯编辑:btc268.com

本文仅代表作者个人观点,与本网站立场无关。

本网站转载信息目的在于传递更多信息。请读者仅作参考,投资有风险,入市须谨慎!

'); })();