比特币:区块链开发工程师必修课:比特币与其区块链原理的基本介绍

如果你打算使用比特币或Liquid开发软件,有几个概念你需要熟悉。本文以开发人员为目标,基于我过往在实现区块链钱包开发项目经验所做的一次演示。

**免责声明:这是一个介绍,并没有涵盖所有内容,因此我故意简化了一些解释。

什么是比特币,比特币其实是基于分布式账本技术:区块新看点:什么是分布式账本技术?

简单来说

比特币以后台进程守护程序的形式出现。主要由以下组件组成:

区块链:交易的分布式分类账

共识协议:一种具有PoW共识的对等网络

钱包:管理资金的工具

脚本:一种用于说明事务行为的编程语言

API:与比特币节点交互的RPC接口

我们将讨论这些概念,我将在这些主题的基础上添加一些其他重要的概念。

区块链

本质上,比特币区块链是一个链接列表,其中一个节点有一个到其父节点的链接。

观点:区块链技术可以为马来西亚棕榈油行业提供巨大价值:棕榈油行业的参与者应该保持开放的心态,探索区块链技术,该技术能够为马来西亚的棕榈油生产提供巨大价值,并使马来西亚的棕榈油生产具有可持续性和可信度。

Lardi & Partner Consulting GmbH执行合伙人Kamales Lardi表示,区块链技术在马来西亚棕榈油行业的应用不仅为供应链提供了前所未有的信任度,而且有助于保护工人的工作条件和合法就业,并为种植园提供了丰富的作物收获数据。(Malaymail)[2020/11/2 11:27:28]

比特币区块结构

节点也包含以下信息:

一个Merkle树索引并包含事务;

一个时间戳,用于说明区块被添加到区块链的时间;

在采矿过程中被操纵的暂时状态。

比特币区块中还有更多信息,但这些是最基本的。

UTXOs

在研究共识协议之前,我认为理解比特币中使用的交易模型和UTXO的概念很重要。

交易示例

在一次传输中,输入的和总是等于输出的和,如上面的例子所示。

中国人民大学卞永祖:在实现数据互联时要运用区块链等技术 重点保障数据安全:金色财经消息,中国人民大学重阳金融研究院产业部副主任卞永祖表示,未来数据的安全性将更加受重视,尤其是资本市场中的数据,不仅涉及到大量的交易数据,也涉及到大量个人隐私数据。在实现数据互联的同时,要运用区块链等技术,重点保障数据安全。同时,两个平台的数据互联还会涉及到相关部门之间的沟通协调机制,只有建立了相应的机制和人员体系,才能保证合作紧密和系统的顺利运转。(证券时报)[2020/3/16]

UTXO代表未使用的交易输出。这是你可以花费的实际资金,被视为投入。

在本例中,Alice将0.5BTC发送给Bob,并将其余的发送回她。为了最大限度地保护隐私,输入的其他所有者通常会被发送回另一个不同于原始UTXO的地址,称为“更改地址”。

您可以使用多个UTXO作为输入为交易提供资金。

共识协议

共识协议旨在确保比特币资金的安全,并验证真相的来源。

为了做到这一点,比特币节点是对等网络的一部分,在区块链中添加块的权利以某种方式是随机的。

达成共识的两个步骤是:

向网络发送交易信号时

广播交易的比特币节点的直接对等方将评估交易,如果交易有效,则将其添加到其mempool中,并继续传播信息。

动态 | 云南省已于5月底印发实施区块链产业发展规划:据昆明日报报道,云南省发展改革委综合处处长、新闻发言人郭金华介绍,云南正强化规划引领,编制了《云南省数字经济发展规划》和《云南省区块链产业发展规划》,并于5月底正式印发实施。其中,区块链产业发展规划从数据、算力、算法与应用4个方面,构筑区块链创新应用生态。[2019/6/28]

向网络提交新块时

提交区块的比特币节点的直接对等方将评估区块,如果区块有效,则将其附加到其区块链中,并将其广播给其他对等方。

mempool

mempool是一个固定大小的缓冲区,用于记录挂起的事务。每个比特币节点都有自己的mempool实例,通过对等网络进行同步。

请注意,如果mempool已满,费用最低的交易将开始取消。

因为它是一个有限大小的缓冲区,所以您与其他进行交易的人竞争。因此,交易包括费用。你可以调整这个费用,以增加你在一个区块内快速被记录的机会。你支付的费用越高,矿商就必须在你的交易中包含越多的利息,以使他们的收益最大化。

采矿和工作证明

为了获得向区块链添加块的权利,比特币节点使用工作证明的概念。

在比特币网络上,每个节点上都有一个被称为难度的变量。该变量对应于挖掘难度。为了获得附加块的权利,我们的目标是在比特币守护进程提供的块模板中尝试不同的nonce,直到哈希值低于根据难度推断的特定目标哈希值。

动态 | 金融壹账通发布ALFA智慧合约云平台,合约全部在区块链上存储:据证券日报报道,6月19日,平安集团旗下金融壹账通在深圳发布ALFA智慧合约云平台,旨在实现端到端线上化的合约智能化管理,满足金融机构对合约全周期、全流程的智能管理需求。?据介绍,ALFA智慧合约云平台基于银行、基金、证券、信托、租赁、期货、保险7大金融行业合约库,形成1000多份标准合约模版,这些合约全部在区块链上存储。[2019/6/22]

通过查看块的散列可以看到它,例如:

在区块2,难度为1,区块散列:000000006A625F06636B8BB6AC7B960A8D03705D1ACE08B1A19DA3FDCC99DDBD,

在718023块,难度为24371874614345,块哈希为000000000000024D244993522537474AF74E93C4C50553C1EC747375953。

难度越高,找到块的机会越小,目标数就越小,因此前导零的数量就越多。

在第一个街区,难度是1。每2016个街区,难度会上下调整,以确保我们平均每10分钟获得一次街区。因为这种尝试nonce和散列的操作实际上是可预测的。

网络分裂

最后一个有趣的注意事项是网络对网络分裂的反应。想象一下,一个恶意的国家在其边境切断互联网。还阻止了所有比特币矿商。一开始,难度太高,他们无法每10分钟找到一个街区,甚至根本找不到任何街区。然后,网络会将难度调整到一个与过去两周的哈希率相匹配的低值。

全球中小企业联盟中国区副主席陈军:区块链为制造业创新带来非凡意义:金色财经现场报道,今天的2018世界制造业大会区块链技术与产业融合应用论坛上,全球中小企业联盟中国区副主席陈军表示,区块链为制造业创新带来非凡意义,制造业智能化是数字化变革,区块链为制造业提供可信、共享、安全底层基础。区块链能够解决制造业供应链中缺乏追溯能力的问题,区块链能够帮助制造业解决售后情况,降低仓库管理成本。[2018/5/26]

那一刻,也许困难又回到了1。如果他们重新启动所有比特币矿工,那么他们不仅会每10分钟验证一次区块,还可能每秒钟或更短时间验证一次区块。很快,他们的国内比特币区块链将超过世界其他地区的区块链高度。如果他们开放互联网边界会发生什么?好吧,他们抹去区块链的所有努力都将被粉碎。

因为比特币会同意,一条真正的区块链是最长、工作最多的链。因此,提前准备了X个区块但减少了Y个区块的国内供应链将很快被世界其他地区的供应链所取代,这些供应链的区块更少,但投入的工作更多。

钱包

比特币使用的是一种被称为分层确定钱包的东西。

BIP32分层锭性钱包

钱包的目标是:简化资金和UTXO的管理。比特币节点将通过对金额最高的UTXO进行优先级排序,自动为您的交易提供资金,而不是操纵粒度较小的UTXO。

我们从一个初始种子创建一对公钥和私钥。

可以派生这些密钥,以获取子密钥。

最初,人们认为这种衍生可能管理多个账户和多枚硬币。实际上,你的钱包里通常不会混装硬币,但以太坊也可能使用高清钱包。

拥有多个帐户的第一个用例是更改地址。这样,您就可以确保您为接收付款而动态生成的地址不会与更改地址重叠。最大限度地保护隐私。

多重签名钱包

钱包也可以在多个所有者之间共享,我们称之为多重签名钱包。

多重签名钱包

上述:Justin、Vittie和Craig各自持有打开multisig钱包所需的三把钥匙中的一把。

多重签名钱包有两个主要使用案例:

多人共享资金。想象一下,一家公司拥有一堆比特币,比如加密交易所,拥有一个多重签名钱包,可以确保如果有人不在,团队中的其他人可以访问这些资金。

真实例子:

首席执行官突然去世后,一家加密货币交易所可能损失了1.45亿美元

把你的钱包备份一下。想象一下,你可以在电脑、手机上有一个签名,而在旧设备上隐藏第三个签名。如果您丢失了任何一台设备,那么您仍然有机会访问您的资金并将其转移到新的钱包中。

拥有多个账户有助于拆分余额,以管理不同的预算。

脚本

比特币提供了一种简单的基于堆栈的编程语言,非图灵完全。下面是比特币维基页面上的一个例子。

来源:比特币维基

由于这种语言,比特币有时被称为可编程货币。

它描述了应该如何验证UTXOs。

我想请您阅读比特币维基上的一些脚本示例,以快速理解该语言的本质

仅供参考,操作码OP_RETURN可用于在区块链上留下信息。

API

为了与比特币守护进程交互,它公开了一个RPC接口。这就是比特币CLI工具所使用的,但您也可以使用curl或任何HTTP客户端与比特币节点通信。

来源:bitcoinBillions项目组com/bitcoin/bips

这就是开发者社区达成共识的地方。

我们现在所知道的定义钱包的BIP示例:

BIP32githubBillions项目组com/bitcoin/bips/blob/master/bip-004..

讨论中的BIP之一将被纳入比特币的下一个主要版本:

BIP119github#com/bitcoin/bips/blob/master/bip-011..

结论

从2022年开始,再过几年,如果你理解了那篇文章中引用的所有概念,你就足够好了,可以开始使用比特币进行开发。

根据你将使用或使用比特币的哪一部分,以下是一些你应该从哪里开始挖掘的提示:

关于采矿,区块包含的信息比我引用的要多,

关于事务和脚本,有不同类型的事务使用脚本:p2sh、p2pkh、p2wpkh,但也有一个有趣的东西叫做HashedTimeLockContract,

关于钱包,你可能想看看Taproot的最新更新,它允许多签名钱包拥有更多隐私,

更普遍的是,Lightning是比特币支付结算解决方案的第二层,Liquid是比特币的一个侧链,包含机密交易和资产发行。

-END-

重要声明:本文部分观点来源引用和转载,非全部为笔者观点,所以转载本文时请备注清楚为“区块新看点-行业整理分析报告”!本文笔者:区块新看点-程伟,未经区块新看点授权允许,请勿转载,谢谢!,谢谢关注和分享!

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

莱特币DAO:区块链如何挑选出有潜力的百倍币?

下面是具体标准 第一:市值必须低!市值计算方法,流动量乘以单价就是市值,具体的标准:今天市值第20名的币,市值110亿美金,所以,你买的这个币未来想要涨到100倍,今天的市值最好在1亿美金以内.

[0:15ms0-0:517ms