十年前,中本聪发表了一篇论文,此后有了比特币,也就是说先有比特币后有区快链,要想了解区快链,我们需要先了解比特币和这位非常重要的人物-中本聪。在大家看来,中本聪首先是一个计算机专家,其次是一位资深的密码学专家,我认为他还有一个身份,就是货币银行学家,世界排名应该还很靠前。如果不是的话,他没办法创建这样一套完善的,没有货币乘数的代币系统。了解了中本聪后,我们还需要知道比特币要解决通货膨胀的问题、从而限定了比特币的发行规模,同时它带来一种新的技术力量——去中心化。中心化的货币当局是按捺不住反复开启印刷机的冲动的,这是人性。
区快链技术将如何更好地保护公众网络身份,个人ID不会被那些需要验证的机构或组织泄露
区快链技术将如何更好地保护公众网络身份,个人ID不会被那些需要验证的机构或组织泄露现如今,人们越来越重视自己的身份信息。但令人担忧的是,我们的个人数据正在被一些第三方应用或机构所滥用。正是在这样的背景下,区快链技术出现了,其最核心的应用之一就是保护我们的网络身份以及数据安全。区快链技术保护个人数据...区快链技术从去年开始通过公链技术大行其道,开始是通过发币和炒币带动的。今年可以说是私链或者说联盟链的爆发年,基本上各个大厂都推出了自己的链的产品,比如IBM、Oracle、华为、阿里、腾讯等,他们已经将舞台搭好了,我们如果没有赶上发币的浪潮,就更应该思考区快链技术能为我们当下的业务系统带来什么新鲜的东西。作为一个尚未成功的创业者,我相信只要保持创业的心态,考虑清楚现有的技术储备,结合业务场景,就能将新的技术落地,助力业务发展。
第一、区快链技术梗概
区快链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本。区快链技术大致包括四个方面:加密技术、分布式存储、共识机制和智能合约。其中智能合约是以太坊实现的,本身不是一个新鲜的东西,以太坊给它注入了新鲜的血液,而以太坊之所以被称为区快链2.0,也正是因为智能合约。
1、加密技术;加密技术和安全相关,是一个老话题,也是一个重要的话题。现在的加密技术已经比较成熟,特别是对于开发方面,就不再赘述,主要讲讲安全相关的内容。安全往往和私密结合,换句话说,我的东西放在哪里,不仅是没人偷走,还得没人知道。区快链的加密技术要保证信息隐藏,每一个节点都是匿名存在的。
2、分布式存储;分布式存储和加密技术的匿名和安全看似是相抵触的,我把自己的东西存在别人那里靠不靠谱?区快链中的分布式存储有一个非常重要的技术特征,它能把数据离散化,分别存储在不同的地方,同时还能保证加密。区快链这种独特的存储结构,也是和我们业务结合最近的一点。
3、共识机制;共识机制,是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;对一笔交易,如果利益不相干的若干个节点能够达成共识,我们就可以认为全网对此也能够达成共识。
说到共识机制,如果大家经常逛论坛的话会发现,做公链和做私链的人往往互不认可:做公链的人会说私链/联盟链是区快链吗?怎么发币?做私链的人会说做公链不就是发币吗?要不就是交易所,有价值吗?
实际上公链和私链/联盟链在共识机制上有很大的差异,公链大部分使用的是POW/POS的共识机制,而私链/联盟链往往使用的是拜占庭或流言算法这一类的共识机制。对于做技术开发的人而言,每一种共识机制都没有好坏之分,只有看适合什么样的业务场景、怎么适用于业务场景。
考量一个共识机制有两个指标需要注意:效率和响应速度。就是说我需要多少资源才能达成这样一个体系、多少资源才能实现业务需要的响应速度。如果这两点达不到的话,劝你还是先放弃吧,区快链可能不适合你的业务场景。
4、智能合约
智能合约是在以太坊上实现的,智能合约,旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易。它有一个非常重要的特点:交易可追踪不可逆转。这个特点非常重要,在很多业务场景中都会用到。
当然现在除了以太坊可以通过智能合约进行开发以外,还有一些平台也可以,我们如果要在业务场景加上智能合约的话,就面临一个平台技术的选择,在选择技术平台的同时还要考虑开发的难易程度。如果要选一个平台的话,建议先考量其共识机制是否符合业务场景。
第二、寻找业务痛点;寻找业务痛点应该是一个比较简单的话题了,就是产品经理天天在提的,或者领导天天批评的,或者用户天天投诉的那些。归结起来有两点最重要的:现有系统的局限性和技术团队的能力。
1、现有系统的局限性;比如我们现在正在用一个中心化的系统,很高效,大家也用得很熟悉了,现在要把它去中心化,首先要考虑的不是技术上可不可行,而是老大批不批准、同事接不接受。 而且中心化的技术方案很难转型或迁移到去中心化的技术方案。因为我以前是做彩票系统的,在这里以彩票发行系统所遇到的技术瓶颈举例。
彩票发行系统有一个非常典型的特点,就是中心化,换句话说,它一定要有一个发行中心,而且这个发行中心必须是行政授权的,必须彩票的发行以他为主。肯定有人有疑问:这样的话彩票会不会作假?作为曾经的内部人士,可以告诉大家,整个彩票系统的发行机构就是为了保证彩票发行的公平公正,而且作假的成本实在是太高了也没有必要。
那么如果要防止作假保证彩票发行的公平公正,应该怎么办呢?在回答这个问题的时候我们需要引出另一个例子,交易的管理系统。
把彩票经验引申到交通领域,司机的用户行为和彩民的用户行为有相通之处,可以把交通系统里的路权比作一个交易,可以选择,当然路权的交易都是自发产生的,靠司机自觉遵守红绿灯规范。如果假设司机不自觉呢?怎么避免这样的现象?我的理解是必须要把整个管理系统去中心化,将每个管理单元分散下来,让管理者离被管理者更近,才能让车辆高效的接收交通管理系统的指挥和行车建议。
现在的交通管理系统都是中心化的,我认为中心化是去中心化的基础,中心化带来的便利是可以把数据汇总出来,形成一个概况给决策者和开发者,可以鸟瞰整个系统。而去中心化则是每一个接点和单元都作为一个主体,发出自己的声音,整体的声音可以主导路权的分配,换句话说,每个人能知道未来会发生什么,也有权利知道未来会发生什么。
将交通管理系统比作一个交易管理系统的话,实际上就类似于一个投票系统,这种机制是可以广泛存在的。多方做决策,多方出数据,形成一个现行方案。反观彩票的业务,发行方和监管方的数据和资金分离是业务痛点。
第二、技术团队的能力;既然找到了业务痛点,为什么还是束手无策呢?还有一个痛点是技术团队的能力问题,这里说的能力主要是强调软件开发能力,是否达到CMMI 3级的技术水平,当然这个和区快链开发并不直接相关,但是具备这样水平的技术团队,转型区快链开发会大大降低难度。
区快链技术落地的成功机率,技术团队的能力占90%以上。也就是说技术团队的需求管理能力、开发能力、测试能力、运维能力,都对区快链技术落地有极大的帮助。
需要强调的是:我认为如果你发现业务痛点能够在原有体系上解决的话,务必在原有系统上解决,不是必须使用区快链技术。一切以满足业务需要为主,不要盲目跟风所谓的新技术。如果你希望发展区快链,可以将其作为一个技术储备,不一定非要将它产品化、业务化。
第三、技术落地的方法;如果发现我们的业务场景适合用前面所说的四个技术中的两个或者三个的话,可以将区快链技术运用到业务系统中,形成技术方案、产品方案。那么,该如何实现区快链技术的落地呢?
1、宁少勿多-奥卡姆剃刀;仅利用区快链的某些技术特性
如果我们的业务系统只能用到区快链技术的其中一部分的话,就不要多用。比如只用了加密技术,只用了分布式存储的技术等。我们可以在这个技术上深度挖掘将其发挥到极致,而其他的不适合我们业务的技术就放弃不用。还是那句话,一切以满足业务需求为主,要兼顾效率和成本。力争不增加系统复杂性,以免增加开发和运维的成本。开发和运维的同学都很辛苦,就别虐待他们了。当然我向来认为测试的同学是开发团队的重要组成部分。
2、分而治之;一次解决一个业务痛点。贪多嚼不烂,是做技术的大忌。拿住一个点,深度挖掘,往往有意想不到的收获。
充分发掘原有技术体系的潜力。去中心化是为了解决中心化没有办法解决的场景,或者解决效率很差的场景。数据处理去中心化是为了更高效的处理数据,因为去中心化的处理,可以离数据产生的场景更近,离数据存储的场景更近。