《区块链技术驱动金融》读书笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yjp19871013/article/details/81351815

一、密码学及加密货币概述

1.加密数字货币需要去中心化,通过安全规则保证安全,而不是依赖于中央机构

2.密码学可以防止对系统的干扰,还能避免混淆,将新货币创造的规则编码到数学协议中

3.哈希函数有三个特性:

(1) 输入为任意长度字符串

(2) 产生固定大小的输出

(3) 在合理的时间得到输出,一般为O(n)

4. 哈希函数满足三个附加特性:抗冲突能力,隐秘性,谜题友好

5. 哈希函数的输入空间大于输出空间,必然会产生冲突,我们需要保证的是在一定时间内,哈希函数不应该产生冲突

6.隐秘性:如果仅知道哈希函数的输出,我们无法算出输入。可以使用的方法:输入集合大且分散

7.谜题友好:对于任意输出,在很短的时间内我们无法找到对应的输入,也就是除了搜索庞大的输入空间,我们无法获得输出对应的输入

8.安全哈希算法:SHA-256

9.哈希指针是一个指向数据存储位置及其位置数据的哈希值的指针。

10.区块链就是使用哈希指针构造的链表,有简单的链表形式和常见的梅克尔树。

11.我们将区块链的链表头(创世区块)妥善保管,就能够有效防止数据被篡改,因为沿着链表你需要修改所有的哈希值,但是链表头被很好地保护起来。

12.数字签名有两个特性,使之与手写签名类似

(1) 只有你可以制作自己的签名,任何看到的人可以验证其有效性

(2) 签名只与与某一特定文件发生联系,该签名不能用于表明你同意或支持另一份不同的文件

可以对区块链的哈希指针进行数字签名

13.公钥和私钥体系是帮助我们实现去中心化的关键手段,我们可以自己注册用户,而无需一个中央机构将我们注册为系统用户。比特币将这种身份称为地址。

14.高飞币存在的问题,无法解决双重支付的问题,也就是无法解决一个高飞币被同一个所有者使用多次的问题。

15.财奴币无法解决去中心化的问题,需要存在一个财奴来维护交易。

二、比特币如何做到去中心化

1.分布式共识协议

在一个有n个节点的系统中,每一个节点都有一个输入值,其中一些节点具有故障,甚至是恶意的。一个分布式共识协议有以下两个属性:

(1) 输入值的中止须经所有诚实节点来确定

(2) 这个输入值必须由诚实节点来生成

2.在任何时点,所有在点对点网络上的节点都有包含一系列区块的总账本,每个区块中都包含了已经被所有节点达成共识的交易清单。

3.比特币打破了分布式共识经典模型的假设:

(1) 引进了奖励理念

(2) 比特币体系包含随机性这个概念

4.一个交易得到的确认越多,它被纳入长期共识链的概率就越大

5.双重支付攻击成功的概率将随着确认的数目的增加而指数级降低,在比特币生态系统里,最常见的方法是等6个确认

6.防止不正当交易完全是用密码学的方法,但是这些方法被共识所加强,意思是一个节点如果想放进一个密码学上不正当的交易,这个交易不会被纳入长期共识链的唯一原因是绝大多数的节点是诚实的,不会把一个不正当交易放进区块链

7.创造区块的节点可以在区块中加入一笔特别的造币交易,这是新比特币被允许造出来的唯一途径,没有任何其他新增币机制。所以这是为什么比特币最终的数量为2100万。(每生产210000个区块,大约四年,奖励减半,这是一个等比数列,最终求和为2100万)

8.另一种激励机制是交易费,任何交易制造者都可以选择让交易输出值比输入值小,第一个创建区块并把交易放进区块链的人可以获得这个差额作为交易费。

9.挖矿的工作量证明核心理念是,我们把随机选取节点改为根据节点占有某种资源的比例来选取节点,我们希望这种资源是没有人可以垄断的。比特币用哈希函数解密来证明工作量。

10.尽管技术上每个人都可以成为矿工,但由于挖矿的高成本,导致了挖矿生态系统要消耗大量能源。

11.只要以计算能力为权重的大多数矿工遵循比特币协议,或者说是诚实的,那么比特币中的大量攻击就都没有可能发生。

三、比特币交易流程及脚本

1.比特币交易的过程其实就是不停地创建区块的过程

2.每笔交易都有一个输入值和输出值,输入值可以看成是将被消耗的币(前一个交易创造出来),把输出看成是本次交易中创造出来的币

3.一个交易输出的币,要么在另一个交易中被完全消费掉,要么就一个都不被消费,不存在只消费一部分的情况

4.一个比特币交易分为三部分:元数据,一系列输入和一系列输出

5.比特币脚本是比特币的工作控制语言,脚本是堆栈式的,执行比特币脚本只能产生两个结果,执行成功,交易有效;执行失败,交易无效,拒绝记入区块链。

四、如何存储和使用比特币

1.存储比特币就是存储和管理你的私钥

2.存储和管理私钥有三个目标:可获取性,安全性和便利性

3.钱包只是保存小部分比特币,大部分需要存储在其他地方

4.钱包是热存储,相对的,为了安全,使用冷存储将比特币锁在其他地方,冷存储是离线的,热存储只要知道冷存储的地址就可以为冷存储转账

展开阅读全文

没有更多推荐了,返回首页