比特币基础学习

基本介绍

比特币:人类历史上第一种数字货币,总量有限

数字货币:数字货币是基于数学加密原理构建的不可伪造的货币系统,而比特币是第一个基于数学加密原理构建的分布式数字货币系统

比特币和区块链的关系:比特币使用区块链技术实现了数字货币的可信支付

区块链是什么:通俗来讲,是一个所有人可共同维护、不可随意篡改的分布式账本【详细见5.1 区块链】

比特币的作用

  1. 价值存储:许多人将其视作”数字黄金”,供应量恒定(上限2100万枚),具有抗通胀、稀缺性与全球流动性。
  2. 跨境转账/结算:点对点支付,无国界、7×24小时,通常较快,费用随网络拥堵波动。
  3. 投资与资产配置:高波动高风险;机构与个人用于分散投资或长期持有。
  4. 支付:部分商户接受BTC直接或通过支付网关间接结算。
  5. 抵押/金融创新:在部分加密金融场景中作为抵押物或参与衍生品交易(需了解清算风险)

如何获得比特币

  1. 购买,通过合规的加密资产交易所用法币(人民币、美元等)或稳定币买入
  2. 挖矿,使用专业的计算能力强大的计算机(个人计算机没有那个能力了现在),解决复杂的数学难题(工作量证明机制),从而竞争打包一个区块的权力。成功获得这个权力的“矿工”,会得到两部分奖励,一个是新生成的比特币(每四年减半一次),一个是该区块内所有交易的手续费
  3. 别人买你东西的支付
  4. 借贷、质押等高风险低收益手段

区块奖励(Block Reward)

2009年创始块:50 BTC

2012年第一次减半:25 BTC

2016年第二次减半:12.5 BTC

2020年5月第三次减半:6.25 BTC

交易手续费(Transaction Fees):这笔费用不是固定的,它由用户支付。用户为了让自己发起的交易能更快地被矿工打包进区块,会支付一定的费用。一个区块内所有交易的手续费会加起来,奖励给打包该区块的矿工。这个数值随时都在波动。

与传统货币的区别(特点)

特性\货币 传统货币 比特币
发行和管理 由中央银行统一发行和管理(如美联储、中国人民银行,注意:区别于中国银行,中国工商银行等商业银行 由代码、算法和全网用户共识控制,无单一发行方和控制方
实体 有实体,也有数字形式 以数据形式存在,没有物理实体
总量 无限供应,根据经济政策印发,存在通胀的可能 总量上限为2100万个,永不增发。通缩特性
交易匿名 实名制,与个人信息绑定 交易记录可见,但地址背后的人物身份匿名不可见
交易是否可逆 可逆,可通过银行或支付机构(支付宝)找回、撤销等 不可逆:一旦交易被区块链确认,无法撤销、追回
交易时间 受工作时间限制(节假日),跨境汇款慢 持续不间断运行。到账时间与网络拥塞程度有关,一般10min - 1h
价值来源 国家信用,由国家法律和信用担保 价值共识,完全来源于社区用户对其的信任和共识(换句话说如果大家觉得它不值钱,那它就不值钱),所以价值波动大
安全性 由密码学和分布式网络保证 由国家暴力机关和金融机构的风控系统来保证

概念详解

区块链是什么

区块链就是一个不断增长的全网总账本,每个节点都拥有完整的区块链(账本),并且,节点总是信任最长的区块链,谁在上面记了一笔账,所有人同时更新一份副本,且过去的记录一旦写入就几乎改不动

区块链是一个一个区块构成的有序链表(每个区块都指向前一个区块,从而形成一个链条),如图所示

区块链

  • 每个区块都有一个唯一的哈希标识,被称为区块哈希
  • 每个区块通过记录上一个区块的哈希来指向上一个区块
  • 每个区块还有一个Merkle哈希用来确保该区块的所有交易记录无法被篡改

区块本身记录的主要数据就是一系列交易,所以,区块链首先要保证任何交易数据都不可修改

在区块的头部,有一个Merkle Hash字段,它记录了本区块所有交易的哈希,就是把所有记录作为参数,计算出一个哈希

区块本身用Block Hash——也就是区块哈希来标识。但是,一个区块自己的区块哈希并没有记录在区块头部,而是通过计算区块头部的哈希得到的,区块头部包括version、上一个区块哈希Merkle Hash、时间戳、bits、nonece等部分组成

如果一个攻击者需要修改一个区块中的交易,就需要重新计算Merkle Hash,进而需要计算由Merkle Hash得到的Block Hash,而Block Hash一变,又会导致下一区块记录的上一区块哈希失效,所以又需要修改,所以,要修改后续所有区块,这个攻击者必须掌握全网51%以上的算力才行,进而,修改区块链的难度是非常非常大的

交易所和公私钥

类比一下,交易所约等于银行,私钥约等于银行卡密码,公钥为银行卡号

交易所

交易所是一个在线平台,就像一个网上银行。它的主要功能是提供一个市场,让用户能够用传统货币(如人民币、美元)去购买、出售或兑换各种加密货币(如比特币、以太坊)

提供如下服务:

  • 法币兑换通道:通过银行卡、支付宝等方式向交易所充值人民币,然后用它来购买BTC等加密货币

  • 交易市场:提供各种交易对,例如 BTC/USD(用美元买比特币)、ETH/BTC(用比特币买以太坊)等

  • 托管服务:把币放在交易所,实际上是由交易所替你保管这些资产。你登录交易所账户后看到的余额,只是交易所给你记的“账”,真正的币存放在交易所掌控的大钱包里

存在如下风险和特点

  • 当你把币存在交易所时,控制权实际上在交易所手里。如果交易所被黑客攻击、倒闭或跑路,你的资产可能会血本无归
  • 操作简单,适合新手,交易速度快
  • 大型交易所通常需要遵守所在国的法律法规,因此需要你实名认证

私钥

私钥是一串由数字和字母组成的、极其机密的密码。它是比特币和加密货币安全体系中最最核心的概念。

  • 谁拥有私钥,谁就完全控制着对应地址上的所有加密货币。它就是你资产的绝对所有权凭证

  • 要花费(转出)比特币,必须使用私钥对交易进行数字“签名”,以证明你确实是资产的主人。这个签名过程是数学化的,非常安全,且不会泄露私钥本身。

  • 字符串形式:看起来像这样:5Kb8kLf9zgWQnogidDA76MzPL6TsZZY36hWXMssSzNydYXYB9KF,此外还有助记词形式和二维码形式

  • 为了安全起见,一般离线存储

一旦丢失私钥/助记词,将永久失去对应地址上的所有资产,无人能够帮你找回。

公钥

公钥也是一长串由数字和字母组成的字符串。由私钥通过一种复杂的单向数学函数推导计算出来的

作用如下

  • 生成地址钱包地址并不是公钥本身,而是由公钥经过哈希运算(另一种单向数学变换)和编码后生成的、更短更易用的字符串。所以它们的生成关系是:

    私钥 → (生成)→ 公钥 → (生成)→ 钱包地址

  • 加密验证:它是整个系统能够实现“公开”却依然“安全”的基石。它主要完成两个功能:

    交易验证:当你要用私钥对一笔交易进行签名时,网络上的其他人可以使用你的公钥来验证这个签名是否有效,从而确认你是否是资产的合法所有者。验证过程不需要知道你的私钥

    信息加密:其他人可以用你的公钥对一条信息进行加密,那么这条加密后的信息全世界只有拥有对应私钥的你才能解密和阅读

可以类比成寄信的信箱,钱包地址为信箱编号,公钥为为信箱投递口,私钥为信箱钥匙

  • 信箱编号(钱包地址):公开的,你想让别人给你寄信,就要告诉他你的信箱编号(比如“103号信箱”)
  • 信箱投递口(公钥):公开的,任何人都可以看到。寄信人(发送比特币的人)把信(交易)通过投递口塞进去。这个投递口的设计保证了一旦信塞进去,就只有拥有钥匙的人才能取出。投递口可以验证信是否塞对了信箱。
  • 信箱钥匙(私钥):只有你自己持有。只有用这把钥匙才能打开信箱,取出里面的所有信件

工作量证明机制

工作量证明是一种用来确保网络安全和达成共识的机制,它要求参与者(矿工)完成一个计算成本高昂但验证容易的数学难题,以此来证明自己投入了真实的工作量,从而获得记账权和新币奖励

第1步:收集交易

矿工节点从比特币网络中收集尚未确认的交易,并将它们放入一个新的“区块”中。

第2步:构建区块头

矿工会构建一个区块头(Block Header),其中包含一些重要信息,如:

  • 上一个区块的哈希值(形成链的关键)
  • 本区块中所有交易的默克尔树根(Merkle hash)
  • 时间戳
  • 一个 “随机数”(Nonce) 的变量( initially 设为0)
  • 难度目标值(一个决定解题难度的数值)

第3步:寻找有效哈希(“解题”的核心)

矿工的核心任务就是:不断改变区块头中的随机数(Nonce),然后对整个区块头进行哈希计算(SHA-256算法),目标是让计算出的哈希值小于当前网络设定的目标值

这个过程就像:

我给你一个骰子,要求你“必须掷出小于等于3的点数”。你可能掷几次就成功了。但如果我要求“必须掷出1点”,你可能要掷很多次。比特币网络的要求极其苛刻,相当于要求“掷出一个有20个面的骰子,必须连续掷出10个1点”。唯一的办法就是疯狂地、不停地掷骰子(计算)。

第4步:广播与验证

一旦某个矿工找到了一个满足条件的Nonce和哈希值,他就会立即将这个新区块广播给全网。

其他节点收到后,会进行验证。验证非常简单:他们只需要拿这个矿工提供的区块头(包含他找到的Nonce)重新计算一次哈希,看看结果是否真的小于目标值。验证一次计算即可完成,极其迅速。

第5步:接受与奖励

如果验证通过,全网其他节点就会接受这个新区块,将其追加到自己本地区块链的末尾。

找到这个区块的矿工就会获得区块奖励(新铸造的比特币)和交易手续费作为报酬。

然后,所有矿工立即开始基于这个新区块,竞争下一个区块,如此循环。