首页 资讯 正文

比特币是怎么在交易中的加密是怎么回事?

小白教程 2019年04月29日 01:21

前面几节课,我们了解了比特币的交易机制,以及期货这块,今天我们再来学习一个新知识,比特币是怎么在交易中进行加密的呢?

比特币底层技术区块链技术拥有很高的开发性、匿名性、自治性,它的信息不可串改,非常注重“去中心化”。

带大家看一张老图,相当经典,能很直观地准确地理解比特币交易流程,话不多说,看图。

这张老图还是比较全面的,所以小号觉得还是有讲的意义!

一、钱包和地址

1、Bob和Alice的电脑上都有比特币钱包。

2、钱包是一种文件,可以让用户访问多个比特币地址。

3、一个地址是一串由字母和数字组成的字符串。

4、每一个地址都有自己的比特币余额。

二、新建一个地址

5、Bob创建一个新的比特币地址,用于接收Alice的付款。

三、私钥和公钥

6、当Bob创建一个新地址时,他真正在做的是生成一个密钥对,由一个私钥和一个公钥组成。如果你使用私钥(只有你知道)对一个消息进行签名,它可以被对应的公钥(所有人都知道)所验证。Bob的新地址代表一个唯一的公钥,对应的私钥则保存在他的钱包里。公钥允许所有人来验证被私钥签名的消息的有效性。

7、可以将地址看做银行账号,但工作方式稍有不同。比特币用户可以任意创建多个地址,并且被鼓励为每一个新的交易单独创建新地址,以增强隐私性。只要没有人知道哪些地址是Alice的,她的匿名就受到保护。

四、提交一个支付

8、Alice告诉她的比特币客户端,她要向Bob的收款地址转账。

9、Alice的钱包里有她的每一个比特币地址的私钥。比特币客户端用Alice此次使用的付款地址的私钥,对她的这一交易申请进行签名。

10、此时,网络上的任何人都可以使用公钥来验证,这个交易申请实际来自一个合法的账户所有者。

五、验证交易

11、Gary、Garth和Glenn都是比特币矿工。

12、他们的电脑将过去约10分钟内的交易打包成一个新的交易区块。

13、矿工的电脑被设置用于计算加密哈希(Cryptographic Hash)函数。

14、加密哈希函数将一个数据集转换成特定长度的包含字母和数字的字符串,称为哈希值。源数据的细微改变会彻底改变哈希值的结果。并且基本不可能预测初始的数据集将会产生的特定哈希值。

15、为相同的数据创建不同的哈希值,比特币使用随机数来实现。随机数是在进行哈希计算之前,在数据中添加的随机数字。改变这个随机数会产生极不相同的哈希值。

16、每一个新的哈希值包含关于此前所有比特币交易的信息。

17、矿工的电脑基于前一个区块的哈希值、新交易区块和随机数,来计算新的哈希值。

18、矿工无法预测哪个随机数会产生以要求的数量的0作为开始的哈希值,所以他们被迫用不同的随机数创建很多哈希,直到获得有效的那一个。

那么比特币到底采用的是什么加密技术呢?

为了让交易在无需第三方信任机构的参与之下安全进行,比特币系统采用了一种名为非对称加密的密码学技术。

非对称加密,指的是信息加密以及解密过程中使用了不同的密钥。具体来说,非对称算法由公有密钥和私有密钥组成,如果使用私钥对数据进行加密,只有利用对应的公钥才能进行解密。

比特币系统中的私钥由随机生成器生成,再通过椭圆曲线、哈希函数等等单向、不可逆算法推导出公钥以及地址。所以说,即使将地址以及公钥公开在网络上,也无法借其推导出私钥(截至目前为止,还未有人可破解这项技术),拥有私钥就等于拥有比特币的所有权。

正因如此,比特币网络中的用户无须通过身份验证就能确保自身加密货币资产的所有权。用户使用私钥生成交易,矿工利用公开于网络的公钥进行信息验证,便能进行资产所有权的安全匿名转移。

非对称加密算法在这里承担了权威第三方的认证工作。

小号叨叨叨

好了,关于比特币的交易,以及交易过程中的加密技术,交易过程的复杂性是可想而知的,小号再次提醒大家,要看清楚转账地址哈,不然后果很麻烦的。下节课和大家讲讲怎么进行交易吧!