找回密码
 立即注册
  • QQ空间
  • 回复
  • 收藏

比特币交易是如何运作?

qukuailian 2019-12-2 10:20 513人围观 资讯

比特币交易如何运作?

如果我想将部分比特币发送给您,请发布我的意图,然后节点扫描整个比特币网络以确认我1)拥有要发送的比特币,以及2)尚未将其发送给某人其他。确认该信息后,我的交易将包含在附加到先前区块的“区块”中,因此称为“区块链”。交易无法撤消或篡改,因为这意味着要重新执行所有区块之后。

变得更加复杂:

我的比特币钱包实际上没有保存我的比特币。它的作用是保留我的比特币地址,该地址记录我的所有交易记录,并因此记录我的余额。这个地址(由34个字母和数字组成的长字符串)也称为我的“公钥”。我不介意全世界都能看到此顺序。每个地址/公共密钥都有一个对应的由64个字母和数字组成的“私有密钥”。这是私人的,对我而言,保密和安全至关重要。这两个密钥是相关的,但是您无法从我的公钥中找出我的私钥。

这很重要,因为我从我的比特币地址发出的任何交易都需要用我的私钥“签名”。为此,我将我的私钥和交易详细信息(我想发送多少比特币以及向谁发送)都放入了计算机或智能手机上的比特币软件中。

有了这些信息,程序就会吐出一个数字签名,然后将其发送到网络进行验证。

该交易可以被验证-也就是说,它可以确认的是我自己,我转移到你的比特币,而我还没有把它交给别人-通过插入签名和我的公共密钥(每个人都知道)进入比特币程序。这是比特币的天才之一:如果签名是使用与该公钥相对应的私钥进行的,则程序将在不知道私钥是什么的情况下验证交易。非常聪明。

然后网络通过浏览我的地址历史记录来确认我以前没有花费过比特币,之所以可以这样做是因为它知道我的地址(=我的公钥),并且所有交易都在比特币分类账上公开。

更复杂的是:

一旦我的交易通过验证,它就会与其他一系列交易一起被包含在“区块”中。

简短绕道讨论“哈希”是什么,因为对于下一段很重要:“哈希函数”产生哈希,哈希函数是一个复杂的数学方程式,可将任意数量的文本或数据减少为64个字符的字符串。这不是随机的-每次通过哈希函数输入该特定数据集时,都会得到相同的64个字符的字符串。但是,如果您进行了很多更改,例如逗号,则将获得完全不同的64个字符的字符串。整篇文章都可以简化为哈希,除非我更改,删除或在文本中添加任何内容,否则可以一次又一次产生相同的哈希。这是一种非常有效的判断是否已更改的方法,也是区块链如何确认交易未被篡改的有效方法。

回到我们的块:每个块都包括前一个块的哈希作为其数据的一部分。这就是使它成为链的一部分的原因,因此也称为“区块链”。因此,如果前一个区块的一小部分被篡改,则当前区块的哈希必须更改(请记住,哈希输入的微小变化函数更改输出)。因此,如果要更改前一个块中的内容,还必须更改当前块中的内容(=哈希值),因为当前包含的内容不再正确。这很难做到,特别是因为当您到达一半时,在当前位置的上方可能还有另一个位置。然后,您还必须更改那个。等等。

这就是使比特币几乎可以防篡改的原因。我说这实际上是因为这并非不可能,只是非常非常非常非常困难,因此不太可能。

我有话说......