「ipfs」链宝(LBC)开创区块链行业应用端分布式流通的价值创造平台

原创 时光默念  |  文章来源:币圈达人发布时间:2020-05-24 01:52  阅读 170 次 评论 0 条
众人帮 趣闲赚 牛帮
摘要:

信任(Trust)和合作(Cooperation)是人类文明的薪火相传的核心支撑,人类早期从一个无皮毛类的弱小灵长类,终成为食物链最顶层的动物,在这过程中人类迸发出强烈的生命力和生产力,革命性的工具似乎也确实改变过很多时代,但是单个智人或者

信任(Trust)和合作(Cooperation)是人类文明的薪火相传的核心支撑,人类早期从一个无皮毛类的弱小灵长类,终成为食物链最顶层的动物,在这过程中人类迸发出强烈的生命力和生产力,革命性的工具似乎也确实改变过很多时代,但是单个智人或者一小群智人很难能独立制作出划时代的工具。同样的生产资料,不同的一群智人,迸发的生产力也不一样。而先驱马克思已经告诉我们其中的奥妙:生产力是由生产关系决定的,生产关系是人类在创造物质文明和精神文明过程中形成的人与人之间相互信任和协作的关系。也就说,古往今来上下几千年,人类最终凌驾万物之上的核心能力不是他们懂得制作工具,而是他们懂得信任彼此,一同协作。

作为高度智慧的复杂群体,由于信息的不对称,成员数量骤增的关系,以某个/多个人或某个/多个组织作为核心的信任节点的中心化协作方式逐渐成为主流;一个原始人打猎团队会有个首领,一个封建社会会有一个国王,哪怕到今天有些乡村还存在公信力强的乡绅来解决村里的矛盾。

我们不得不承认中心化方式曾给世界带来了巨大的进步,人类科技树上的技能被依次点满。然而随着人口增长,全球化进程的加快,中心化的弊端逐渐显现。在生产力低下的遥远年代,协作的效率会被放在首位,因为当猎物出现的时候,需要首领快速做出决定,而不是凑在一起投票,在战争年代更是效率高于一切。但在生产力逐渐发达的今天,对公开、透明、信任、平等、民主、自由的呼声远高于其他要素,区块链的诞生终让我们找到了解决问题的方向。

区块链本身是数学(math)和计算机(computer)孕育出的魔法树,因为有了数学,瑰丽的共识逻辑才能成为魔法树的强壮树干,因为有了计算机,才使得魔法树开出充满魔法的叶子节点和信任果实。区块链创造性的解决了如何在混沌状态下、彼此无法互信的情况下最终达成动态信任平衡。这是一项创新的革命性技术,在点对点现金支付系统(Bitcoin)上得到完整和长久的验证,在新金融领域得到长足的延伸和成长,在其他领域亦开拓出了新的适用前景,更为是重要的是它是反抗中心化霸权和打开新世界大门的钥匙。

LBC 链宝项目是新一代区块链应用商店,顾名思义,它是有别于传统过去的应用商店App Store 和 Goole Play 的新一代应用分发平台。在移动互联网时代,苹果凭借着惊艳世人的 iphone 硬件和软件操作系统体系,进而打造了专属应用商店 App Store,而谷歌公司则通过收购了安卓之父 Andy Rubin的创业公司打造了可以分庭抗礼的 Android操作系统,进而打造了专属应用商店 Google Play,两家寡头在微软的 winPhone 日渐式微后,最终占领了硬件、操作系统、分发入口核心赛道,牢牢的控住了整个产业生态,形成了绝对的霸主地位。然而曾经的屠龙勇士终成恶龙,中心化巨头们利用自己不可撼动的地位,定下了霸权规则;在 App Store,开发者日以继夜开发投入大量开发和运营成本开发的应用,不仅面临了 App Store、Google Pay 的霸王条款,还要面临多达 30%的开发者抽成;而作为应用商店的的用户们,他们完成下载 app、评论 app、评分 app、传播分享 app,给应用商店带来巨大的流量,但每年开发者投放巨额的广告费用,都落入苹果和谷歌两家公司囊中,用户作为社区最大的贡献者或从未分得任何收益,更为重要的是随着区块链价值互联网的诞生,传统的应用商店已经不再适应新时代的价值互联网的需求。

链宝(lianbao)项目为此而生,作为新一代的区块链分布式应用商店,致力于建立起适应区块链价值互联网的全球性的、去中心化的应用、内容分发平台。它是个革命性的进步,应用分发迈入分布式时代,霸王规则将无从生效,真正将分发平台的规则制定权力交还给用户,由社区决定分发规则;同时用户在享受到 app 服务时,不仅不需要支付昂贵的下载费用,更可以通过参与社区自治,持有社区通证,成为链宝去中心化分布式应用商店的股东和主人,贡献自己的力量,获得自己的收益,力量越大,责任越大,收益越大,每个人都是参与这个创世大爆炸的新宇宙中的超弦态上的粒子、夸克中微子、光子等等,它们角色不同但目标一致,共同振动在自己的宇宙弦上,就是为了创造一个全新的宇宙。

产品逻辑

基于区块链技术,以去中心化的方式,在全网分布式节点上构建存储 application(应用)的存储网络,并通过的资源位置定位和洋葱路由技术提供资源集中式访问入口,进而构建起新一代的去中心化的区块链应用商店,最终打造去中心社应用分发金融服务体系。

链宝(LBC)在早期将以传统的 http 等互联网技术提供中心化 app 下载和访问服务,到中期在将吸纳 ipfs(星际文件系统)的 IPLD(哈希链数据统一格式)、以太坊分片、门罗匿名技术等技术的优点,提供单点速度不低于 500M 的分片、存储、寻址的哈希链上应用服务,同时通过零知识证明和洋葱路由等技术,构建起真正匿名、开发自由、存储自由、访问自由的新一代区块链分布式应用商店。同时通过严谨的产品设计(匿名发布、一键平行切换、洋葱访问、流畅体验等)实现友好的用户体验,通过优秀的正反馈激励机制(研发即创世、下载即挖矿,传播即贡献等)激励开发者和用户,最终打造一个完善的自激励、去中心化的共识生态网络。

链宝(LBC)初始功能有宙斯平行应用商店、毕方内容蛛网、鸿蒙大数据、弦网、普罗米修斯商业竞价等,在底层公链方面有星际文件系统、智能合约、超级主节点、轻节点等。这些功能构成了链宝强大的产品功能,形成平衡稳定的内在金融,快速裂变的用户关系,快速的商业价值沉淀。

最终链宝( LBC)将成为供全球使用的区块链服务访问的隐私网络,它不仅支持传统中心化应用(app),同时也支持去中心化传应用(dapp),可开发独立的浏览器,独立的 apk、ipa或其他可支持的应用文件格式等。其中 LBC 中的代表每个独立个体或节点,可作为类似于ip 或唯一 hash 值的匿名寻址号,也是底层公链的钱包地址,在这个既开放又隐私的网络中,遵循去中心化原则。

毫无疑问,去中心化的思想已经是共识,但可以肯定的是,我们找到了一种新的方式,不仅从技术上做到去中心化,更从生态层面做到去中心化,我们希望通过链宝的生态通证经济,让每个参与者都获得真正的隐私,财富和思想上、行为上的自由,我们希望 LBC 不仅承载是一个数字货币或分布式存储公链,更承载的是一个去中心化的区块链社区和区块链生态,未来社会一定是区块链连接的去中心化社会生态,而链宝作为链接的实际网关和入口,让每一个人都自由的享受区块链应用服务!

功能介绍

1. 宙斯平行应用商店

宙斯,是古希腊神话中的众神之王,奥林匹斯十二主神之首,统治宇宙万物的至高无上的主神,是希腊神话诸神中最伟大的神,亦是掌控雷与电的天地之神,链宝应用商店以宙斯命名,以期成为破开旧世界的雷与电。

链宝的宙斯区块链平行应用商店是整个区块链产业的核心流量入口,随着区块链产业的不断状态,现年约有 1 万个区块链相关 app、dapp 诞生,传统的应用商店已无法满足区块链产业的需求,截止到目前,全球约有 10 万+的区块链相关应用,如何组织用户有序的、友好的、高效获取相关区块链服务,是整个产业繁荣的关键。 区块链爬虫引擎区块链不断剧增的 app 和 dapp 数量是有序提供下载和访问服务的第一道坎。物理学研究表明,在目前宇宙所有物质的总体质量中,星系等可见物质只占其中的 20%,不可探测的暗物质则占据了总质量的大约 80%。而区块链产业中的应用服务很大一部分处于不可探测状态,没有一款强大的强大引擎,是无法满足区块链产业的需求。

链宝独立自主研发的超强爬虫引擎(spider),是链宝宙斯平行应用商店的核心组成,其技术原理大致如下:

第一步:抓取网页

首先链宝的区块链爬虫引擎会选取一部分的种子 URL,这部分种子 URL 通常是 alex排名靠前的 url 和链宝自身挑选的 url 合集。将这些 URL 放入待抓取 URL 队列;spider 取出待抓取 URL,解析 DNS 得到主机的 IP,并将 URL 对应的网页下载下来,存储进已下载网页库中,并且将这些 URL 放进已抓取 URL 队列。分析已抓取 URL 队列中的 URL,分析其中的其他 URL,并根据语境图评估 url 与区块链应用服务的相关新,然后决定是否将该URL 放入待抓取 URL 队列,从而进入下一个循环....若此时需要 tor 路由,则爬虫会开启 tor完成后续工作。

第二步:数据原始存储

爬虫爬取到的网页后,将数据存入原始页面数据库。其中的页面数据与用户浏览器得到的 HTML 是完全一样的,此时并不做数据分析处理。

第三步:预处理

搜索引擎将爬虫抓取回来的页面,进行各种步骤的预处理。这里涉及到的技术有:提取文字、中英文分词、噪音消除(比如版权声明文字、导航条、广告...)、索引处理等等。

第四步:二次处理

和传统的 web 爬虫引擎不太一样的是,区块链爬虫引擎更像是聚焦爬虫引擎,需要处理更多元次的数据和垂直的数据,因此采用了更多的高级计算机技术:

1.应用文件处理。区块链不少服务采用的是移动互联网服务,产品依托形态为安卓应用或 ios 应用,如交易所、钱包、新媒体等等,链宝的区块链爬虫从海量的数据中心,快速抓取到应用的包地址,并对包地址的有效性进行检测,同时完成包下载、云测试安装、服务可用性检测、安全性检测、漏洞检测、配套信息抓取(appLogo、介绍文案、应用介绍图)等一系列工作,最终决定是否入库。

2.链上访问。区块链的应用服务中也有服务代码位于某条公链,采用 H5 或 web+钱包访问的 dapp 形态,因此链宝区块链爬虫引擎不仅要将 H5 和 web 进行分析存储,更需要抓取到该应用在链上的服务状态并进行解析得到相关数据,如:所在公链、合约地址、合约交易状况、日活、链上代码 scan、安全分析等。

3.平行和分片存储。链宝采用的是平行应用机制,即中心化数据库存储,又在分布式链上存储,约 20%的区块链明面服务存储在中心化数据库,约 80%的区块链暗面服务则采用分布式存储。这么做的原因是显而易见的,和 BM 创造的 steemit 理念类似,出于友好访问体验,正常情况下用户访问是中心化数据库,当中心化数据库无法访问时,自动切换到(用户亦可手动切换)分布式的服务,而开发者可自行选择存储服务,同时对于整个链宝通证经济来说,所有用户可以参与提共存储和访问服务,以此获取相关通证收益,保证整个应用网络畅通。

第五步:索引和展示

链宝区块链应用爬虫在对信息进行组织和处理后,为用户提供关键字检索服务,将用户检索相关的信息展示给用户,以区块链应用商店的形态展示给用户。同时根据 app 的相关信息如下载人数、日活、日交易量等数据来决定在应用商店中排名,当然 B 端开发者也可以通过链宝 LBC 通证经济中竞价排名体系来获取更好的排名(详见商业竞价排名)。

第六步:策略回顾和学习

由于区块链的技术更新较快,进化出更为有效的爬行策略、聚焦策略等是决定区块链应用商店成败的关键,链宝应用商店采用机器学习,饲以大量已有数据和暴力树求解的学习策略,力求策略快速进化,覆盖的区块链应用最广泛。

链宝开放平台

作为应用商店生态的一环,为开发者服务的开放平台是必不可少的一环,只有保证开发者有足够的积极性和利益动机,服务好开发者,才能够为用户创造最好的区块链应用服务,也是保证链宝应用生态持续稳定繁荣的基础。

在链宝开放平台中,开发者可以自主提交 app 或 dapp 入驻链宝,无缝支持安卓、IOS、web 入驻,通过爬虫+开放平台,链宝将能覆盖区块链 98%以上的应用服务。同时链宝为开发者提供一系列的开发者服务:

1. 强大的开发框架和工具来帮助开发者开发各种 Dapp。

链宝提供了支持以太坊、波场、EOS 等主流公链的开发框架,无需开发者重复造轮子,只需专注于自己的业务开发;链宝将提供 SDK(Software Development Kit,软件开发工具包)给开发者,在这套强大的 SDK 中,开发者可以选择自己擅长或喜欢的开发语言进行开发,这套 SDK 支持多种主流链上协议和钱包,开发者可以基于这套 SDK 开发出各种去中心化的应用上线到链宝,提供无缝访问服务。

2. App 和 dapp 的配套各种增值服务。

对于一个应用上架并面向用户提供访问服务前,应用相关的配套是必不可少,链宝为应用提供了加 V 认证服务、应用包加固服务、应用宝安全检测服务、链上代码安全审计服务、漏洞持续扫描服务、云安装兼容测试服务、模拟攻击服务、压力测试服务、IOS 企业签名服务等,帮助开发者从繁杂的事务中解脱出来,聚焦于自己的服务开发。

3. 社区自治服务。

链宝本着区块链包容、开发、自治的精神,将逐步将控制权交换给社区,开发者是最为关心的是应用商店管理策略制定,这意味着自己开发的应用是否能够上架面世,得到相关的利益回报。致力于做一个去中心化应用商店的链宝,将把社区的自治权利交还给社区,应用商店从应用上架审核、竞价排位、下架等管理策略将有社区决定。也就是说,当开发者开发完毕一个应用,是否能上架链宝将由社区投票上架,这个应用是否在链宝中某个广告位得到曝光展示,由社区竞价投票(详见商业竞价体系部分)决定,一切都由社区决定,而从通证经济的角度来看,开发者面临的是服务的竞争、社区口碑的竞争和通证贡献的竞争,B 端需要争取社区的支持,获取通证投票,为获取更好的曝光、推荐位置和社区传播口碑,需要消耗通证,刺激了通证的正向通缩反馈。

4. 流量服务

上架应用商店开发者最关心的是否能获得足够的流量和用户,首先聚合式下载或访问比单点式下载访问的优势更加明显,项目方与项目方的流量能否互相交叉,比如下了交易所的用户可能也会有下载数字钱包的诉求,下载媒体的用户也可能会有下载链游的诉求。链宝在这方面给开发者提供了足够了通道:

A 首发申请。当开发者更新了大版本后,第一时间申请首发链宝,和社区共同完成预热宣传运营活动,即可参与首发活动获得大量曝光。

B 资源合作。当开发者有能力提供一些 app 内部特权或权益给链宝用户时,可申请资源合作,实现双方互赢;

C 换量合作。开发者与链宝、开发者与开发者之间可以进行换量合作申请,接入链宝提供的 SDK 完成相应开发上线即可,持完善的换量数据自动统计、采用投放效率更高、转化效果更好的 CPA 任务模式投放。

D 流量联盟。部分 app 产品优质,用户基数大,但是商业变现能力不够的情况下,可以申请流量联盟,接入链宝提供的 SDK 完成相应开发上线即可,链宝将自动撮合广告商在项目方的 app 上呈现合适的广告,并跟踪相关数据,完成收益结算。

E 其他运营手段。如小红花、链宝社区专属权益、星期五、AirDrop 等等都将陆续作为标准模块推出。

友好的用户体验和界面

针对 C 端用户,链宝采用移动端、web 端等非常友好的用户体验入口,链宝的团队来自于腾讯应用宝、京东、蚂蚁金服等互联网 500 强公司的前高管团队,具有丰富的互联网产品开发经验,更支持从中心化互联网向去中心化区块链平行一键无缝切换,享受更多区块链应用服务,用户体验是产品的杀手锏,链宝也是靠用户体验成就了行业的头部位置。

2. 鸿蒙大数据

鸿蒙,中国神话传说的远古时代,传说在盘古昆仑山开天辟地之前,世界是一团混沌的元气,这种自然的元气叫做鸿蒙,用于表示宇宙处于混沌初期,这种状态跟现在的币圈链圈极其相似,当下币圈牛鬼横行项目真假难辨,链圈泥泞中前行。因此链宝的行情大数据分析取名鸿蒙,希望通过大数据(BigData)的力量,从混乱中,辨别魑魅魍魉,寻找希望之光。

数据源采集

数据源的数据样本是大数据分析的基础,链宝鸿蒙大数据毫秒级监控了 400+交易所的交易数据,含币安、火币、OKEX、CoinBase、B 网等,覆盖了币种信息、交易量信息、交易深度、交易所资金进出、其他异动信息等数据,同时链宝鸿蒙大数据针对约 200+家主流公链上的资产大额转账、趋势异动、大户地址进行数据采集和抓取,并和 coinmarketcap、messari、coingecko 等达成合作,建立起标准的可信数据源联盟。

数据清洗处理

大数据预处理技术主要是指完成对已接收数据的辨析、抽取、清洗、填补、平滑、合并、规格化及检查一致性等操作。因获取的数据可能具有多种结构和类型,特别是各家交易所的数据,数据表征迥异,数据抽取的主要目的是将这些复杂的数据转化为单一的或者便于处理的结构,以达到快速分析处理的目的。通常数据预处理包含 3 个部分:数据清理、数据集成和变换及数据规约。

数据存储和格式化展示

大数据存储及管理的主要目的是用存储器把采集到的数据存储起来,建立相应的数据库,并进行管理和调用。面对海量的 Web 数据,为了满足大数据的存储和管理,Google自行研发了一系列大数据技术和工具用于内部各种大数据应用,并将这些技术以论文的形式逐步公开,从而使得以 GFS、MapReduce、BigTable 为代表的一系列大数据处理技术被广泛了解并得到应用,同时还催生出以 Hadoop 为代表的一系列大数据开源工具。从功能上划分,这些工具可以分为分布式文件系统、NoSQL 数据库系统和数据仓库系统。这 3 类系统分别用来存储和管理非结构化、半结构化和结构化数据,如图所示

区块链的技术本身可以归类到上述的分布式存储技术,而相关计算则可归类到分布式计算。和区块链应用一样的处理方式,链宝鸿蒙的大数据一样的采用平行存储,既有中心化部分,也有去中心化部分。

3.毕方内容珠网

毕方是中国古代神鸟,传言传说黄帝在泰山聚集鬼神之时,乘坐着蛟龙牵引的战车,而毕方则伺候在战车旁。毕方代表的是火的意志,被称为火神的侍宠。链宝内容蛛网承载着技术前沿、行业动态、领袖意见、社区声音等全球生态内容,用于连接人、信息、生态,取名毕方,代表着区块链新经济体的星火不熄、燎原态势的顽强生命力。

蛛网聚合系统

随着比特币、以太坊、区块链技术的发展,相关产业内容也跟着得到爆炸性增长,涵盖着无数垃圾和有用的内容信息铺天盖地,链宝独立研发的蛛网聚合系统,与全球内容生产者和机构合作,同时邀请海量意见领袖入驻链宝号,从大数据分析层面实现了优质内容的产生和分发。

个性化推荐引擎

和今日头条推荐引擎类似,用户在链宝上的可公开或可授权的行为将会作为个性化推荐的依据,如用户点击文章、阅读文章时长、某类型文章跳出率、某类型文章分享率、评论、点赞、关注币种、下载应用等,同时结合地理位置、行为时间等,完成用户数据建模和训练学习,文章、快讯、舆情等推荐/推送将数据建模的数据作为推荐基础。

舆情监控系统

积攒够足够的数据样本后,链宝毕方内容蛛网可以第一时间对新捕获的样本数据进行分析,能够在第一时间得到某个项目的舆论导向,进而对明确事件或话题本身所处的阶段(一般分为引发期、酝酿期、发生期、发展期、高潮期、处理期、平息期和反馈期等不同阶段),引导项目方进行舆论公关和提前准备,更可以指导用户第一时间判断事件对币价的波动影响,避免不必要的损失,争取更多的盈利机会。

4. 公链主网

在项目早期,链宝上的所有存储和计算服务先通过中心化服务提供,在经过 6 个月的发展后,链宝已经成为用户达 50 万+的 NO.1 区块链应用商店,业务也围绕应用商店得到了丰富的拓展,因此技术团队已着手底层公链主网的开发。具体技术细节将以链宝主网技术白皮书的方式独立披露,此处仅提前披露链宝主网(LB chain)的技术概念和理念。

存储层和智能合约层

LB chain 预计采用的存储方案为基于 IPFS(InterPlanetary File System 的存储方案,IPFS 本质是一个点对点的分布式超媒体分发协议,根本上改变了查找的方式,这是它最重要的特征。IPFS 网络不用关心中心服务器的是否存在,同时也无需考虑文件的名字和存储路径,作为文件的唯一体现就是文件的 Hash 值,文件的任意一个字节内容的改变其 hash值均会改变,通过这种基于内容的地址替代基于域名的地址,用户寻找的不是某个存储地址而是内容的 hash。

IPFS 的目标是替换 HTTP 协议,并把分布式账本放置于 IPFS 之上,而这个分布式账本只是记录了网络里各个文件的哈希值,它可以用于文件加密,数据共享系统、各种类型的 CDN、永久的 Web(不存在不能访问的链接)、全球文件系统,当节点数达到一定规模,即使每个节点只存放一点点内容,所累计的空间、带宽和可靠性也远超 HTTP能提供的,随之而来,分布式 Web 会变成地球上最快、最可靠、最大的数据仓库。IPFS 的全新的技术特性足够满足链宝在应用文件、媒体文件等内容的存储需要,同时 IPFS 提供了完整的 API 供开发者调用,因此 LB chain 将采用 IPFS 作为网络存储首选解决方案,用于平台的各类文件挂载。

LB chain 的智能合约部分暂定基于 EOS (Enterprise Operation System) 的技术(目前亦正在调研 tron 的解决方案),该技术方案是 BTS 和 STEEM 的创始人 BM 提出的,为商用分布式应用设计的一款区块链操作系统,它提供开发者友好的区块链底层平台、类似与电邮系统的系统架构、跨链消息传递机制、独立的脚本语言等特性,最为关键的是 EOS 通过并行链的方式,最高预计可以达到数百万 TPS,并且并行本地链甚至可以达到毫秒级的确认速度,这与链宝的业务需求非常的吻合,由于链宝的网络特点是高峰值并发,每当一个新的下载活动或直播活动开始,意味着在几分钟甚至几秒内将涌入百万级的用户,他们的下载dapp,传播 dapp,领取糖果、裂变传播等行为是瞬时发生,此时的网络压力不言而喻,而 EOS 的智能合约可在极短时间完成百万次合约履行,同时广播全网记录下每个用户的传播结果,达成共识,用于下一轮奖励发放,此类并行计算的方式完全能满足链宝的业务要求。

QoS 服务质量驱动

QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力, 是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要 QoS,比如 Web 应用,或 E-mail 等。但是对关键应用和高并发应用就十分必要。当网络过载或拥塞时,QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。

LB chain 自行研发的 QoS。为了利益最大化,矿工在发布新 block 之前,会将收集到的每笔交易按手续费排序,优先将手续费较高的交易打包发布。这样一来,就会产生由利益驱动的 QoS,以此来支撑高并发的业务活动。

Gossip 网络协议

分布式最难解决的一个问题就是多个节点间数据同步问题,在链宝中体现为大量的下载、裂变、直播活动产生的切片文件如何广播同步、营销行为产生的共识结果如何同步,为了解决这样的问题,涌现出了各种奇思妙想采用的,LB chain 采用 Gossip 算法又被称为反熵(Anti-Entropy),熵是物理学上的一个概念,代表杂乱无章,而反熵的内含就是在杂乱无章中寻求一致:

在有一个有边界的网络中,每个节点都是随机的与其他节点通信,此时处于熵阶段,然后经过这段这段杂乱无章的通信后,所有的的节点的状态最终会趋于一致,且每个节点可能仅仅知道邻近几点,也可能知道全网的其他所有节点,这些节点可以通过网络联通,最终达到状态一致。

简单的描述下这个协议,首先要传播信息就要有种子节点。种子节点每秒都会随机向其他节点发送自己所拥有的节点列表,以及需要传播的消息。任何新加入的节点,就在这种传播方式下很快地被全网所知道。这个协议的神奇就在于它从设计开始就没想到信息一定要传递给所有的节点,但是随着时间的增长,在最终的某一时刻,全网会得到相同的信息,这种方式也与病毒、谣言传播类似,因此 Gossip 有众多的别名“闲话算法”、“疫情传播算法”、“病毒感染算法”、“谣言传播算法”。

Gossip 本质是一个带冗余的容错算法,更进一步说是一个最终一致性算法。虽然无法保证在某个时刻所有节点状态一致,但可以保证在”最终“所有节点一致,”最终“是一个现实中存在,但理论上无法证明的时间点。因为 Gossip 不要求节点知道所有其他节点,因此又具有去中心化的特点,节点之间完全对等,不需要任何的中心节点。实际上 Gossip 可以用于众多能接受“最终一致性”的领域:失败检测、路由同步、Pub/Sub、动态负载均衡。

LB chain 通过 Gossip 网络广播区块 Block 和交易 Tx,通过这种方式,全网最终能够最终在某一个时刻,得到相同的信息,在这个过程中,拥有相同信息的节点越多,P2P 分享率就越高,最终促进客户端通信,我们来看一下 LB chain 上节点的通信方式和收敛性。在 LB chain 网络中,两个节点(A、B)之间存在三种通信方式:

push: A 节点将数据(key,value,version)及对应的版本号推送给 B 节点,B 节点更新 A中比自己新的数据

pull:A 仅将数据 key,version 推送给 B,B 将本地比 A 新的数据(Key,value,version)推送给 A,A 更新本地

push/pull:与 pull 类似,只是多了一步,A 再将本地比 B 新的数据推送给 B,B 更新本地

如果把两个节点数据同步一次定义为一个周期,则在一个周期内,push 需通信 1 次,pull 需 2 次,push/pull 则需 3 次,从效果上来讲,push/pull 最好,理论上一个周期内可以使两个节点完全一致。直观上也感觉,push/pull 的收敛速度是最快的。

假设每个节点通信周期都能选择(感染)一个新节点,则算法退化为一个二分查找过程,每个周期构成一个平衡二叉树,收敛速度为 O(n2 ),对应的时间开销则为 O(logn )。这也是理论上最优的收敛速度。但在实际情况中最优收敛速度是很难达到的,假设某个节点在第i 个周期被感染的概率为 pi ,第 i+1 个周期被感染的概率为 pi+1 ,则 pull 的方式:

而 push 为:

显然 pull 的收敛速度大于 push,而每个节点在每个周期被感染的概率都是固定的p(0<p<1),因此 LB chain 是基于 p 的平方收敛,也成为概率收敛。

Kad 网络协议

分布式通信的另外一个重点是数据块分发(路由问题),LB chain 的数据块通过 Kad 网络进行数据块分发。Kad 网络是一个利用 Kademlia 协议进行连接的 P2P 网络,在 2002年由美国纽约大学的 PetarP.Manmounkov 和 DavidMazieres 提出,是一种分布式散列表(DHT)技术,以异或运算为距离度量基础,已经在 BitTorrent BitComet、Emule 等软件中得到应用。

第一代 P2P 文件分享网络,像 Napster,依赖于中央数据库来协调网络中的查询,第二代 P2P 网络,像 Gnutella,使用泛滥式查询(query flooding)来查询文件,它会搜索网络中的所有节点,第三代 p2p 网络,像 Kademlia,使用分布式散列表(DHT,DistributedHash Table)来查询网络中的文件,分布式散列表在整个网络中分散储存资源的位置,在去中心化的同时,能够快速定位期望的节点。

Kademlia 规定了网络的结构,也规定了通过节点查询进行信息交换的方式。Kademlia网络节点之间使用 UDP 进行通讯。参与通讯的所有节点形成一张虚拟网(或者叫做覆盖网)。这些节点通过一组数字(或称为节点 ID)来进行身份标识。

Kademlia 中基于两个节点之间的距离计算,该距离是两个网络节点 ID 号的异或,计算的结果最终作为整型数值返回。关键字和节点 ID 有同样的格式和长度,因此,可以使用同样的方法计算关键字和节点 ID 之间的距离。节点 ID 一般是一个大的随机数,选择该数的时候所追求的一个目标就是它的唯一性(希望在整个网络中该节点 ID 是唯一的)。

选择异或是因为通过它计算的距离享有几何距离公式的一些特征,尤其体现在以下几点:节点和它本身之间的异或距离是 0;异或距离是对称的:即从 A 到 B 的异或距离与从 B到 A 的异或距离是等同的;异或距离符合三角不等式:三个顶点 A B C,AC 异或距离小于或等于 AB 异或距离和 BC 异或距离之和。由于以上的这些属性,在实际的节点距离的度量过程中计算量将大大降低。Kademlia 搜索的每一次迭代将距目标至少更近 1 bit。在一个包含 n 个节点的系统的值的搜索中,最坏的情况下 Kademlia 仅访问 O(log(n))个节点。

数据格式定义

在 LB chain 中地址 AddrX 是一个密码学公钥,可以作为收付款的钱包地址,也作为弦ID。发布一笔交易之前,需要使用公钥地址对应的私钥对交易信息进行签名。其他客户端可以通过公钥验证签名是否合法,以确认交易是否由私钥持有人发出。一笔交易主要有以下几部分:

其中:

分别分配的金额,可以为空列表,若发送金额超过所有接收金额的总和,则超出部分为给予矿工的手续费 Fee;

3、SizeData, HashData 为数据块 Data 的大小和数据块的哈希值,SizeData 为 0 表示不带数据块。对于数据块 Data 的内容,LB chain 不对其格式作限制。

共识激励机制

LB chain 的激励部分同样是 block 奖励和手续,但是和普通的奖励要求不一样是,任何客户端都可以发送一笔包含手续费的交易和一个数据块给矿工,其中交易信息中含有数据块的 hash。为了获得手续费,矿工会将多笔交易打包成 block 广播至全网,同时与其他在P2P 网络中分享每笔交易对应的数据块 hash,使得其他客户端可以快速获取。

当其他客户端想要验证一个 block 是否合法时,不仅需要验证每笔交易金额的有效性,还需验证能否通过 ipfs 网络下载到该 block 每笔交易对应的数据块。所有数据块都从 ipfs网络中下载到以后,客户端才会确认该 block。为了使自己发布的 block 能快速获得全网的共识,矿工希望每个客户端都能快速下载到数据块,因此必然会尽力提高数据块的分发效率。

在见证人投票阶段,全网总是会投给手续费要求低、出块速度快的客户端。为了能获得更多的投票,矿工会尽可能地优化自身的网络架构,在降低自身资源消耗成本的同时,提高其分发的数据块被全网获取的速度。这样的激励机制,在一定程度上会促进分布式网络技术的发展。

一些轻量级的客户端,可能对所有 block 是否合法并不在意,它们可以选择性地下载数据块,从而减少自身流量和带宽的消耗。比如对于仅参与下载 app,传播裂变的客户端,仅需下载由特定钱包地址发出的数据块。

对于超过确认周期的 block(已经被全网确认),矿工为了节约磁盘空间,就没有动机去存储其对应的数据块 hash。然而,在某些情况下,用户还是会希望获得历史交易附带的数据块。如果他们广播一条包含所需数据块 hash 的交易给矿工们,并且带有手续费,则那些还保留对应数据块的矿工,就可以共享该数据块,并发布包含交易的 block 以获得手续费。因此,对于存储了历史数据的客户端,有可能可以获得额外的收益。

若希望自己的数据块可以持续存储在 P2P 网络中,则可以在每个确认周期结束之前,发布一个包含数据块 hash 的交易,使得矿工持续不断地共享所需数据块。因此,客户端可以将整个网络当做一个付费网盘,通过周期性地付费以维持资源的存储。

关于更多链宝:http://lianbao.info/

更多区块链项目介绍:http://www.qukuaiwang.com.cn/news/xiangmu

风险提示:区块链投资具有极大的风险,项目披露可能不完整或有欺骗。请在尝试投资前确定自己承受以上风险的能力。区块网只做项目介绍,项目真假和价值并未做任何审核!

历史上的今天:

本文地址:https://www.u5881.com/7838.html
版权声明:本站推荐的部分活动具有时效性,老淘本人并不能保证当您看到本文时,该项活动是否仍在继续。

发表评论


表情