主页 > imtoken钱包怎么下载 > 比特币系统如何运作?

比特币系统如何运作?

imtoken钱包怎么下载 2023-08-30 05:10:02

至于比特币系统是如何运作的,我们先从一个栗子说起,从一个虚构的故事说起。

星星是一个数字货币用户,他打算将0.1比特币转给他的朋友毛毛。星星先在电脑上打开他的数字货币钱包软件,然后在“发件人”地址栏中填写毛毛的比特币账户地址,然后在“发送金额”输入框中输入0.1,最后点击后按下点击“发送”按钮,在弹窗输入密码,0.1比特币从星星钱包地址转入猫猫钱包。然而此时毛毛并没有立即收到0.1个比特币,星星的钱包显示交易还在等待确认。大约等了十分钟后,交易状态被确认为已确认。星星收到一条毛茸茸的短信:“比特币收到,谢谢!”。

这是一个典型的比特币交易流程。即使发送了 10、100 甚至 1000 个比特币,交易过程也没有区别,交易的安全性是一样的。

保定捷牛比特币交易流程

我们以本次交易为例,进一步分析比特币网络的运行机制。

什么是比特币地址

首先,星星需要知道毛毛的钱包地址。这个地址是公开的,任何人都可以知道。相当于我们的银行卡号。唯一不同的是,转账到银行卡时,需要知道对方的姓名,甚至是开户银行信息,但不需要比特币转账。任何想向您的钱包地址转账的人只需输入您的钱包地址即可完成转账。 .

在比特币网络中,每笔交易都需要钱包软件生成一个特殊的签名,并与你的钱包地址一起打包到交易信息中。任何分布在比特币网络中的节点都可以通过这个特殊的签名来判断你是否是这个钱包地址的所有者。这里的技术细节涉及到一种广泛使用的加密技术——椭圆曲线密码(有兴趣的同学可以google了解更多的加密细节,作为一篇针对科普的文章,这不是我们的重点)。

之所以任何人都可以根据签名和钱包地址来判断你是否是钱包地址的所有者,是因为你的钱包地址是基于一个特殊的字符串生成的,而你的签名也是由同一个字符串生成的。通过一种算法,很容易推断出地址和签名是否是由同一个字符串生成的。该字符串的学术名称是私钥。由于私钥如此重要,我们必须妥善保管。所有数字钱包都提供私钥备份功能。作为数字货币用户,一个重要的技能就是保存自己的私钥备份。基本原则是:

对于不熟悉密码和私钥管理,或者不知道1Password是什么的同学,强烈建议大家学习使用密码管理工具1Password。

如何确保您的交易准确无误

当我们通过银行转账时,中央银行的清算中心负责处理所有交易记录。中央政府的良好信誉让我们不用担心交易中出现任何问题。那么在比特币网络中,谁来负责确保每一笔交易都是准确的呢?

实际上,在比特币网络中,有专门的计算机来帮助我们确认交易是否正确。每台计算机都可以看作是一个独立的网络节点。为了更形象地解释它,我们首先假设一个节点是一个人。现在让我们假设比特币网络中有 1000 人致力于验证交易。它们是独立的,但它们之间的网络通信是畅通的。

星星点击比特币发送按钮后,交易信息,包括转账金额、发送比特币的钱包地址、接收比特币的钱包地址、签名信息将被打包发送到1000人的网络里面。当然,由于网络速度的关系,这1000个人收到交易信息的时间可能会有所不同,但没关系,任何人收到消息的第一件事就是验证签名和发送钱包的地址不是来自同一个私钥,请确保钱包地址的所有者执行了交易。

如果确认无误,收到消息的人会把交易记下来,但是这个人很懒,不想每次收到交易都要整理交易信息通知别人。于是他给自己定了一个时间,每隔十分钟整理一下这十分钟内收到的交易信息,用正规的表格填写,然后开始通知全网的每一个人:“听着,大家,我整理了一份记录刚才十分钟的交易信息。经过我的确认,交易是正确的。接下来,我会将这个交易信息块放入公共账本。 ,并将此事务块的副本存储在自己的计算机上。

这 1000 个人都在独立记录交易信息区块。完全有可能10个人同时说整理了最后十分钟的交易记录。谁在听?中本聪在发表论文时考虑到了这个问题,并设计了一个巧妙的解决方案。中本聪说你应该停止争论。我每十分钟给你一个问题。至于这个问题,我已经计算过了。十分钟左右你就可以算出来,所以谁先算出来就马上举手,我们都听你的,我们都为你节省了十分钟的交易时间。然后每个人都会做下一个问题。谁先解决下一个问题,谁就会保存他的交易信息。此外,如果你们中的任何一个是第一个提出问题的,在将您的交易信息块发送给所有人时,您还必须确保使用之前的交易信息块的数据生成一个特殊的签名,并将其放入您的交易信息中在街区里。

用于生成此签名的技术确保只要用于生成签名的交易块中的一个字符被修改比特币是如何确认交易的,生成的签名将完全不同。这样做的好处是交易信息块之间有很强的依赖关系。每个交易信息块都包含其前一个信息块的签名,前一个信息块包含前一个信息块的签名。 ,一路往回走,我们可以一路回到全网第一块信息。

由于信息块之间的这种链式依赖关系,它们被形象地称为区块链。网络中的每个人都称为矿工,他们解决问题的过程称为挖矿。看到这里,我想你可能会说:“小编,继续编,我保证不打你,我保证不杀你!世上哪有这么傻的人,每天都在努力帮你验证交易比特币是如何确认交易的,还要努力,我会尽量把我的交易发给大家,然后付款!不!想要!钱!”

好吧,我承认,我错过了一个关键话题。事实上,每次先解决问题的人,系统都会给他一点比特币作为奖励,而他在十分钟内整理出来的所有交易都需要支付给他一定的手续费。这种奖励保证了矿工的工作。这是一份利润丰厚的工作。因此,目前整个比特币网络中有数千名矿工。每天都有新人加入网络,也有一些人离开网络。他们所有计算机的计算能力已经超过了世界上最强大的。超级计算机的计算能力。

如何保证比特币的安全

由于比特币网络中没有中心化的权威,如果有人篡改了我的交易记录怎么办?星星明明给毛毛转了0.1个比特币,但是​​一个坏人把交易记录里的0.1改成了100,把毛毛的地址改成了另外一个地址。我的钱就这样被偷了吗?

现在让我们回到矿工确认交易的过程。我们说过,每个区块的交易信息都与前一个区块相连。如果坏人修改了星星给猫猫的交易记录,这个区块生成的签名就会改变。矿工在写一个新区块的时候,每次都会回溯,检查前一个区块的签名是否来自前一个区块,一路回溯到第一个区块,所以坏人需要修改下一个区块。区块中这个区块生成的签名,然后修改下一个,直到最新的区块,而且由于网络中每个人都有完整的区块链数据,你修改一个人的是不够的,因为当区块链数据不同人发现不一致,大家来投票,少数服从多数,以多数的区块链数据为准,改错数据。因此,为了保证虚假交易信息能够通过投票,坏人还需要修改网络中至少 51% 的节点的数据。由于区块链节点数量众多,这项工作已成为不可能完成的任务。这也是为什么比特币网络每天交易数十亿美元,却没有人通过修改区块链数据实现比特币盗窃的原因。不是没有人愿意这样做,只是真的无能为力!

总结

比特币是一种基于不可变分布式账本的数字货币系统,由松散的点对点自组织网络提供支持。网络中的所有节点都是平等的,没有中央节点可以控制其余节点。正是由于网络的这一特性,比特币网络也被称为“去中心化网络”。