主页 > imtoken支持bcc > 比特币技术笔记(三)比特币

比特币技术笔记(三)比特币

imtoken支持bcc 2023-06-30 05:12:41

一、比特币的定义

现在我们了解了数字签名,我们终于可以继续讨论比特币的技术定义了。

由于任何货币的价值都体现在付款人和收款人之间的联系,即交易/转账(Transaction)。 因此,比特币被定义为包含支付信息和支付信息的记录比特币收款地址,即:

电子硬币是付款人的一串数字签名。

中本聪的比特币白皮书就用这句话给比特币下了定义,可见这个抽象的定义是非常简洁的。 接下来,将详细解释其含义。 例如我们假设B转0.5BTC给A,那么A收到的比特币定义为:

A的比特币=(B的比特币,A的身份,数量)

为了防止第三方伪造交易,利用B的身份进行转账,需要使用前面提到的“数字签名”技术来证明货币确实是付款人B发行的。同时,B的身份收款人A由A的公钥指定,则:

A的比特币=B的私钥加密(B的比特币,A的公钥,金额0.5)

因此,转币是公开发布一个字符串,按照以下规则生成:

Payee's BitCoin = payer's private key encryption(付款人的比特币,收款人的公钥,金额)

可以发现比特币的定义是递归的。 也就是说,从其付款人拥有的有效比特币派生的有效比特币。 这就引出了一个问题:那么第一个比特币是如何定义的呢? 这个问题后面会在区块链中解释。

2. 交易验证:

收款人收到比特币后,为了验证其有效性,需要证明以下三个问题:

在具体操作中,收款人使用付款人的公钥对比特币进行解密,得到以下信息:

首先,通过付款人的公钥成功解密货币,证明了付款人的真实性。 其次,核对收款人的公钥和金额,确认支付信息是否正确。 最后,需要验证付款人的比特币是否真的有效。

付款人的比特币的有效性通过先前付款人的公钥解密并递归验证。 直到验证有效的创始比特币。

3.改变

在实际的比特币支付中,可能会出现两种情况:

A支付了10个比特币给B比特币收款地址,B需要将收到的10个比特币拆分成5个比特币支付给C。这就是比特币的拆分问题,也叫“找零”。 A和B都已经支付了5个比特币给C,现在C需要支付10个比特币给D,这就是比特币合并问题。

针对这些需求,比特币做出了这样的规定:任何比特币交易都可以包含无限数量的支付比特币,并且最多包含两个接收地址。

那么对于上面的情况1,您可以使用以下支付方式:

C收到的比特币=(

付款人:B的10.0个比特币,

收款人1:B,收款金额5.0,

收款人2:C,收款金额5.0

)

即在支付过程中,通过将自己设置为第二收款人,实现“找零”的功能。

对于上述情况1,可以使用以下支付方式:

D 收到的比特币 =(

付款人 1:来自 C(来自 A)的 5.0 个比特币,

付款人 2:来自 C(来自 B)的 5.0 个比特币,

收款人1:D,收到金额为10.0,

)

即在支付过程中,可以将分散的金额设置为支付人,实现合并支付。 不仅如此,还可以同时使用联合支付和找零,实现比特币的灵活流通。

4. 费用

从理论上讲,比特币交易中支付和接收的总金额应该相等。 然而,在现实中,收到的金额往往少于支付总额。 差异称为比特币交易的“费用”。

例如:A向B转1.0比特币的交易信息可能是

B 收到的比特币 = (

付款人:来自 A 的 1.0 比特币,

收款人:B的收款金额为0.99,

)

那么这笔交易的手续费是0.01。

所有交易费用将由比特币网络的维护者(即计算节点)收取,这将在下一篇文章中介绍。

相关文章: 比特币技术笔记(一)简介 比特币技术笔记(五)运行模式概述 比特币技术笔记(六)安全 比特币技术笔记(七)宏观分析