![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
区块链技术
文章平均质量分 94
Demonwuwen
不知不觉过了三年,需要在一个方向深入下去了,加油学习!不负年华!
展开
-
fabric2.X环境部署教程
总结为几个步骤:二进制和CA文件下载源地址链接(经常打不开且下载极慢):二进制CA二进制和CA文件下载链接(本人上载了部分资源)mac选择下载darwin版本、linux选择linux版本即可:https://download.csdn.net/user/weixin_44336181/uploads一、Prerequisite1、安装Git2、安装cURL3、安装docker4、安装JQ(可选不安装,仅在与通道配置事务相关的教程中需要)MAC版:1、安装Homebrew $ /b原创 2021-03-16 16:32:10 · 1702 阅读 · 0 评论 -
ETH——状态树
简单的数据结构trie结构trie结构特点:1、每个节点的分支数目却决于这个key值里每个元素 取值范围。图例中最多26个英文字母分叉+一个结束标志位。2、trie查找效率取决于key的长度。键值越长,查找需要访问内存的次数就越多。实际应用中(以太坊地址长度为160byte,表示成40个16进制的数)。3、理论上哈希会出现碰撞,而trie上面不会发生碰撞,因为trie结构中,只要地址不一样,最后肯定会映射到两个不同的分支。4、给定输入,无论如何顺序插入,构造的trie结构树都是一样的。而Me原创 2020-09-29 19:53:36 · 2131 阅读 · 0 评论 -
北京大学肖臻老师《区块链技术与应用》公开课笔记BTC思考
哈希指针BTC系统中很多地方使用到了哈希指针。指针保存的本地内存地址,只有在本地计算机上才具有意义,如果发送给其他计算机就没有意义了。那么在区块发布时候,哈希指针如何通过网络进行传播?所谓哈希指针,只是系统中一种形象化的方法。实际应用时候,只有哈希而没有指针。回顾之前提过的Block header数据结构:如图该处便为前一个区块的哈希值。因此可见,在block header中只有hash值,没有指针。那么如何查找到前一个区块的内容?全节点一般将区块存储于一个key-value数据库中,key为哈原创 2020-09-29 11:55:18 · 699 阅读 · 2 评论 -
BTC-匿名性
Bitcoin and anonymity比特币中不要求用真名,可以用公钥产生的地址,可以产生任意多的地址,用不同的地址干不同的事情。用的是化名,也被叫做pseudonymity。匿名性可以提供很多隐私保护,原创 2020-09-29 10:36:49 · 834 阅读 · 0 评论 -
BTC-问答
转账交易的时候,转账接收者不在线怎么办?转账交易的时候不需要接收者在线,转账交易只不过是在区块链上记录一下,把我账户上的比特币转到他的账户下,与他当时是不是连在比特币网络上是没有关系的。假设某个全节点收到一个转账交易,有没有可能转账交易中接收者这个收款地址是这个节点以前从没有听过的?可能的,比特币账户在创建的时候是不需要通知其他人的,只需要产生一对公私钥对就可以了,只有在第一次收到钱的时候其它节点才知道这个账户的存在。如果你账户的私钥丢失了该怎么办?私钥丢失过后账户上的钱就变成了死钱,永原创 2020-09-29 00:54:38 · 558 阅读 · 0 评论 -
BTC-分叉
分叉(fork):原来由一条链变为了两条链。造成原因:有可能是两个节点差不多同时挖到了一个区块,然后同时发布出去,这时候就会造成临时性的分叉(state fork);forking attack(deliberate fork);比特币的协议发生了改变,要修改比特币协议需要进行软件升级,在一个去中心化的系统里,升级软件的时候没有办法保证所有的软件都升级节点,大部分节点升级了软件,少数节点因为种种原因没能升级,这种时候也会造成分叉,叫protocol fork。根据对协议修改的内容的不同。可以进一步分为硬分原创 2020-09-28 23:23:58 · 1104 阅读 · 0 评论 -
挖矿难度
H(blockheader)⩽targetH(block header) \leqslant targetH(blockheader)⩽targettargetargetarge是目标阈值,targetargetarge越小,挖矿难度越大,调整挖矿难度,就是调整目标空间在整个输出空间的比例。比特币用的hash算法是SHA-256,这产生的hash值是256位,所以整个输出空间的是22562^{256}2256个可能的取值。挖矿难度与目标阈值是称反比的:difficlty=difficulty(1)ta原创 2020-09-28 19:23:25 · 1551 阅读 · 0 评论 -
BTC-协议
防范 double spending attack:Distribute consensus:distributed hash table。分布式共识。FLP impossibility result。在一个异步的系统里,网络时延没有上限,网络传输即使只有一个成员是有问题,也没法达成共识。CAP Theorem:系统不能同时保证三个状态(CAP:Consistency、Availability、Partition tolerance)同时存在。比特币中的共识协议(Consensus in Bi原创 2020-09-28 11:05:26 · 549 阅读 · 0 评论 -
数据结构
哈希指针( hash pointers):普通指针只是指向结构体的起始地址,而哈希指针除了要保存这个地址之外,还要保存这个结构体的哈希值。这样做的好处是,通过哈希指针不仅能够找到这个结构体的位置,还能够检测出这个结构体的值是否被篡改。区块链就是一个使用哈希指针连接的链表。通过这样的指针结构,可以实现tamper-evident log。如果黄色块内容被修改,其哈希值就会被改变,而后续的所有哈希值都会发生变化。我们只需要记住最后面哈希值,就能知道前面的内容是否有被修改。比特币中有些节点就不一定要保存原创 2020-09-28 00:15:38 · 173 阅读 · 0 评论