区块链
文章平均质量分 53
区块链冲鸭!
云灬沙
区块链
展开
-
哈希时间锁定机制
之前收藏过好几次这篇文章,链闻、巴比特等平台,但是都没了,所以才复制了一篇过来撰文:钱柏均,就职于 HashKey Capital Research审校:邹传伟,万向区块链、PlatON 首席经济学家新加一些东西:闪电网络最近提出了PTLC(Point Time LockedContracts),去掉了HTLC中对哈希的使用,更保护交易的隐私和安全。PTLC以标量和支付点取代了原像和哈希值的设置,之后的节点都要求不同的随机数,因此难以识别具体路径上的节点【来源于HashKey2021年数字资产行转载 2022-02-17 19:53:20 · 2257 阅读 · 0 评论 -
Hyperledger Fabric 1.4环境搭建【详尽】
操作系统:Ubuntu 16.04/18.041. 安装依赖工具1.1 go语言test@ubuntu :~/Soft$ wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gztest@ubuntu :~/Soft$ sudo tar -zxvf go1.14.2.linux-amd64.tar.gz -C /opttest@ubuntu :~/Soft$ echo "export GOROOT=/opt/go" >> ~原创 2021-07-27 15:18:19 · 561 阅读 · 0 评论 -
简单理解一下NFT是什么
NFT(Non-Fungible Token)非同质化代币具有不可分割,独一无二的特性先来说不可分割有两种比较知名的代币标准,ERC-20,ERC-721其中ERC-20标准就是可以精确到小数点后18位,比如0.0000000000000yue再简单一点,发红包可以发到0.01元,这种标准就相当于将代币切割了,我们常说你有几枚BTC,其实不该那么问,因为是可分割的,加上手续费等很难拿到达成一个整数。那么再说回ERC-721这个标准,只能精确到整数位,钉是钉,铆是铆。一个算一个,没有就没有,不和你原创 2021-07-26 22:08:02 · 925 阅读 · 0 评论 -
2021世界区块链大会·杭州
7月24-25日,2021世界区块链大会·杭州即将开幕有V神和各路大神参与!!政策更明朗 !中国区块链产业化之路6月7日,工信部、中央网信办联合发布重要文件,要求到2025年,中国区块链产业综合实力达到世界先进水平,产业初具规模。文件甚至非常具体的提到要培育一批区块链名品、名企、名园,快打造完备的区块链产业链。该指导意见彻底点燃了国内区块链创业者心中的烈火,中央和地方各级政府的政策支持有了,现在具体的奋斗方向也有了。世界区块链大会·杭州将是该文件颁布以来国内首个大型区块链峰会,国内头部的联盟链大厂原创 2021-07-17 17:44:40 · 3129 阅读 · 5 评论 -
记录学习pet-shop的一些坑
pet-shop是一个比较好的小项目用来熟悉truffle以及以太坊开发流程。首先最大的坑肯定是环境的问题,我的配置:Truffle v5.3.4 (core: 5.3.4)Solidity v0.5.16 (solc-js)Node v14.17.0Web3.js v1.3.5ganache-cli@6.12.2 ubuntu16.04如果有很多小伙伴出现问题实在解决不了,可以考虑换一下环境npm uninstall truffle npm intsall -g truffle@5.原创 2021-06-18 00:19:12 · 1824 阅读 · 4 评论 -
如何在智能合约中安全地生成一个真正的随机数?
随机数和区块链一直很难达到“一致”(区块链要求确定性,而随机数正相反)。原因是:交易被矿工出块后,需要网络上的多个节点来确认才算真实有效。就要求每个节点验证时都必须得出相同的结果。如果函数是随机的(每次运行的结果不一样),则每个节点将得出不同的结果,从而导致交易得不到确认。到目前为止,已有的方法都不算是真正的随机,或存在操控的可能。设计的原则[1][1]翻译自https://ethereum.stackexchange.com/questions/191/how-can-i-securely-ge原创 2021-06-06 17:41:23 · 2253 阅读 · 0 评论 -
Solidity语言-----【够用级别】
Solidity微教程学习solidity说实话到目前没有特别好的教程,但是CryptoZombies,通过游戏来学习绝对算一个比较好的方式,对于入门和编写基本的合约绝对够用本文是对Zombies的知识的提炼,可以与Zombies配套使用0.简介Solidity是一种静态语言,在编程中需要指定每个变量的类型。语法与JavaScripts比较接近1.版本声明关键字:pragma soliditypragma solidity ^0.4.0;表明源代码使用Solidity版本0.4.0写的,并原创 2021-06-06 15:48:29 · 4719 阅读 · 2 评论 -
区块链技术与应用【肖臻老师】笔记整理之------26-完结
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术保险理赔放到区块链上有什么问题?理赔的内容本身很多时候是需要人工审核的,区块链并没有好的优势,支付技术本身不是瓶颈用区块链做防伪溯源,比如溯源有机蔬菜的全过程,这样有什么问题?区块链的不可篡改性是指内容写到区块链是不可篡改的,但是本身就是假的内容,区块链是检测不出来的没有监管的同时也意味着没有保护Crypto currrency应该.原创 2021-05-21 20:49:48 · 599 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------25-ETH-美链
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术Beauty ChainICO:Initial Coin Offering问题出在uint256 amount =uint256(cnt)*_value;如果value的值很大话可能会产生溢出,amount就会变为一个很小的值减去很少的值,增加很大的value,凭空多发行了很多的coin反思: 数学运算的时候一定要考虑溢出的可能性.原创 2021-05-21 18:31:45 · 376 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------24-ETH-反思
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术Is smart contract really contract?Smart contract is anyting but smart没有人工智能,只是自动Irrevocability is a double edged sword不可篡改性是一把双刃剑既可以保证安全性但是也会带来问题,出现问题也不可以改Nothing is irr.原创 2021-05-21 17:39:11 · 392 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------23-ETH-TheDAO
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术以太坊实现了去中心化的合约DAO:Decentralized Autonomous Organization去中心化的自治组织The DAO:凸显民主,智能合约,伟大的尝试,引起了积极反响,众筹了当时价值1.5Y$的ether,可以用The Dao 的token决定你投哪个项目如果想要从The DAO 的token转为Ether?只能使用拆分的.原创 2021-05-21 16:13:28 · 469 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------17-ETH-交易树和收据树
每次发布交易的时候,区块里面的交易会组织成一棵交易树,也是一棵Merkle Tree每个交易执行完会生成一个收据,记录交易的相关信息,交易树与收据树上面的节点是一一对应的。增加收据树主要是因为以太坊的智能合约比较复杂,便于我们快速查找从数据结构上讲,交易树和收据树都是MPT交易树和收据树只把当前区块里的交易包含进去,状态数要把所有账户的状态包含进去交易树和收据树有什么用呢?提供Merkle Proof所有与某个智能合约有关的交易,所有众筹事件。需要高效的查询效率,怎么办呢?引入了原创 2021-05-17 13:23:12 · 302 阅读 · 5 评论 -
区块链技术与应用【肖臻老师】笔记整理之------16-ETH-匿名性
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术完成的功能:账户地址->账户状态的映射 address->state 地址是160bits 40个16进制的数状态就是指外部账户与合约账户的状态,包括余额,交易次数nonce,对合约账户还包含代码和存储对于设计什么样的数据结构来实现这个映射的思考?是不是很直观的key-value pair就可以呢(哈希表)?.原创 2021-05-09 12:23:54 · 742 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------15-ETH-账户
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术BTC使用的是基于模型的,Transaction-based ledger,想要只要余额需要根据UTXO模型一个个找,可能自己都不知道有多少钱,好处是隐私性比较好,但是比较别扭,与日常体验不一样BTC中UTCXO别扭之处:)1.A->B(10BTC),A可能一个来自于D(5BTC),另一个输入来源于E(5BTC),提供之前的输出,才能狗进行交易,2..原创 2021-05-06 21:18:26 · 245 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------14-ETH-以太坊概述
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术出块时间进行调整:出块时间调整到10几秒基于Ghost协议改进的共识机制mining puzzle:比特币的是计算密集型的,比拼的是计算哈希值的算力 造成的结果是挖矿设备的专业化以太坊的是memory hard ming puzzle,ASIC RESISTANCE之后会->PROOF OF STAKE对智能合约的支持smart .原创 2021-05-06 20:27:42 · 361 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------13-BTC-思考
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术哈希指针指针只是保存本地的地址信息,那么哈希指针是怎么在网络进行传播的?所谓的哈希指针只是一种形象的说法,实际在用的时候只有哈希没有指针全节点将这些这些区块存到Key-value数据库里面,例如levelDB区块恋:情侣每人保留私钥的一半。截断私钥的做法会降低安全性。多人共同管理建议使用多重签名分手导致UTXO永远存在区块链中,对全节点并不.原创 2021-04-30 16:10:49 · 244 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------05-BTC-实现
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术比特币基于UXTOUnspent Transcation Output每个交易的输入会使用到前一个或多个输出的信息,也会产生新的输出。【仅针对交易,Proof of Burn不算】total inputs > total outputs目前,transcation fee远远小于coinbase reward。等到未来coinbase reward变少.原创 2021-04-30 12:43:36 · 276 阅读 · 10 评论 -
区块链技术与应用【肖臻老师】笔记整理之------06-BTC-Network
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术Application layerrun BTC BlockchainNetwork layerP2P networkBTC网络设计原则 simple.robust but not efficient简单,鲁棒而非高效当节点离开时,只需要自行退出即可,其他节点在一定时间后仍然没有收到该节点消息,便会将其删掉。每个节点都要维护一个等待上.原创 2021-04-30 12:22:22 · 681 阅读 · 2 评论 -
区块链技术与应用【肖臻老师】笔记整理之------07-BTC-难度
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术出块时间太短会有什么问题? 大家minging速度都很快,很容易分叉,在自己的范围内传播, 对达成共识没有好处,安全性会降低区块难度调整2016块就调整2016*10/(60*24)=14天调整 一次难度如何调整target=target*(actual time)/(expected time)difficulty=previous d.原创 2021-04-30 12:04:10 · 169 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------08-BTC-Minging
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术BTC Minging用到的是整数操作GPU中运行浮点数的部分闲置ASIC 专门的挖矿设备,只能挖一种,一个芯片只能用一种币mining puzzlePool of minging云minging也是需要工作量证明的,提交给pool manager [share],即almost valid block就是接近结果的值,看最后提交的数量结果来分配收益mi.原创 2021-04-30 12:01:58 · 180 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------12-BTC-匿名性
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术如果银行用化名,隐私性,匿名性和BTC相比哪个更好? 银行的更好,因BTC的账本是公开的,银行是受控制的,银行工作人员可以查询,但是普通老百姓并不能查询银行的流水BTC什么情况下会破坏匿名性?创建了多个账户,但是这些账户可能会关联起来输入一般不会正好等于输出,所以一般是同一个人的多个账户,输出的话还可能会使用自己的地址来接收零钱,所以可以通过分析.原创 2021-04-30 11:57:44 · 1555 阅读 · 4 评论 -
区块链技术与应用【肖臻老师】笔记整理之------11-BTC-问答
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术Q&A转币给某个人,但是其并不在线,这时候会出现什么情况?不需要在线,他当时连不连在网络里是没有关系的假设某个全节点接收者的地址是这个节点从来没有听说过的?可能,比特币账户的创建是完全不需要通知其他人的,只有在第一次收到钱的时候其他节点 才可以知道如果你的私钥丢失了那怎么办?没有人可以给你重置密码,所以丢失了谁也没有办法,在.原创 2021-04-30 10:34:51 · 168 阅读 · 1 评论 -
区块链技术与应用【肖臻老师】笔记整理之------10-BTC-分叉
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术分叉:原来是一条链,现在变成了两条链产生分叉的原因state fork:出现了不同的块状态,例如两个区块同时被挖出,产生了分叉forking attatck :分叉攻击也属于state fork,这个是属于故意造成的,所以也叫deliberate forkprotocal fork :因为对比特币协议产生分歧而产生的分叉,可能是因为不支持新的协议,.原创 2021-04-29 23:21:53 · 330 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------09-BTC-脚本
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术比特币使用的脚本语言是非常简单的,唯一能访问的内存空间就是一个堆栈 ,不像C,C++那样有全局变量和局部变量还有动态分配的内存空间所以叫基于栈的语言stack base language看一下交易的宏观信息,交易结构size:交易的大小locktime:用来表示交易的生效时间,0表示立即生效,10表示10个区块之后才能写进区块里面time:.原创 2021-04-29 21:04:59 · 981 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------04-BTC-共识协议
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术FLP impossibility result在一个异步系统中,网络传输延迟没有延迟,只要系统中有一个成员是faulty,也无法达成共识CAP TheoremCAP是下面三个性质首字母的缩写该理论是分布式理论中一个很有意义的理论。分布式数据存储不可能同时满足三个性质,即鱼和熊掌不可兼得,最多满足两个做到极致:Consistency 一致性:所有节点在.原创 2021-04-28 15:25:52 · 273 阅读 · 0 评论 -
区块链技术与应用【肖臻老师】笔记整理之------03-BTC-数据结构
注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术Blockchain is a linked list using hash pointers. 区块链就是一个使用哈希指针的链表。哈希指针理解一下哈希指针和普通指针的区别指针我们都知道是指向存储数据的位置。哈希指针,就是一个指向数据存储位置,以及该存储位置里面的数据的哈希值的指针,区别就在于多了一个数据的哈希值存储,一个普通的指针可以告诉你数据存储的位.原创 2021-04-27 20:58:08 · 294 阅读 · 3 评论 -
SPDX license identifier not provided in source file.
sol编译时出现警告,生成不了ABI文件,在.sol文件第一句加上// SPDX-License-Identifier: SimPL-2.0原创 2021-04-13 20:52:10 · 1089 阅读 · 0 评论 -
区块链之分叉
分叉是解决可扩展性问题的一个手段。分叉:对区块链的共识规则做一些改变(更新软件)分叉分为硬分叉和软分叉:硬分叉:无法向前兼容,旧节点无法认可新节点产生的区块软分叉:可以前后兼容,旧节点可以兼容新节点产生的区块...原创 2020-12-14 22:13:54 · 199 阅读 · 0 评论 -
Raft共识算法
http://thesecretlivesofdata.com/raft/贴一个网址,讲的很好,动画的形式,读完就懂流程。????插眼后补原创 2020-12-14 17:35:18 · 83 阅读 · 0 评论 -
PBFT共识算法
PBFT解决了原始拜占庭容错算法效率不高的问题,将算法的复杂度由指数级降低到多项式级。PBFT主要分为三个阶段:pre-perparepreparecommit前两个阶段主要是为了将在同一个视图里发送的请求排序,且使得网络中的每个节点都认可这个序列并按序执行。如上图所示,现在我们有四个节点,且没有故障节点和问题节点(坏节点个数记为fff),并假设R0为主节点,R1,R2,R3为从节点。过程:1.客户端(图中的左上角)首先发送请求到各个副本节点,主节点R0收到请求之后向所有从节点R1,R2原创 2020-12-14 17:24:40 · 533 阅读 · 0 评论 -
拜占庭将军问题
是一个分布式对等网络通信容错问题。在分布式计算中,不同的计算机通过通讯交换信息达成共识而按照同一套协作策略行动。问题的提出背景:有时候,系统中的成员计算机可能出错而发送错误的信息,用于传递信息的通讯网络也可能导致信息损坏,使得网络中不同的成员关于全体协作的策略得出不同结论,从而破坏系统一致性。拜占庭将军问题被认为是容错性问题中最难的问题类型之一。首先,拜占庭只是一个国家的名字,古代东罗马帝国,又名罗马尼亚。不要多想。问题是这样的:一组拜占庭将军分别各率领一支军队共同围困一座城市。为了简化问题,将原创 2020-12-14 16:37:09 · 181 阅读 · 0 评论 -
区块链是什么?
个人认为对区块链很好的一个定义:利用对等网络和密码技术实现的密码货币系统,交易账单不可逆,不可伪造,不可否认,可以验证我认为大部分对区块链的定义起源于比特币,但是现在以太坊和Hyperledger也已拥有话语权,再加上我个人对货币很抵触,所以最后我给它的定义:利用对等网络和可靠的密码技术实现的加密流水账系统。写下的流水账不可删改,不可伪造,不可否认,可以让所有能看到流水账的人验证!请记住它的特征点:对等网络,密码技术,流水账(自行脑补)不可逆,不可伪造,不可否认,所有人可验证,去中心化再来一个原创 2020-12-12 22:42:17 · 250 阅读 · 0 评论