本期导览
本节课我们将为大家介绍比特币最初的设计模型。本期要点:
神秘的比特币创始人:中本聪
比特币核心问题:双花问题
双花问题的解决之道:UTXO 和 时间戳
2008年,神秘人“中本聪”发表了一篇论文《比特币:一个点对点的电子现金系统》,这篇论文标志了比特币的诞生。这篇论文详细描述了比特币系统的操作方案,被视为比特币白皮书。
在介绍比特币白皮书之前,我们先简单了解一下中本聪。
一、神秘人“中本聪”到底是谁?
中本聪的真实身份目前并没有公开,这件事情属于区块链领域的未解之谜。虽然现在很多人跳出来说自己是中本聪,也有很多人被怀疑是中本聪,但是大多经不起推敲。
所以,网上搜到的那位日裔美国中年人的照片,只不过是猜测而已。
中本聪为什么要隐瞒自己的身份呢,目前众说纷纭:
中本聪并不是一个人,而是一个团队,现在团队已经解散了,所以根本找不到他了;
中本聪担心自己现身后,会成为比特币社区的领袖,这样有悖于“去中心化”的设想;
中本聪有很多很多比特币,树大招风,他担心现身以后会被盯上
……
纠结中本聪到底是谁,到今天已经没有什么意义了。我们更应该去关注的是,他给我们留下的比特币到底是怎么回事,它如何影响我们的生活、又给我们带来哪些思考方式。
比特币是一个脑洞很大的系统,它的设计思路完全颠覆了我们目前的思维模式,下面我们就来介绍一下比特币系统的逻辑框架。
二、比特币系统的逻辑框架
(一)做一套去中心化的货币体系
比特币白皮书,也就是中本聪写的那篇论文《比特币:一个点对点的电子现金系统》,里面涉及到许多代码、运算,非专业人士很难完全理解。
不过,比特币白皮书尽管看似复杂,想要解决的问题只有一个,那就是:“去中心化问题”,可以说,去中心化是比特币的终极理想。
(二)去中心化货币体系存在的问题:双花问题
比特币想要做成一套“去中心化”的货币体系,就注定要面对许多现在中心化体系中不是问题的问题。
在中本聪看来,最大的问题就是“双重支付”问题,就是我们说的“双花问题”。双花问题,简单讲就是一笔钱能被花两次三次很多次。
我们说,这个双花问题在我们现在的中心化世界里面根本不是问题。这是因为,我们现在的中心化世界里有银行,钱的交易结算都是通过银行,银行肯定不可能让你同一笔钱花很多次。
但是在去中心化世界里面呢,没有银行这样一个中心机构,人人都可以参与交易结算,是存在很大的风险的。这就是为什么在中本聪看来,比特币系统最大的风险就是“双花问题”。
为什么双花问题会成为比特币系统里面一个这么重要的问题呢?
原因就在于,比特币是虚拟货币,是通过代码形式呈现出来的,它可以被复制,也可以被修改。一旦有人恶意修改代码,那么他就可以循环使用同一笔比特币,这样一来,比特币就失去了货币的价值了。
我们想一下,你有2000块钱,你去商场买一件2000块钱的衣服,这2000块钱还能循环使用,你再转过头去珠宝店买一条2000块钱的项链,这2000块钱你可以反反复复拿去买东西,这样一来,钱就没什么价值了。
所以,中本聪在设定比特币系统的时候,他所有的技术手段基本上都是围绕着解决双花问题的,来保护比特币作为一种货币的价值。
中本聪设计的这套“去中心化”的比特币系统,其实是对抗“中心化”的一种社会实验。他之所以如此执着地追求“去中心化”,并不是自寻烦恼,而是他希望能够通过去中心化的模式,解决一些社会问题,比如说:权力机构过量发行货币导致的通货膨胀。
那么中本聪设计了怎样的手段来解决比特币的“双花问题”呢?他主要在比特币系统中引入了UTXO和时间戳手段,来解决“双花问题”。
所以总结一下比特币设计的逻辑:
中心化的货币增发导致通货膨胀——所以我们要实现去中心化——去中心化要面临很多问题,最大的问题是双花问题——所以我们要解决双花问题——怎么解决双花问题?中本聪引入了UTXO和“时间戳”概念,依靠这两种手段来解决双花问题。
(三)双花问题的解决之道:UTXO和时间戳
1. UTXO
UTXO的中文意思叫作“未花费的交易输出”。UTXO是数字货币中的账户模型,这个模型和我们现在银行的账户模型是不一样的,我们跟现在的转账模式对比一下,来举例说明UTXO到底是怎么回事。
拿转账来说,现在的情况是:
我要给小明转3000块钱,我要从我的银行卡里面给他转账。假如我的卡里面有1万块钱,转给他3000块钱以后,我的银行卡就被扣除了3000块钱,我自己还剩下7000块钱。
如果是基于比特币的UTXO,情况是这样的:
我有1万比特币,我给小明转3000比特币,3000比特币消耗掉了对不对,注意,这3000不是从我这1万总数里面扣除的,而是我的比特币总额会分成两份(一份3000,一份7000),这就是所谓“生成两个新的UTXO”,小明收下3000比特币,我自己收下7000比特币,我的这7000比特币可以理解成给我的找零。
转账成功以后,我给小明的3000比特币目前已经使用过了,被消耗掉了,就不能再叫UTXO了,而找零给我的7000比特币目前我还没有使用,所以它还能称作UTXO ,也就是未花费的交易输出。
还有一种情况是,如果我总共有1万比特币,我全部转给小明,那么就只需要生成一个新的UTXO给小明就可以了,不需要找零了。
基于UTXO,每笔交易出现,都要确认比特币之前的情况,检验比特币是不是存在于我的UTXO中,如果不存在,那么系统就会拒绝你的交易行为。这样一来,每笔交易的输入和输出都是有关系的,可以通过UTXO不断向前追溯,一直追溯到比特币诞生的时候,也就是挖矿的源头。
如果我想用同一笔UTXO发送给两个人,那么系统只确认先接受到的那一笔,一旦确认UTXO已经被消耗了,那么你就不可以再把它转给下一个人,这样就避免了双重支付的问题。
2. 时间戳
为了防止双花问题,比特币系统引入了时间戳概念。时间戳意味着,系统会给每一个区块的交易信息都自动加上时间戳,这就相当于给交易信息打上了时间烙印:这个时间你花了多少钱,都会被记录上,你就不能再用它买别的东西了。
具体怎么记录的呢?其实还是通过计算,把时间戳和区块上的其他交易信息,通过复杂的计算,得出一个加密数值,这个加密数值叫作“哈希值”,每一个新区块都包含前一个区块的哈希值,由此形成一条区块链。
所以我们说:比特币系统,实际上是一个层层嵌套、永不停歇的、非常强大的时间戳系统,它利用的是时间戳保证每一个区块按照时间顺序链接成“链”(也就是区块链)。
从这里我们可以这样理解,时间戳,字面意思是给区块打上时间印记,它的实际作用在于:为之后计算哈希值提供一个重要参数,是计算和核对过程中一个必不可少、非常重要的信息。
本期主要介绍了两个名词:UTXO和时间戳,这两种方式是解决双花问题的重要手段,能够保证比特币可以在没有第三方机构的情况下,不被多次使用。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。