肥老邓 / 区块链知识 / 区块链是一门跨学科、跨领域的复合型前沿...

0 0

   

区块链是一门跨学科、跨领域的复合型前沿技术,看完这篇文章你就会全面了解它了!

2018-04-23  肥老邓




一千个人心中有一千个哈姆雷特!

一千个区块链从业者心中也有一千种区块链!



这听起来有点不可思议,但真真切切地就是这样。区块链技术虽然脱胎于2009年诞生的比特币,但区块链这个概念却是在2014年才由以太坊提出,2016年开始为公众所知,2017年由于ICO热炒成为媒体热点……


但多数人对区块链究竟是什么?有什么用处?大都是是而非!投资人更愿意谈区块链的应用与愿景,而区块链技术人士则更擅长从自己的熟悉的领域去解读区块链……管中窥豹,都不足以还区块链的本来面目。


实际上,区块链是一个跨学科、跨领域的复合型前沿技术:分布式存储及代码是计算机,P2P网络是社会学,加密算法是数学,共识和治理是传播学,智能合约是管理学,Token是经济学,ico是金融学……所以区块链还真不是一个投资人或一个程序员就能解释清楚的。


下面内参君就全面的介绍一下区块链,希望能让你对区块链有个全面而系统的认识。望和有识之士共同探讨。




01


P2P协议

“我为人人,人人为我”



P2P(peer to peer):这个peer中文翻译就是对等、对等者、伙伴、对端的意思。所以P2P网络一般叫做对等网络,其确切定义:网络中每个参与节点共享节点所拥有的一部分计算能力、存储能力、网络连接能力,这些能力或者称为共享资源通过网络提供的服务和内容,可被对等节点直接访问,访问过程中不需要再经过中间实体,所以每个节点既是资源和服务的使用者、又是整个资源和服务的提供者。P2P网络中各个节点都是出于一个对等的地位,没有主、从的区分,联系实际环境,你目前在操作的一台电脑终端既可以作为服务器。又可以作为终端去获取对等节点的资源。整个网络中不存在中心节点,每个节点都可对任意对等节点做出响应,提供资源,包括计算资源、存储资源等。


其含义有三点:

1、Peer-to-peer 是一类允许一组用户互相连接并直接从用户硬盘上获取文件的网络。

2、Peer-to-peer网络是一个运行于个人电脑上的应用,通过网络在用户间分享文件。P2P网络通过连接个人电脑分享文件而不是通过中央服务器。

3、P2P是一种分布式网络,网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源需要由网络提供服务和内容,能被其它对等节点(peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)提供者(server),又是资源(服务和内容)获取者(client)。


P2P的理念:“我为人人、人人为我”让所有加入互联网的人,直接通过互联网交互,不需要一个中间商,这样沟通,共享,交互更加自由和方便,最终把互联网的权利交换给用户,而不是一些集中网络中心。


P2P的特点:P2P无中央服务器,打破了C/S模式;并且用户之间互联并分享文件。因此P2P具有非中心化(Decentralization)、可扩展:全分布系统、健壮性:耐攻击、高容错、高性价比、隐私保护、负载均衡等特点。


P2P不是一个新的技术,早在2000年该模型就已出现,他于传统的客户端/服务器(Client/Server)结构(也就是WWW所采用的结构方式)的一个本质区别是,整个网络结构中不存在中心节点(或中心服务器)。


P2P的分类:

提供文件和其他内容共享的P2P网络,如Napster、Gnutella、eDonkey、emule、BitTorrent等;

挖掘P2P对等计算能力和存储共享能力,如SETI@home、Avaki、Popular Power等;

基于P2P方式的协同处理与服务共享平台,如JXTA、Magi、Groove、.NET My Service等;

即时通讯交流,包括ICQ、QICQ、Yahoo Messenger等;

安全的P2P通讯与信息共享,如Skype、Crowds、Onion Routing等。


实际应用中这4种P2P各有优缺点:


点对点传输也就是P2P(Peer-to-Peer)网络模式,即对等网络。是一种若干平等的节点之间分配任务或工作负载的分布式应用架构。


在P2P网络环境中,彼此连接的多台计算机之间都处于平等的地位,各台计算机有相同的功能,无主从之分。一台独立的计算机(节点)既可作为服务器,又可以作为工作站,整个网络不会依赖于专用的集中服务器,也没有专用的工作站。


区块链技术正是基于这种P2P的网络环境建立(比特币就是一种P2P形式的数字货币)。



02


加密算法

区块链上的一把“锁”



现代加密算法的典型组建包括:加解密算法、加密密钥、解密密钥。其中,加解密算法自身是固定不变的,一般是公开可见的;密钥则往往每次不同,并且需要保护起来,一般来说,对同一种算法,密钥长度越长,则加密强度越大。 


加密过程中,通过加密算法和加密密钥,对明文进行加密,获得密文。 

解密过程中,通过解密算法和解密密钥,对密文进行解密,获得明文。 


根据加解密的密钥是否相同,算法可以分为对称加密(symmetric cryptography,又称公共密钥加密,common-key cryptography)和非对称加密(asymmetric cryptography,又称公钥加密,public-key cryptography)。两种模式适用于不同的需求,恰好形成互补,很多时候也可以组合使用,形成混合加密机制。 


并非所有加密算法的强度都可以从数学上进行证明。公认的高强度加密算法是在经过长时间各方面实践论证后,被大家所认可,不代表其不存在漏洞。但任何时候,自行发明加密算法都是一种不太明智的行为。


对称加密:顾名思义,加解密的密钥是相同的。 

优点是加解密效率高(速度快,空间占用小),加密强度高。 

缺点是参与多方都需要持有密钥,一旦有人泄露则安全性被破坏;另外如何在不安全通道下分发密钥也是个问题。 

对称密码从实现原理上可以分为两种:分组密码和序列密码。前者将明文切分为定长数据块作为加密单位,应用最为广泛。后者则只对一个字节进行加密,且密码不断变化,只用在一些特定领域,如数字媒介的加密等。 

对称加密包括:DES、3DES、AES、IDEA,PBE等,目前AES加密未被破解,为有效算法。


非对称加密:非对称加密是现代密码学历史上最为伟大的发明,可以很好的解决对称加密需要的提前分发密钥问题。 

顾名思义,加密密钥和解密密钥是不同的,分别称为公钥和私钥。 

公钥一般是公开的,人人可获取的,私钥一般是个人自己持有,不能被他人获取。 

优点是公私钥分开,不安全通道也可以使用。 

缺点是加解密速度慢,一般比对称加解密算法慢2到3个数量级;同时加密强度相比对称加密要差。 

非对称加密算法的安全性往往需要基于数学问题来保障,目前主要有基于大数质因子分解、离散对数、椭圆曲线等几种思路。 

非对称加密包括:RSA、ElGamal、椭圆曲线(Elliptic Curve Crytosystems,ECC)、DH算法等。


混合机密机制:既先用计算复杂度高的非对称机密协商一个临时的加密密钥(会话密钥,一般相对内容来说要短得多),然后双方再通过对称加密对传递的大量数据进行加解密处理。 

典型的场景是现在大家常用的HTTPS机制。 


数字签名:RSA,DSA,ECDSA等。DAS和ECDSA源自离散对数问题。RSA应用最广泛,ECDSA更安全。


数字证书:数字证书最常用非对称算法是RSA算法,签名算法SHA1withRSA,消息摘要SHA1 

X509标准。PKCS(Public-Key Cryptography Standards)由RSA指定的一系列标准。


国密系列:国产密码算法(国密算法)是指国家密码局认定的国产商用密码算法,在金融领域目前主要使用公开的SM2、SM3、SM4三类算法,分别是非对称算法、哈希算法和对称算法。


加密算法就相当于区块链上的一把“锁”。比如,我们会在互联网上留下很多秘密,聊天记录、微信密码等等,这些“秘密”我们并不想让别人知道。但实际上,互联网其实没有秘密。


因为我们要联网,手机连接wifi,wifi是通过路由器,路由器连接外网,而外网也分布着各种的路由设备,我们这些秘密随时都可以被监听到。


加密算法就是相当于给我们想要保密的内容加上一把“锁”,任何想要看到加密内容的人,都需要一把对应的“钥匙”(秘钥)才能打开查看。



03


分布式存储

实现去中心化



分布式数据存储:可以简单理解为,将数据分散存储在多台独立的设备之上。


传统的网络存储系统采用的是集中的存储服务器来存放所有数据,这样一来,集中的存储服务器就成了提升系统性能的瓶颈,不能满足大规模存储应用的需要。而分布式的数据存储是一个去中心化的数据库,数据并不是保存在某一个服务器上,而是在每台独立的设备上都保存了一份。


这就像一个公共帐本,所有人都能查看,但没人能私自修改以往数据,因为它不可能修改分散在其他人机器上的数据库。


实际上这个分布式账本处理由三个部分组成:分布式存储、分布式记账及分布式执行。


分布式存储是把数据库复制成多份保证冗余性,然后分成很多个小部分,分散存储到网络的众多节点上,这样只要有足够多的节点运作正常,数据就是安全的,很好地解决了上面三个问题。冗余系数、分割的份数、是否加密存储以及由哪些节点还是全部节点负责存储,由具体的应用决定。


分布式记账。传统的中心化系统由管理者负责数据的记录,一方面有道德风险,另一方面可能出现各种错误。区块链则把这些任务交给众多节点一起完成,例如比特币里,所有的矿工都会验证交易的合法性,合法的交易会被记录到所有的账本中,最大限度地避免了上面的问题。


对于什么样的节点有资格参与记账,有多种不同的情况。以比特币为代表的公有链,任何节点都有机会担任矿工;由数家金融机构组成的联盟链,只有这些机构的预先选定的节点才有机会;有某公司或机构发起的私有链,当然就只有本机构有权写入。


最后,是分布式执行。一个任务可能要由数个智能合约,一个合约可能要由数个节点来进行。


随着存储技术的发展,存储设备的成本越来越小,中心化云服务的成本主要来自于员工工资、法律成本、数据中心租金等,这些固定成本是不变的或逐渐增加,使中心化云服务的价格较高。


而去中心化存储成本只有中心化存储的1/100-1/10,如果去中心化存储系统是完全自动化的,云存储价格最终会降到接近0,中心化云服务的规模优势将败给了去中心化云服务。


分布式存储也是存储技术发展未来一个主要方向。


总之,分布式数据存储能提高系统的可靠性、可用性和存取效率,而且易于拓展,在区块链领域应用非常广泛。



04


共识机制

建立区块链世界的诚信



在解释什么是区块链时,可以用一句简洁明了的去中心化分布式分类账来概括,但是在这个账本中,是如何对在几乎相同时间内的产生的事物前后排序的,就涉及到区块链网络的共识机制。


如果说共识是区块链的基础,那共识机制就是区块链的灵魂。在区块链里,“共识”的意思就是所有的参与者(节点)就某一状态达成了共同认识。共识机制就像一个国家的法律,维系着区块链世界的正常运转。


为什么区块链需要存在“共识”?在传统的中心化社会里,之所以不存在共识,是因为信任是依靠某些中心机构建立的。比如:银行、支付宝等等。从某种意义上来讲,银行、支付宝这些机构处于权力的领导地位,并不需要每一个独立的个体(节点)达成共识。


但是,区块链是去中心化的,没有某一个人,或某一个机构处于权力领导地位,也没有谁能一个人说了算。任何决策和改变都要所有参与者一起使用某种机制来来达成相同的认识,这就是区块链的共识。


而如何在所有节点之间达成共同认识的方法或机制,就是“共识机制”。


区块链解决了在不可信信道上传输可信信息、价值转移的问题,而共识机制解决了区块链如何在分布式场景下达成一致性的问题。所以我认为区块链的伟大之处就是它的共识机制在去中心化的思想上解决了节点间互相信任的问题。区块链能在众多节点达到一种较为平衡的状态也是因为共识机制。尽管密码学占据了区块链的半壁江山,但是共识机制是保障区块链系统不断运行下去的关键。


目前常用的几种共识机制

1、工作量证明机制(Proof of Work - PoW)是我们最熟知的一种共识机制。就如字面的解释,PoW就是工作越多,收益越大。这里的工作就是猜数字,谁能最快的猜出这个唯一的数字,谁就能做信息公示人。

2、权益证明机制(Proof of Stake-PoS)也属于一种共识证明,它类似股权凭证和投票系统,因此也叫“股权证明算法”。由持有最多(token)的人来公示最终信息。

3、拜占庭共识算法(Practical Byzantine Fault Tolerance- PBFT)也是一种常见的共识证明。它与之前两种都不相同,PBFT以计算为基础,也没有代币奖励。由链上所有人参与投票,少于(N-1)/3个节点反对时就获得公示信息的权利。


区块链作为一种按时间顺序存储数据的数据结构,可支持不同的共识机制。共识机制是区块链技术的重要组件。区块链共识机制的目标是使所有的诚实节点保存一致的区块链视图,同时满足两个性质:

1)一致性。所有诚实节点保存的区块链的前缀部分完全相同。

2)有效性。由某诚实节点发布的信息终将被其他所有诚实节点记录在自己的区块链中。


目前,各种共识机制都不够完美,各方有识之士正努力尝试开发出应用性更强的共识机制。



05


智能合约

一切代码说了算



智能合约被称为“区块链2.0”的一个代表性产物,但它的理念实际上很早就被提出来了。


智能合约的理念可以追溯到1994年,几乎与互联网(world wide web)同时出现。因为比特币打下基础而受到广泛赞誉的密码学家尼克萨博(Nick Szabo)首次提出了“智能合约”这一术语。从本质上讲,这些自动合约的工作原理类似于其它计算机程序的if-then语句。智能合约只是以这种方式与真实世界的资产进行交互。当一个预先编好的条件被触发时,智能合约执行相应的合同条款。


在那个时候,萨博的关于智能合约如何工作的理论还没有实现,因为没有天生的能够支持可编程交易的数字金融系统,这是一种极具前瞻性的理念。而比特币的出现和广泛使用,正在改变阻碍智能合约实现的现状,从而萨博的理念有了重生的机会。


智能合约是一种可以自动化执行的简单交易。让交易过程变成是高效,透明的执行过程,不需要公正等第三方介入。也就是说,有了智能合约以后,打赌就不能赖账啦。


智能合约概念可以概括为: 一段代码(智能合约),被部署在分享的、复制的账本上,它可以维持自己的状态,控制自己的资产和对接收到的外界信息或者资产进行回应。或者可以这样简单的概括:它是运行在可复制、共享的账本上的计算机程序,可以处理信息,接收、储存和发送价值。


智能合约程序不仅仅只是一个可以自动执行的计算机程序,它更像是一个系统的参与者,可以把它想象成一个绝对可信的人,他负责临时保管你的资产,并且严格按照事先商定好的规则执行操作。


目前,智能合约系统主要有两个,一个是我们比较熟悉的以太坊(Ethereum),另一个是Symbiont。


以太坊是一个开源的区块链底层系统,就像安卓一样,提供了非常丰富的API和接口,让许多人在上面能够快速开发出各种区块链应用。目前已经有超过200多个应用在以太坊上开发。


Symbiont起源于Counterparty(合约币)项目,旨在建立第一个用于发行区块链智能证券和交易智能证券的平台。Symbiont并不赞同以太坊的智能合约系统,因此正在建立一个匿名的、拥有更加安全代码库的智能合约系统,这个系统不需要打破并重建金融网络体系,能够最大限度地保证电子货币的流通性。目前,数字安全巨头金雅拓与Symbiont达成合作协议,让金融机构更安全地在以区块链为基础的平台上执行交易和智能合约。


在区块链社会里,大家共同维护一个区块链账本,所有交易数据无法篡改、不可伪造,还能减少人工对账的出错概率和人力成本;随着智能合约普及,我们也会变得更加佛系。面对潜在的纠纷,无需自己出马,一切代码说了算。


当然,智能合约也是有缺陷的,因为有许多问题智能合约还是无法解决的。比如:智能合约在线上交易时涉及到了法币的交易。智能合约对于线下(日常生活)当中的帮助目前是不大的。智能合约的编写者必须非常严谨,如果出现漏洞,容易被黑客利用,就很惨了,比如著名的DAO事件,导致用户丢失了大量的以太币。



06


Token

区块链的价值载体



在目前的互联网或者区块链技术中,经常听到有人将 token 翻译成代币、令牌或者通证。。。 那你有没有认真思考过,token 到底是什么,有什么作用?


Token是一种数字化的价值载体,是权益证明。如Q币,在中心化的系统中也可以发行,不是区块链所特有。


区块链最重要的应用就是价值在互联网上直接流通。通过实体或虚拟资产的token化,将资产上链,实现资产的液化,能直接通过网络来跨国界、短时差、低成本进行资产交易与转移。资产液化能将资产进行分割,在链上进行全世界的流通,能打破地域局限。而平台通过token化,一方面可以进行平台融资,为平台的启动和发展募集资金;另一方面,在链上产生用于资产交易的价值中介,实现链上资产P2P自由交易和流通,打破了货币兑换的限制。


从技术上说,区块链和token是可以完全分开。但token结合上区块链,就能通过加密算法和分布式账本来确定真伪,以及资产的唯一性,并通过共识算法进行流通。


区块链做为下一代互联网,作为价值网络,没有token是不可想象的。而没有区块链技术作为防伪和流通的token,也是有重大缺陷的。


在区块链网络中,国内区块链最早的倡导者之一元道先生把 Token 翻译成「通证」,即代表一种“可流通的数字权益证明”。他认为通证有三个要素,缺一不可。


第一是数字权益证明,也就是说通证必须是以数字形式存在的权益凭证,它必须代表的是一种权利,一种固有和内在的价值。


第二是加密,也就是说通证的真实性、防篡改性、保护隐私等能力,由密码学予以保障。每一个通证,就是由密码学保护的一份权利。这种保护,比任何法律、权威和枪炮提供的保护都更坚固、更可靠。


第三是可流通,也就是说通证必须能够在一个网络中流动,从而随时随地可以验证。其中一部分通证是可以交易、兑换的。事实上,通证可以代表一切权益证明,从身份证到学历文凭,从货币到票据,从钥匙、门票到积分、卡券,从股票到债券,人类社会全部权益证明,都可以用通证来代表。


在区块链1.0时代,也就是以比特币为代表的时代。链上没有其它资产,比特币作为一家世界银行,没有其它链上资产,只是做一件事,就发行货币并进行记账。比特币通过挖矿来发行token并维持安全运转,但本身并不是交易平台,不能直接链上交易。是通过链下交易,链上支付。


在区块链2.0时代,也就是以以太坊为代表的公有链时代。通过构建公有链,完成区块链的全球基础设施的建设,通过挖矿来发行token并实现公有链的正常运转。在公有链上可以编写智能合约,完成交易平台的构建。


区块链3.0时代,也就是现在智能合约时代,或者说Dapp时代,所形成的各种交易平台的模型,各种token也就对应着各种链上交易的资产。


综上所述,token是价值承载和流通的必需,能区块链的正常运转和价值流通,是公有区块链的血液。



07


ICO

已被各种骗局玩坏了




ICO(Initial Coin Offerings)是一种投资加密货币项目的方式,十分受欢迎。通常,一些全新的加密货币项目会通过ICO售卖部分平台代币,而这些代币的早期持有者和爱好者有朝一日可以将代币换成钱。ICOs是加密货币项目创始人为平台运作募集资金的最好方式,大部分ICO都以比特币或其竞争币的形式募资。


ICO的发起时间通常在项目完成之前,募集的资金用于创始团队的开发工作,帮助项目顺利发布。对于某些大型项目来说,部分在ICO获得的资金会由基金会接管,支持项目的不断发展。ICO代表了加密货币代币的初始分配模式,在PoS共识算法中比较常见。


ICO参与者有助于项目的成功。他们可以帮忙进行宣传,组建更大的社区,让更多的人认识这个新项目。他们在进行代币交易的同时,还能为代币提供早期的流动性。当然了,ICO参与者是受潜在利益驱动的,他们期望项目发布之后,代币价格会高于ICO期间的价格。


ICO和首次公开募股(IPO)相比,两者确实有部分共同点。两者都是通过售卖股本来募集资金的,双方的投资者也都是受潜在利益驱使,权衡项目的潜力和风险。


ICO的本质更像一个“主体是股权众筹”+“信息共享机制”,其目的是:参与者人人受益。 这个目的本身没有错。但ICO处于募捐和投资之间。由于该行业不断出现骗局,已经把ICO的概念玩坏了。


目前,各国对ICO的态度是严格监管。


文 | 内参君


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。如发现有害或侵权内容,请点击这里 或 拨打24小时举报电话:4000070609 与我们联系。

    猜你喜欢

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多
    喜欢该文的人也喜欢 更多