导读:如果你还不了解区块链,这篇文章不适合你,建议你先学完再来;如果只关心撒币,你可以直接拖到最后看发币信息,前面的内容都不用看;如果有通讯和社交领域知识,并一直关心区块链,这篇文章会可能对你有帮助,建议你看看;如果你对下一代通讯系统有独到的见解,还想投资价值互联网的社交平台,这篇文章绝对值得你阅读两遍以上。

以上建议适用本系列的所有文章。本文共三千余字,预计需要10分钟阅读,但可能需要10小时来消化。

不管你愿不愿意相信,Telegram马上要完成史上最大规模ICO了,在没有公开发售的情况下已经募资17亿美金。这一事件让人震惊,更震惊了币值排行榜上的一票老币。这里面有其币圈微信的影响力,也有其长期在通讯行业的积累的声誉,不过本系列文章并不会去赘述代币相关的事情,而是重点分析项目背后的技术,也就是区块链和通讯相关的设计。

这是本系列文章的第一篇,讲讲为什么不适合把IM做成DApp直接运行在公链上。

01

区块链的未来在哪里

Photo by Tony Webster on Unsplash

区块链正在引发新一轮技术浪潮,服务的去中心化已经势不可挡。比特币Bitcoin证明了去中心化账本技术的可操作性,而以太坊Ethereum增加的智能合约则为实现多样性服务提供了可能,但技术应用爆发性增长也给公链带来了性能和可扩展性方面的诸多挑战。

于是IOTA、EOS、TON等众多区块链项目开始致力于解决性能问题,并希望将公链作成支持所有服务运行的操作系统,一次性满足各种业务需求。这是一种大胆而创新的尝试,虽然从工程和效率来看,还是远远不够的。

与此同时,IPFS、NKN等项目则分别切入细分的存储和网络领域,通过区块链技术对底层服务进行重构,从资源层面构建未来价值互联网的IAAS平台。说明区块链正在从纯粹的账本技术开向更广阔的领域拓展,开始通过调整经济激励的方式参与普遍场景下的价值分配。

这是改变生产关系的重要一步。从这里开始,当前互联网的各种高价值服务,将有机会以一种全新的可持续运作的方式存在,成为普遍存在按需使用的基础设施。

简单来说,从技术层面看,区块链的未来有三个方向,一是通用公链,记账的同时能干很多事情,二是共享资源池,记账,并专门给资源提供方奖励,三是垂直公链,记账,并给平台参与方奖励。对应到古典互联网场景,就是操作系统、云服务、平台级应用。

本文讨论的是第三个方向,平台级应用。

02

平台级通讯需要区块链

kaboompics.com

一个业务是否适合区块链,可以从经济、业务和技术三个维度来看。

一,从经济上看是否有内在经济循环,有记账需求,有生产分配问题;二,从业务上看是否有信任问题,是否有去中介的需求,进一步分析这些问题和需求是否属于业务的核心场景;三,从技术上看这些问题和需求是否可以用、需要用或者只能用区块链技术来解决。

以IM聊天服务为核心构建的通讯平台,古典如微信,区块链时代如BlockMessage,就是这样的业务。社交经济网络的核心是价值交换,有天然记账需求;同时作为新一代的社交平台,为了保护用户数据和隐私,为了让平台和应用各方的利益分配以平等的方式运作,都是业务层面的核心诉求;而为了保证通讯服务的可持续运行,与区块链技术的结合是最佳的选择。

也就是说,借助区块链的去中心化特性,一起去掉的不仅是平台服务,也包括平台组织。

将通讯服务通过区块链来驱动,实际上改变了原有通讯服务由单独组织来运营的现状。通讯服务的维护,从原来的中心组织提供资金并搭建基础设施的方式,转变为类似维护分布式账本的挖矿方式,实际上由大量的因为经济激励而参与的第三方来维护。

这意味着什么?

意味着会出现一个社交网络,这个网络公平而共享,不存在一个平台方可以通过垄断通讯服务进而控制所有应用开发者,也因此构建了一个所有应用共同参与共生共享的平等的生态系统。

意味着同时会出现一个完全自主运行的通讯网络,这个网络由分散世界各地的人自行购买的通讯节点来提供服务,这一切的运转完全依靠整个网络流转的价值驱动,不受任何人控制。

03

为什么需要一条通讯公链

Photo by Martin Shreder on Unsplash

通讯公链,就是这条公链是为通讯专门设计,而不是一条通用的可以做任何事情的公链。

一般来讲,在技术领域,通用性意味着更高级的抽象,也往往会带来性能或效率的下降。我们仔细分析平台级的通讯系统需求,可以发现主要有可操作性、业务适用性、通讯安全三个方面的原因。

  1. 可操作性

    通讯服务与账本服务,在互联网场景下的请求量级是完全不同的,通常情况下前者要高几个数量级。相比记账这件事,一个互联网服务要做的事情有很多,一个用户访问后看起来什么事情都不做,可能已经在后台有了很多次API请求。将通讯服务直接跑在区块链上,意味着所有请求都会上链,这对公链提出了比记账更高的要求。

    虽然现在很多公链都在致力于解决这个问题,也都出现了像分片Sharding技术和DAG这样相对成熟的方案,然而离满足记账需求仍有相当的距离,也就更别提满足大规模的通讯需求了。

  2. 业务适用性

    显而易见的是,不是所有请求都需要上链,因为上链要有成本。区块链操作系统虽然带来了实现的灵活性,然而也把所有的操作变成了收费模式。这对高收益业务场景尚可接受,然而对于基础应用,这从根本上动摇了其依靠规模效应来降低边际成本的模式。

    就像云服务之于传统服务器托管,SaaS服务之于传统应用,大型应用依靠规模效应获取额外的经济收益,是其维持竞争优势的基础。

  3. 通讯安全

    从安全角度看,通讯行为和流转的信息,都不应该走链。区块链为了免信任而公开透明,但这跟通讯需求有相悖的地方,没有人希望自己跟谁聊过聊过什么内容都被公开在区块链上,即使他们是加密的。

    有些人会觉得端到端加密足够了,其实未必,通讯行为涉及的好友关系,网络接入路径,都是通讯安全的重要组成部分。

此外,从技术应用的过往来看,实验室研究会探索速度和性能的极限,但大规模的应用往往不会直接采用最快的技术,而是倾向于最经济的技术。

牛刀杀鸡,开飞机送快递的情况都不是好的选择。

04

当前区块链领域的通讯IM项目

Photo by Lachlan Donald on Unsplash

一个显而易见的事情是,不是所有的应用都适合用区块链来解决,适合用区块链解决的也不一定需要全部跑在区块链的分布式网络上。

尤其在当前,区块链的发展已经进入去中心化应用DApp的爆发期,各行各业都在探索研究区块链在业务中的应用。现在市场上已经出现了很多的IM产品,让人眼花缭乱,每个项目在讨论的时候都会被简化成为区块链通讯项目,然而实际上,它们的产品和技术路线选择差异巨大。

我们总结,这些项目基本分为四类:

  1. 通讯链项目 AsChain

    在这些项目里,通讯作为基础服务与区块链一起运行,业务上可能专注在商业网络、去中心化网络或者生态系统。这种项目一般通过共识机制,将通讯服务与账本服务绑定在一起,完成记账和聊天的整合。

    代表项目:BlockMessage、Skrumble Network、CrypViser、Yee。

  2. 通用链项目 OnChain

    这些项目本身都是通用公链产品,通讯只是作为运行在公链所有基础设施之上的DApp存在,也就是说,所有的消息发送和接收都通过区块链的分布式网络进行。这种方式属于最原始的区块链通讯实现思路,但如上文所述,有特定的问题。

    代表项目:TON(Telegram Open Network)、Mixin、Status、BeeChat、QBao。

  3. 货币类项目 ByChain

    货币类项目基本都是钱包项目,聊天只是辅助。他们的重心或者在数字货币的发现、交易和管理,或者在传统互联网聊天服务上,比如建立更方便的交易达成通道,群组交流等,说起来还都是古典互联网产品。

    代表项目:CoinMeet、Bixin、Biyong

  4. 纯通讯项目 NoChain

    由于去中心化概念的普及,区块链的通讯项目往往被认为是默认去中心化的,也因此一些去中心化的通讯项目也经常被提及,实际上他们跟区块链并没有关系。

    代表项目:BitMessage。

具体列表参见下图:

不难发现,即使在同一个方向,不同的产品在实现路线和产品定位都是各有侧重,这些细分路径上的选择完全取决于项目发起方的认知和兴趣,但是已经为最终演化成完全不同的产品打下了基础。

在某些项目里,通讯是工具,是为了辅助完成核心业务的一个环节,在另一些项目里,通讯是平台,因为是为了构建一个平台生态,在提供账本服务同时提供一个通讯通道作为基础设施。

愿景的不同,其实是认知的不同,而且可以预见的,最终都会走向不同的地方。

05

BlockMessage撒币了没

Photo by Tom Morel on Unsplash

没有。不过你可以通过「阅读原文」去BlockMessage.IO登记或者继续关注本公众号,快了吧我猜 :P


相关阅读:


只用200行Go代码写一个自己的区块链!

200行Go代码实现自己的区块链——区块生成与网络通信

200行Go代码实现区块链 —— 挖矿算法

区块链及比特币入门指南

新一代开源分布式账本项目R3 Corda 技术揭秘:基于JVM开发

超越比特币以太坊的区块链技术:石墨烯项目简介


特别推荐:


比特币、以太坊、ERC20、PoW、PoS、智能合约、闪电网络……

想深入了解及讨论这些话题?高可用架构在知识星球(小密圈)创建了区块链学习小组,共同学习区块链包括数字货币前沿技术,欢迎点击链接加入。

区块链学习小组

转载本文请注明出处,技术原创及架构实践文章,欢迎通过公众号菜单「联系我们」进行投稿。

高可用架构

改变互联网的构建方式

长按二维码 关注「高可用架构」公众号

为什么IM不适合直接运行在公链上?相关推荐

  1. NA公链(Nirvana)NAC公链独步公链江湖

    公链的江湖也是一样,每一条公链都像江湖的上高手侠士,五花八门,激烈争逐,互相残杀,也正是因为如此,公链的江湖才精彩,他强由他强,清风拂山冈;他横任他横,明月照大江,高手如云的江湖,起起落落,到最后才会 ...

  2. TokenInsight 对话首席——获取增量用户 公链崛起的关键之战

    邀行业首席,谈市场现状,见趋势未来!本期<对话首席>线上活动于6月28日下午3点顺利举办. 本次<对话首席>特邀Contentos 联合创始人 Mick Tsai.Nebula ...

  3. 有利可图的NFT,NA公链(Nirvana Chain)NAC公链怎么面对高额Gas费的?

    在过去的几个月里,被称为非同质化代币(non-funkible tokens,简称 NFT)的数字资产热度渐高,大受追捧--名人.艺术家和投资者通过卖出这些 NFT 创造了成百上千万美元的收入,创造者 ...

  4. 互操作性2.0:奠定公链万亿美元生态的基础设施

    我们相信,随着不同的链之间广泛相连,链上交易体验达到目前的「互联网级别」,互联网用户也会被不断"转化"成区块链用户.从此,大家将进入一个多链互联的.全新的去中心化的Web 3.0世 ...

  5. 王峰十问Nervos联合创始人王宁宁:缘何“中国最懂以太坊的人”要走中国公链的自主创新之路?...

    本文旨在传递更多市场信息,不构成任何投资建议. 文 | 王峰十问 出品 | 火星财经APP(ID:hxcj24h) 11月7日晚8点,王峰十问第36期"惊蛰:中国公链如何实现自主创新&quo ...

  6. 公链、私链、联盟链是什么?

    在了解区块链的过程中,我们总是看见公链.私链.联盟链这些词,它们到底是什么? 公链 公链,也叫公有链,正如它的名字一样,它就是公开的,任何人都可以随时参与公链,它是面向所有人的. 公链的访问门槛低,只 ...

  7. 观点丨公链与联盟链如何走向融合

    公链,顾名思义就是公有,它是指对全世界所有人开放的,任何人都可以读取数据.发送交易且交易能够获得有效确认的共识区块链. 联盟链是指由多个机构共同参与管理的区块链,每个组织或机构管理一个或多个节点,其数 ...

  8. OKEx公链OKChain 下一个DeFi跑马场?

    近日,DeFi成为行业热门话题.它的去中心化金融新模式,蕴含了极大的生命力:既有高度的开放,又有数字资产为核心的金融业务繁荣,被很多人热捧也是意料之中. ETH在DeFi的赛道里,将很长时间占据主导的 ...

  9. 部署到gcp_将S/4部署在“大型公有云”上

    作者:Rami Kandimalla 翻译:大话君 本文根据公开资料整理,不代表SAP官方 本文的目的是解释将SAP S/4HANA部署在大型公有云上时,所涉及的SAP解决方案和技术架构. 什么是&q ...

最新文章

  1. 具体解释可变參数列表
  2. Mysql性能优化实践
  3. ora-01033:oracle initializationgorshutdown 处理方法
  4. vue-cli启动本地服务,局域网下通过ip访问不到的原因
  5. 这届 Windows 不行,是因为微软不卖“软件”改卖“服务”?
  6. 解读netty3.9的数据处理流程(一)
  7. ssh远程登录Jupyter notebook(七月GPU服务器)
  8. 《我在谷歌大脑见习机器学习的一年:Node.js创始人的尝试笔记》阅读笔记
  9. 软件测试web和app,软件测试如何快速进阶?过来人科普Web与App测试5大区别!
  10. 蓝懿IOS实战音乐播放器
  11. directX 简介
  12. 联想拯救者Y7000P拆机清灰学习
  13. 设计模式:责任链模式
  14. 高等数学学习笔记——第九十二讲——函数项级数收敛与一致收敛
  15. 极简网页设计技巧,打造简约之美
  16. UDS(统一诊断服务)的理解——0x19服务
  17. Oracle监听服务启动失败案例
  18. 关于 ‘cosylocal‘ 进程占满内存的问题
  19. 大气化学实验卫星 ACE-FTS(SCISAT) 相关介绍
  20. access查询设计sol视图_选择查询-在access中如何建立一个选择查询只查询一个信?在access 爱问知识人...

热门文章

  1. python requests ssl 证书问题
  2. windows检查磁盘命令
  3. 故事要从我白嫖了一个阿里云服务器说起
  4. Go mgo+Mongodb连接失败问题
  5. 华为笔记本键盘说明图_没有键盘的笔记本:华为 MateBook上手图赏
  6. 【翻译】GRAIL-手写识别 1
  7. android recyclerview监听滑动状态
  8. 【前后端常见的登录方式】
  9. Kali使用Metasploit内、外网渗透windows系统
  10. PHP根据生日计算年龄(周岁)