首页 > 其他分享 >比特币与区块链诞生

比特币与区块链诞生

时间:2024-11-02 18:19:42浏览次数:3  
标签:诞生 比特 网络 奖励 中心化 区块 节点

区块链诞生之前

我们通常把比特币的发明看成是区块链诞生的标志性事件。但区块链就像很多技术一样,并不是凭空出现,通常都会有一些渊源。 1991年,比特币发明出来的17年前,斯图尔特·哈伯(Stuart Haber)和W.斯科特·斯托内塔(W. Scott Stornetta)就提出了区块链的前身。他们创造性地把一系列区块链接起来,最终保证了电子文档的时间戳不可篡改。一年之后,他们升级了这套系统,往其中加入默克尔(Merkle)树。得益于此,系统的效率大大提升,可以在一个区块中放入一组文档。 通过 Hash 链接在一起的区块、默克尔(Merkle)树,构成了比特币诞生的基础,这些最终都成为区块链技术的重要组成部分。

区块链的诞生标志 —— 比特币

2008年10月31日,一名叫中本聪(Satoshi Nakamoto)的用户在密码学的邮件组中发了一个链接,链接指向一篇叫作《比特币:点对点的电子现金系统》(Bitcoin: A Peer-to-Peer Electronic Cash System)的论文,标志着比特币的诞生。

点对点的电子现金系统

论文中详细介绍了如何使用点对点技术创建一种电子货币(数字货币)。

2009年1月3日,中本聪挖出了比特币的创世区块,标志着比特币网络正式上线。中本聪在挖出创世区块的过程中获得了50个比特币的矿工奖励,同时他在创世区块中留下了这句话: The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.(2009年1月3日,财政大臣正处于实施第二轮银行紧急援助的边缘) 这句话是英国《泰晤士报》当天的头版文章标题。通过对头版头条的引用证明了比特币的实际上线时间。

早期数字货币探索

1983年,戴维·查姆(David Chaum)和史蒂芬·布兰德斯(Stefan Brands)开发了ecash协议,基于ecash协议,不少人发明了多种电子现金系统。
1997年,亚当·巴克(Adam Back)开发了hashcash协议,主要是为了解决垃圾邮件泛滥的问题,其中用到的技术就是后来被比特币使用的工作量证明算法(proof-of-work)。
1998年,戴伟(Wei Dai)发明了b-money,尼克·萨博(Nick Szabo)发明了bit gold。两者被认为是最早的分布式加密货币。
这一切可以被认为是比特币的前身,它们都或多或少地影响了比特币的设计。
2008年8月18日, bitcoin.org 域名注册, 2008年10月31日,密码学(cryptography)邮件列表中收到了一个叫中本聪的人发表论文《比特币:点对点的电子现金系统》。

比特币历史事件

2009年1月9日,知名代码托管网站SourceForge上发布了第一个开源版本的比特币客户端。
2009年1月9日,作为比特币的早期支持者和贡献者的程序员哈尔·芬尼(Hal Finney)下载了比特币客户端,2009年1月12日,哈尔·芬尼(Hal Finney)收到了中本聪的 10 枚比特币的转账,这是比特币历史上的第一次转账。
2010年5月22日,程序员拉斯洛·汉耶兹(Laszlo Hanyecz)用10000枚比特币购买了Papa John‘s的两份披萨。这是有记录的第一次在现实中发生的比特币交易行为。
2012年9月,比特币基金会成立,旨在通过开源的协议来加速比特币在全球范围内的增长。
2013年10月29日,加拿大公司发布第一个比特币 ATM,允许用户在咖啡馆里直接购买和出售比特币。
2017年8月1日,比特币发生共识分裂,分叉出 Bitcoin Cash (BCH) 链。
2017年11月28日,比特币价格首次突破1万美元。
2021年11月10日,比特币创下历史最高价达68928.9美元

比特币共识

比特币是一种基于分布式网络的数字货币,与传统的货币不同,比特币不是在任何政府的支持下发行的货币,也不依赖中心化的银行来记录相应的账本。

如何让比特币的分布式网络中的所有节点,按照一个统一的规则行动,以便最终形成一个所有人都认可的公共账本?

工作量证明

在分布式系统中,如何多台计算机如何同时运行同一个任务,一直是一个“难题”,在比特币系统中,需要如何保持各个节点的账本数据(通常称为“状态”)一致呢。 这就需要各节点达成一个“共识”,所有节点按统一的规则行事。

比特币网络中的所有节点都会接收到一组交易记录(记录作为一个区块保存),然后把这个区块更新到本地的账本记录中。如果节点都随意增加记录,那么整个比特币网络中的记录就无法保持一致。为了保持记录一致,那么必须确认哪个区块被优先写入,也就是需要以某一个节点的操作为准。但如果人为规定以某个节点为准,就意味着这个节点比其他节点更权威,相当于变成了一个中心节点,那么去中心化的优势就荡然无存。

比特币使用的共识算法叫做PoW共识机制,全称是Proof of Work(“工作量证明”),率先完成工作量证明的节点,拥有区块写入权,其他的节点以此区块的基础上(在最长链的基础上)进行后续交易记录的工作量证明。

工作量证明中最重要的是计算一个数学难题,解此难题唯一的方式是不断的尝试,直到试出“答案”,率先完成解答的节点可以获取一笔奖励,最初奖励是每个区块50个比特币,之后每大约4年减半,当前为每区块 6.25 比特币。由于完成工作量证明有一定的随机性,通常这个过程也称为“挖矿”,参与挖矿的节点,则称为“矿工”。

矿工的收益不仅仅包含出块奖励,同时还有交易手续费收益,根据中本聪的设想,当出块奖励越来越小后,矿工的收益将主要来自于交易手续费。

比特币发行量小知识

比特币发行量都来自于比特币的出块奖励,按共识规则初始出块奖励是 50 比特币,之后每隔21万个区块奖励减半,每个区块的生成时间大概是10分钟,因此大致是4年减半一次,大约到 2140 年,比特币的出块奖励就趋于零,此时产出的所有比特币数量将非常接近 2100 万枚。
在下一节,我们会介绍更多比特币如何交易的细节。

比特币有什么价值

比特币具有的“货币”的特性,如:可流通性,可交易性,可存储性,可分割性,同时对比法币,有更好的稀缺性。

但比特币价值并不是由中央权力机构赋予或物理特性(贵重金额)决定,而是由广泛的共识来决定。

由于比特币与黄金有很多的相似性,如:稀缺性、价值存储工具,加上比特币的数字特性,有很多人把比特币称为“数字黄金”, 很多机构购置一部分比特币作为储备来对冲美元风险。一些受美元制裁的国家也在加大比特币的采用率。

比特币特点

从比特币的特点上来看,比特币是去中心化的,主要特点如下:

比特币不需要任何权威机构的背书。 比特币是点对点网络,没有中心化的服务器存在。 比特币的账本数据存储在区块链中,而区块链本身存储在千千万万的节点中,没有一个中心化的存储设备。 比特币账本数据面向所有人公开,任何人都可以把它存储到自己的机器中。 比特币网络没有管理员,比特币网络中的所有节点共同管理比特币网络,维持比特币网络的运行。 任何人都可以成为比特币网络的一个节点,从而具备和别人同等的管理权。 比特币网络中任何节点都是同等地位,它们都可能获得下一个区块的记账权。 由于比特币可能由任意节点凭空产生,所以比特币的供应也是去中心化的。 和传统银行不同,任何人都可以生成任意数量的比特币账户,不需要任何中心化机构的审批。 任何人都可以在比特币网络中发起转账,不需要任何中心化机构的审批。

但是,在现实中,比特币也有一些中心化的倾向,由于奖励机制是凭空生成的比特币,所以比特币网络中的节点争夺记账权的欲望通常比较强大,结果造成了大量的节点联合起来,共同去争夺记账权。当联盟中的任意节点获得记账权,就会把得到的比特币和联盟中的其他节点分享。因此,这种联盟造成了比特币网络节点某种程度上的中心化。这种联盟就是我们经常听说的比特币矿场。

标签:诞生,比特,网络,奖励,中心化,区块,节点
From: https://www.cnblogs.com/malieyong/p/18522295

相关文章

  • 区块链专题
    密码学专题训练实验报告实验名称实验三区块链专题一、实验目的1.理解分布式存储的相关概念和原理;2.理解传统分布式系统存在的弊端和安全威胁;3.了解基本的共识机制和共识算法;4.理解并掌握Hash函数设计思想和应用场景;5.理解并掌握公钥密码体制在保护身份信息中的作用;6.了......
  • BitNet.cpp:革新性的1比特LLM推理框架,让CPU也能驾驭百亿参数大模型!
    ......
  • NocoBase 本周更新汇总:提升表格区块渲染性能等
    汇总一周产品更新日志,最新发布可以前往我们的博客查看。NocoBase目前更新包括两个分支:main和next。main:截止目前最稳定的版本,推荐安装此版本。next:内测版,包含一些未发布的新特性,这个版本可能还不完全稳定,适用于开发者或测试人员,用于提前体验新功能或进行兼容性测试。v1.......
  • 什么是区块链即服务BaaS
    区块链即服务(BaaS)是一种允许用户在云基础设施上创建,部署和管理自己的区块链应用和智能合约的服务。BaaS供应商负责维护区块链的基础设施,提供必要的操作和维护服务,使企业和开发者可以专注于业务应用的开发和运营。BaaS提供者为用户创建和部署专属的区块链网络,包括节点的部署、网......
  • C++在实际项目中的应用第二节:C++与区块链
    第五章:C++在实际项目中的应用第二课:C++与区块链区块链技术因其去中心化、不可篡改和透明性而受到广泛关注。在这门课程中,我们将深入探讨区块链的基本原理、智能合约的开发以及实际应用的案例分析,重点使用C++作为实现语言,以便充分发挥其高效性和强大的功能。1.区块链的......
  • 如何在供应链行业中应用区块链
    区块链技术在供应链行业的应用可以带来多方面的改进,包括提高透明度、增强安全性、简化流程、减少成本等。以下是几个主要的应用场景和具体实施方式:1.产品溯源应用场景:消费者和监管机构要求了解产品的来源和历史,确保产品质量和安全。实施方式:通过在区块链上记录每个生产环节的......
  • NFT区块游戏系统开发: 构建与创新指南
    随着区块链技术的发展,NFT(非同质化代币)游戏成为了游戏产业中的一股新潮流。通过将区块链与游戏相结合,开发者不仅能够创造独特的游戏资产,还能提供真正的所有权和经济激励。本文将为开发者提供构建NFT区块游戏系统的详细指南,涵盖关键要素、步骤以及创新建议。一、NFT游戏的概述......
  • ReactOS系统中平衡二叉树。给定地址超导其所属区块MmFindRegion()
    系列文章目录PMM_REGIONNTAPIMmFindRegion(PVOIDBaseAddress,PLIST_ENTRYRegionListHead,PVOIDAddress,PVOID*RegionBaseAddress);宏函数//给定地址找到其中所属区块#defineCONTAINING_RECORD(address,type,field)((typeFAR*\(PCHAR)(address)-(PCH......
  • PHP在区块链开发中的应用
    ###PHP在区块链开发中的应用PHP在区块链开发中主要应用于构建前端用户界面、后端API服务、与区块链网络交互等方面。其中,PHP通过后端API服务与区块链网络的交互尤为关键,它允许开发者创建和管理区块链数据、执行智能合约等功能,为区块链应用提供了强大的后端支持。####一、PHP......
  • 【采用BPSK或GMSK的Turbo码】MSK、GMSK调制二比特差分解调、turbo+BPSK、turbo+GMSK研
      ......