主页 > imtoken地址是什么 > 科学:透彻理解比特币网络背后的运行逻辑

科学:透彻理解比特币网络背后的运行逻辑

imtoken地址是什么 2023-05-02 07:28:45

本文来自万向区块链小课堂。

很多人都知道区块链的入口渠道和区块链应用的鼻祖——比特币网络。相信很多小伙伴都不陌生。但是你真的了解比特币网络背后的运作方式吗?比特币系统不属于任何一个人或任何公司/组织,也没有员工、老板和股东来维持它的运行。换句话说,比特币系统不受任何人控制。那么为什么世界上有这么多节点和参与者信任它呢?以及如何防止比特币被非法复制?

本期万向区块链小课堂将系统介绍比特币的工作原理,以及比特币的底层技术——区块链在数字货币之外的商业应用潜力,保证“说”“人话”,简洁易懂了解,诚邀您仔细阅读~

银行等缺乏管理中心的交易系统通常面临以下三大挑战:

· 资产是确认的权利

· 防止交易信息欺诈

· 确定交易记录的可靠性和权威性

但是,比特币没有金融机构等第三方管理中介。但是,它可以应对这三个挑战。通过了解比特币如何应对这三个挑战,自然而然就会了解比特币是如何工作的。下面我们来详细看看比特币是如何克服这三大难点的。

挑战一:资产确认

当有人将交易记录发布到比特币区块链时,如何确定该交易确实是由比特币所有者发起的,而不是骗子试图伪造它?这使用了计算机加密技术。

非对称加密

比特币使用非对称加密技术,需要一对密钥。用一个密钥加密的数据可以用另一个密钥解密。在使用过程中,一个密钥被泄露,即公钥,另一个非公钥对应成为私钥(公钥类似于互联网上的账户,私钥类似于登录密码)。

如何使用这对密钥发送信息?如果《银河护卫队》中的星爵想给格鲁特发一条“你好,格鲁特”的消息,但又想确保超级反派灭霸看不到这条消息怎么办?我们可以让 Groot 创建一对密钥,将公钥交给星爵,并保留私钥。 Star-Lord 可以用公钥加密信息。加密的信息看起来像胡说八道。只有格鲁特用私钥解密后,才能知道星爵说了什么。

数字签名

比特币也反向使用这对密钥来验证数据创建者的身份,该密钥被视为用户的数字签名。我们仍然要求银河护卫队帮助解决这种情况。假设格鲁特想给星爵发一条消息说“我是格鲁特”,但星爵怎么知道这条消息真的来自格鲁特,而不是别人冒充格鲁特? Groot 可以用他的私钥加密这条消息。星爵收到消息后,用对应的公钥解密,就可以读取“我是格鲁特”的消息了。并且由于公私钥的对应关系是唯一的,星爵可以用公钥成功解密信息,证明信息确实是私钥持有者Groot发送的,否则星爵是不可能解锁的信息。

挑战二:防止交易信息造假

如果有人在一个月前进行了比特币交易,现在又后悔了,想悄悄撤回交易,而比特币的去中心化系统缺乏权威的管理者。这种信息欺诈的阴谋怎么会失败?这使用哈希算法。

哈希算法

哈希算法可以用来验证数据的真实完整性。任何信息都可以通过哈希函数运算得到一个哈希值,但原始信息稍有变化,就会使得到的哈希值完全不同。

假设星爵想将数字“12345”传递给格鲁特,担心灭霸截获并篡改信息。他可以计算出这串数字的哈希值:FE100DDA6D28B2280B34FC228ADAB42E,然后将这串数字连同他的哈希值一起传递给 Groot。得到这串数字后,格鲁特也对其进行了哈希运算,看得到的哈希值是否与星爵告诉他的一致。如果一致,则说明格鲁特和星爵拥有的原始号码是相同的,并且这串号码在传输过程中没有被篡改或损坏。如果灭霸悄悄介入数字传输过程,把原来的数字串改成“12346”,然后把错误的数字传给Groot,Groot计算出来的hash值就是:1761420899A8F0B731A2EE56A6F71567,星爷给了他如果数据完全不同,自然会发现数据被篡改了。

区块链是相互关联的

在比特币中,固定时间段内的交易会被打包成一个区块。每个块存储前一个块的哈希值。这些区块通过哈希值来回连接,形成链状结构,也就是我们常说的区块链。

下图中的3个区块记录了交易1到9的信息。

如果第一个区块中的交易3被删除,那么第二个区块中的hash值会发生变化,证明第一个区块中的交易信息被篡改了。

能否尝试修改第二个区块,使其中存储的哈希值与被篡改的第一个区块中的信息相对应呢?这也不起作用。因为修改了第二个区块中的信息后,第三个区块中的哈希值就不能再对应第二个区块中的信息了,所以人们一眼就知道第二个区块被篡改了。

可见,区块链上的信息是不可篡改的。随机更改一个块中的信息将导致它与下一个块中的哈希值相矛盾。只有一一修改后,每个区块中的信息才能覆盖最初的信息篡改动作,从而彻底改变原区块链的信息,相当于生成一条新链。

挑战 3:确定交易记录的可靠性和权威性

假设有人篡改了每个区块中的信息并创建了一条新链,我们应该选择信任新链。链条还是旧链条?我们如何确定两者的可靠性和权威性?

工作证明

这使用工作证明。计算机会将前面提到的哈希值转换成由“0”和“1”组成的一系列数字:

00101110111101000000010000011010100100100010111101111100001001010

我们可以指定只有哈希值以0开头的块才能上链,所以有50%的概率得到一个符合要求的块。

0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

同样,如果我们规定只有哈希值以“00”开头的区块才能上链,概率是25%。

00XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

如果规定哈希值必须以32个“0”块开头才能上链,那么概率只有40亿分之一左右。

000000000000000000000000000000XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

比特币区块链也设定了这样的规则。但是,链上每个块的哈希值是恒定的。在输入固定信息的情况下,如何保证得到一个合规的哈希值?这需要向每个块随机添加一个任意值,也称为“nonce”。

散列时随机数与块中的数据组合。比特币区块链中全世界的计算机都需要从大量随机数中找到一个随机数,这些随机数在与现有区块结合后可以计算出从一定数量“0”开始的哈希值,从而使该区块可以列在区块上。链。这种寻找随机数的过程称为工作量证明。

这个过程消耗了大量的计算能力,完成时间无法估量。在比特币区块链中,平均 10 分钟会出现一个新区块。但由于区块链整体算力水平的不断提升,为了增加寻找随机数的难度,比特币区块链也在增加指定哈希值开头的“0”个数。

最长链原理

工作量证明规则有效地限制了新出块的速率,出块的数量越多,链存在的时间越长,它的持续时间就越长。更长。因此,个人不可能创建比官方比特币区块链更长的链,除非该个人的计算能力超过系统中其他所有人的总和。

基于以上原因如何确定我有比特币,当系统中存在多条链时,比特币用户只识别出块数最多、存在时间最长的链,并认为该链上的信息是权威可靠的。

区块链的潜在应用场景

除了比特币,区块链还有哪些应用前景?

我们从上面3个方面简单解释了比特币区块链的工作原理:

· 使用数字签名确认比特币的权利

· 使用哈希验证链上交易的真实完整性

· 使用工作量证明避免链上出现虚假区块

可见,比特币是一个人人都可以信任的区块链中心化账本。但是,除了记录货币交易信息之外,这个账本还可以记录其他各种信息,让其他机构实现去中心化的信息共享。已应用于以下领域。

防止产品假冒:制造商可以在每个产品上附加一个二维码,并将二维码记录到区块链中,可以记录产品的流通信息,帮助消费者追踪产品是否来自可靠的制造商和正品。目前,医药生产行业的造假情况越来越严重,危及患者的健康,急需这样的区块链解决方案。

防范物流信息造假:很多供应链庞大复杂的企业也面临信息造假的问题。他们可以通过创建私有链来跟踪供应商的物流信息。私有链的所有者有权决定区块链的参与者,供应链中的中央企业可以为私有链中的每个供应商设置不同的权限。对于多层次的供应链,货物从小供应商到中型供应商再到大供应商,最终到制造商手中,区块链可以帮助优化整个流程的管理。在这个多层次的供应链中如何确定我有比特币,小供应商一方稍有差错就会给制造商造成损失,但区块链技术可以使整个过程中的信息公开透明,让所有参与方都能及时发现并解决问题。及时的方式。 万向区块链供应链金融服务平台就是一个典型的应用案例。

促进协作:汽车保险理赔通常需要多家保险公司共享数据并协作解决。使用区块链管理相关信息和数据,可以让这些保险公司对链上数据和信息的真实性充满信心,不再需要花费人力去核对和验证数据和信息,从而降低人工成本为保险公司和提高理赔处理效率。 ,以提高业主满意度。

区块链业务挑战与机遇

近年来,区块链的概念非常火热,其中不乏夸张的元素。对于企业来说,最关键的是考虑自己是否有能力用好区块链。

此外,谁来为区块链的投资买单也是一个问题。企业肯定会有这样的顾虑:我为什么要花钱建一个区块链,与业内其他公司合作共赢?钱是我花的,但收益是大家共享的。这体现了私有链和联盟链的优势。花钱建私链或联盟链的一方,有权管理区块链,确保利益最大化。

尽管困难重重,但区块链所蕴含的商业价值还是相当可观的。区块链的特点是让互不信任甚至互不竞争的人或公司可以放心地交换信息。因此,有必要找出商业中信息交换不畅造成的问题,对症下药,用区块链来解决,让参与者各得其所,实现多方利益最大化。