双重支付Double-Spend【区块链生存训练】

有些初入币圈的朋友经常会问到一些区块链中的术语,比如“双重支付”,这是我在区块链生存训练【块20】给出的简短回答:

区块链中解决了数字货币中的一项关键技术,称为“双重支付”,即double-spend,即一笔数字资产既支付给了A,又支付给了B。有些书或网络文章中也把double-spend直译为“双花”,让人费解,别理解为两朵花。

在去中心化交易技术之前,这类问题通过中心化的机构来解决,比如:银行。你给A支付了一笔钱,银行把余额变动一下,想多花也不可能。当然信用卡账户允许你0余额还可以支付一定数量的资金,那都是银行说了算。

比特币的创始人中本聪设计了一套完整的体系解决了这个问题,去中心化的网络(比特币协议)、共享大账本(区块链)、货币发行(挖矿)及交易验证系统(交易脚本)。

这种技术也可以解决"拜占庭将军问题【块22】",即一支分散在多处的军队里混入少数叛徒,如何才能通过一致的行动来保证战争的胜利。

假如你在两台安装有Bitcoin Core的机器上分别发出了2笔交易(同一笔BTC输入,支付给A和B),这些交易都会向全网广播,矿工在收到这些交易时,不会将两个交易都打包。

万一不小心把A和B都打包了,还有许多其他节点要进行验证,仍会拒绝承认这个区块,也就是说这笔交易的确认数会一直为0。小额交易等待1次确认就行,大额交易等待6次以上的确认就足够的安全。

整个比特币系统中的每一个节点都可以查询每一笔交易的情况,且它们是有时间顺序的(时间戳机制),有一个公认的交易序列,只有当大部分节点都认同这笔交易时,这笔交易才是可信的。想破坏这种机制,需要拥有51%的算力【块49】。

在比特币世界里想透支,是不可能的。除了创世区块【块10】中的50个BTC是凭空出现的,以后的BTC都是挖矿获得的。你是否拥有1个BTC?通过比特币地址可以查个底朝天,一直追踪到这笔资金的诞生记录。这笔钱是不是你的?通过加密和签名算法来保证,无法伪造。

解决双重支付,必须对于每笔交易建立共识,就是大家都同意的机制,无法达成共识,就会分叉【块41】。

--- END ---

原文发布于微信公众号 - 申龙斌的程序人生(slbGTD)

原文发表时间:2017-08-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java工会

如何用JavaScript写一个区块链?

自去年开始,伴随着比特币的火爆,区块链成为比“人工智能”、“共享”还要火的词汇。各大企业,诸如阿里、京东、腾讯、百度等纷纷入局。

510
来自专栏互联网高可用架构

轻松理解比特币基础技术原理1 背景2 核心要点3 区块链学习如何进阶4 本文小结

1296
来自专栏极客编程

什么是以太坊?什么是智能合约?

以太坊是一个分布式的计算平台。它会生成一个名为Ether的加密货币。程序员可以在以太坊区块链上写下“智能合约”,这些以太坊智能合约会根据代码自动执行。

832
来自专栏PHP技术

比特币入门教程

比特币(bitcoin)诞生于2008年的一篇论文。 一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:...

2919
来自专栏区块链资讯

首次BCH无需信任原子交换已完成

长久以来,许多投资者通常会因为数字货币交易所发生的灾难性问题而受到财产损失,为保障财产的绝对安全,加密货币跨链原子交换成为了很多投资者期待的方向。本周在加密货币...

761
来自专栏申龙斌的程序人生

小白能够看懂的12个区块链名词

几天前接到一项任务,要给不懂区块链和比特币的小白解释几个常见概念,任务开工后才发现是一项蛮艰巨的任务。混迹币圈一年多,如今地址、区块高度、交易ID整天用,BTC...

3327
来自专栏申龙斌的程序人生

创世区块 | 区块链生存训练

比特币的底层是区块链(blockchain)技术,区块链是由一些区块(block)链接而成的,区块中记录着比特币交易信息。 2009年1月3日 18:15:05...

3309
来自专栏不止思考

聊聊区块链

在聊区块链(Blockchain)之前,我先推荐两本书,《区块链 从数字货币到信用社会》、《区块链 技术驱动金融》。

1152
来自专栏阮一峰的网络日志

比特币入门教程

比特币(bitcoin)诞生于2008年的一篇论文。 一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:...

3234
来自专栏林欣哲

10 分钟剖析区块链 2.0 以太坊

以太坊的起源 以太坊诞生的标志是由俄裔加拿大天才小伙Vitalik Buterin在2013发布了以太坊的白皮书《以太坊 (Ethereum ):下一代智能合约...

3337

扫码关注云+社区