欢迎各位的到来,匿名科技专业开发区块链项目,为您定制专业的区块链解决方案!
当前位置: > 技术文档 > 正文

区块链系统开发技术有些?

2019-01-11 13:18:01 技术文档

现下最火的系统开发莫过于区块链系统开发,那么如果想要开发一个区块链系统需要用到的核心技术有哪些呢?下面我们就来一一了解一下。
 

区块与链

宏观上来讲,区块是一种记录着交易信息的数据结构,它可以反映一笔交易资金的具体流向。在区块链系统中,达成交易的区块会被连接在一起形成一条链,所有参与的节点都记录了这条链或这条链的一部分。每一个区块都是由两部分组成,区块头和区块体。区块头记录了当前的版本号、前一区块地址、时间戳、当前区块链的目标哈希值、Merkle数的根值等信息。而区块体只负责记录前一段时间内的所有交易信息,主要是交易量和交易详情。从去区块的组成结构来看,区块链的大部分功能都是由区块头实现。下面为大家讲解为什么是区块头。

哈希函数

哈希函数可以将任意长度的字符串经过Hash算法转化成一组固定长度的的字符串,我们可以把它理解为一种映射转换机制,只要产生交易信息就被这个映射机制转换为哈希值。这些哈希值都有共同点,当交易信息一致时,哈希值也是一样的 。若信息有一定的相似度,哈希值也不会被影响,哈希值得字符串不会改变。常用的哈希算法包括MD5、SHA-1、SHA-256、SHA-384及SHA-512等。以SHA256算法为例,将任何一串数据输入到SHA256将得到一个256位的Hash值(散列值)。如上所说,输入数据只要稍有变化(比如一个1变成了0)则将得到一个完全不同的结果,且结果无法事先预知。正向计算(由数据计算其对应的Hash值)十分容易。逆向计算(破解)极其困难,现如今的科技水平还无法做到。

Merkle 可信树

该技术解决了多重一次签名的认证问题,现如今已经被广泛应用到了信息安全的各个领域。Merkle 可信树是一种哈希二叉树(数据结构),使用它可以快速验证大规模数据的完整性。在区块链系统中,Merkle 可信树被用来归纳一个区块的所有交易信息,最终生成这个区块所有交易信息的一个同意的哈希值,区块中的任一交易信息改变都会使Merkle 可信树改变。

现在大家应该知道为啥区块头是区块的主要功能部分,因为它同时包含了上面的两种技术所产生的值,即哈希值与根值。

非对称加密算法

该算法是一种使用成对密钥的保密方法,需要两个密钥:公钥和私钥。公钥和私钥是成对出现的,如果用公钥对数据信息进行加密,那么只能用与之对应的私钥才能解密,如果用私钥对数据进行数字签名,那么只能用对应的公钥才能验证签名。这里的私钥可以对应多把公钥,即一对多。但是公钥却不能对应多把私钥,即多对一。因为在加密和解密的过程中使用的是两个不同的密钥,所以这种加密算法是非对称加密算法。

共识机制

所谓共识,就是所有的节点都达成一致的意识。认定某个交易记录具有有效性,这是验证信息的一种方式,也是防止信息被篡改的一种手段。目前的共识机制有四大类,即:PoW、PoS和分布式一致性算法。

PoW工作量证明(Proofof Work):PoW机制,该机制目前被用于比特币挖矿,矿工把网络中还没有被记录的交易信息打包到一个区块,然后寻找一个随机数,使得新区块加上随机数的哈希值满足一定的难度条件。这个随机数就相当于确认了一个新区块的产生,也就相当于获得了本轮区块链的记账权。矿工再把这个新区块广播出去,通过全网其他节点的验证,将该区块连接到各自的区块链上,从而在全网形成对当前网络状态的共识。

PoS权益证明(Proofof Stake):PoS机制,该机制要求节点拥有一定数量的代币来证明有获取竞争区块链记账权资格的一种分布式共识机制。该机制为了不单纯依靠代币余额来决定被选为记账者的几率,导致记账权中心化,不同的PoS机制在权益证明的基础上,采用不同 方式来增加记账权的随机性。例如在点点币(Peer Coin)PoS机制中,拥有链龄长的比特币越多,获得记账权的几率就越大。未来以太坊也将从目前的PoW机制转化为PoS机制。

分布式一致性算法:

目前分布式一致性算法分为两种,一种是解决拜占庭将军问题的拜占庭容错算法,例如PBFT,一种是解决非拜占庭问题的分布式一致性算法,例如Pasox、Raft。

现只做拜占庭容错法说明。

拜占庭将军问题是指假设拜占庭帝国的9位将军带领军队包围了古罗马,为了成功占领古罗马城,将军们面临两个选择,一是全体进攻,一是全体撤退,如有任何将军违背了共识决定,就会导致全军覆没。每天进行一次投票决定是进攻还是撤退,若某一决定的赞成率超过50%,便达成共识,少数服从多数。该类算法目前仅适用于私有链和联盟链。

发行和激励机制

所有的数字货币的发行量都是有限的,以比特币为例,比特币的总量为2100万个,系统奖励有记账权的矿工,该奖励约每四年减半。依次减半类推,到公元2140年左右,所有的比特币被奖励出去。

奖励机制的另一来源是交易费,新建区块没有系统给予奖励时,矿工将会收取交易手续费。如果某笔交易的 输出值小于输入值,那么差额就是交易费,该机制一但被应用,之前的比特币奖励机制就可以转换为完全依靠交易费,新的货币就不用再发行了。

智能合约

智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。它只是用来进行交易的一组情景应对型规则和逻辑,利用智能合约我们可以在没有第三者参与,通俗的来说就是没有中介的情况下进行交易,这就降低了我们的交易成本。经P2P网络传播和节点验证后记入区块链的特定区块中。智能合约包括了预定义的若干状态及转换规则、触发合约执行的情景、特定情景下的应对行动等。区块链可实时监控智能合约的状态,并通过核查外部数据源、确认满足特定触发条件后激活并执行合约。


以上是本文所有内容,版权归个人所有。