区块链之风云往事
文章平均质量分 81
专注区块链技术的传播与应用,深入区块链技术的研究和探讨,区块链应用场景的分析和实践
一生中所爱
在追求提高自己的路上越走越远。。。。沟通、交流相关内容请私信获取联系方式
展开
-
【问链财经-EOS公开课】 第十九课 EOS存储之IPFS
编者按:EOS每秒百万的tps如果要实现的话,按照一个交易数据100字节计算,1天的区块数据量为1000000 * 100 * 60 * 60 * 24 = 7.8TB,一年的区块数据量为7.8 * 365 = 2868TB,到了2023年大约需要14340TB的存储空间,这是非常庞大的一个数字,需要花费巨大的成本支出,这还不包括智能合约用户上传的数据,为了解决这个问题,EOS采用了IPFS协议...原创 2018-12-30 09:05:27 · 982 阅读 · 0 评论 -
【问链-EOS公开课】第十七课 EOS中文白皮书1.0
EOS.IO技术白皮书作者:block.one2017年6月5号翻译:Harvey老狼、谭智勇、宋承根@OracleChain,梓岑@YOYOW本中文白皮书翻译自EOS白皮书英文版,如果有表述不一致的地方,以英文版本为准。摘要EOS.IO软件引入了一种新的块链架构,旨在实现分布式应用的性能扩展。这是通过创建一个可以构建应用程序的类似操作系统的架构来实现的。该软件架构提供帐户,身份验证,...翻译 2018-11-09 10:47:49 · 769 阅读 · 0 评论 -
【问链-EOS公开课】第十六课 EOS中文白皮书2.0
摘要EOS.IO软件引入了一种新的区块链架构,意在实现去中心化应用的性能扩展。通过创建类似操作系统的结构,在此基础上可构建各种应用程序。该软件提供帐户、身份验证、数据库、异步通信以及在数以百计的CPU或群集上的程序调度。该技术的最终形式是形成一个区块链架构体系,能支持每秒数百万次交易、免除用户费用,并允许在受控区块链的背景下,迅速、便捷地发布去中心化应用程序。注意:本白皮书中所提到加密令牌是指...转载 2018-11-08 18:30:28 · 489 阅读 · 0 评论 -
【问链-EOS公开课】第十五课 用cleos注册EOS主网账户、投票和发币
第一步: 安装dockerhttps://www.docker.com/community-edition#install docker for CentOS. (其他操作系统看上面链接)sudo yum install -y yum-utils device-mapper-persistent-data lvm2sudo yum-config-manager --add-repo ht...转载 2018-10-31 10:36:33 · 578 阅读 · 0 评论 -
【问链-EOS公开课】第十四课 EOS从单签名到多签名
一、基本知识账户:是存储在区块链上的人们可识别的ID。权限:每个事务都有,它是由已配置许可的账户所评估的。阈值:每个被命名的权限都有一个有效范围,必须满足是在许可下的一个签名事务,将被视为有效。签名:事务的签名是通过利用一个客户端来执行,该客户端拥有一个已加载并已解锁的钱包。钱包:可以保护及使用你的keys的一个软件。这些keys可能是也可能不是区块链授权的一个许可账户。钱包钱包是一...转载 2018-10-24 14:41:01 · 502 阅读 · 0 评论 -
【问链-EOS公开课】第十三课 EOS插件机制深入解析
插件体系EOS插件由三层类来实现。最顶层是抽象类abstract_plugin,定义了插件的基本接口。中间层是插件模板类plugin,主要用来解决插件之间依赖调用。最底层是具体插件类,专注单个插件的业务功能实现。nodeos进程启动后第一步是注册插件,在eos/programs/nodeos/main.cpp中看到int main(int argc, char** argv){ ...原创 2018-10-17 15:26:45 · 543 阅读 · 5 评论 -
【问链-EOS公开课】第十二课 EOS整体代码结构
*EOS由programs、plugins、librarires、和contracts四部分组成,可以看出石墨烯的架构和EOS的架构是很相近的,EOS增加了对智能合约的支持。实际上EOS并没有直接用石墨烯的源代码,而是重写了90%的代码,不过基本架构是一样的。*programs(应用层)cloes:客户端命令行交互模块,用于解析用户命令,根据具体命令请求调用相应的接口,例如查看区块信...原创 2018-10-17 14:42:29 · 387 阅读 · 0 评论 -
【问链-EOS公开课】第十一课 EOS 智能合约相互调用
EOS中合约之间是可以相互调用的,主要通过inline action完成合约之间的调用。譬如在掷骰子游戏中,存在两个玩家先下注资金,然后比较骰子大小后决定胜负,赢的那一方将获得所有的下注资金。在eosio源代码eos/build/contract/dice 智能合约示例中,Alice和Bob是两个玩家,他们各自将资金账户里的3个EOS作为赌注,先抵押给Dice账户,然后在游戏决出胜负后,Dice...原创 2018-10-12 22:46:03 · 1774 阅读 · 0 评论 -
【问链-EOS公开课】第十课 EOS 错误码整理
EOS 目前大约有180种错误类型,虽然有错误码,但是还是很笼统的,具体的报错信息还得看detail里面的内容一、常见的错误码以及issue上对应的错误记录3010001 Invalid name账户名格式1-12位(a-z,1-5,“.” ) 且”.”不能在首尾https://github.com/EOSIO/eos/issues?utf8=✓&q=30100013010004...原创 2018-10-12 16:55:42 · 1168 阅读 · 0 评论 -
【问链-EOS公开课】第九课 EOS 数据库与持久化 API(二)
上次的文章详细讲解了 EOS 数据库的架构,本文将以官方示例为基础,详解 EOS 数据库的开发实战。基本步骤在智能合约里与 EOS 数据库交互,首先要定义存储的数据:定义对象:具体就是定义一个 C++ 类或者 C++ 结构体,数据表就由一个个对象组成。定义主键:在刚才的类/结构体中,定义一个const类型的成员函数primary_key(),返回值必须为uint64_t类型,返回值即为主键...转载 2018-09-30 18:14:54 · 354 阅读 · 0 评论 -
【问链-EOS公开课】第八课 EOS 数据库与持久化 API(一)
在 EOS 中,智能合约执行完毕后,所占用的内存会释放。程序中的所有变量都会丢失。如果智能合约里要持久地记录信息,比如游戏智能合约要记录每位用户游戏记录,本次合约执行完毕后数据不能丢失,就需要将数据存储到 EOS 数据库中。与数据库交互的 API 被官方成为 Persistence API,中文可以叫做持久化 API。下图说明了 EOS 智能合约在执行 Action 时,与数据库的交互过程。为...转载 2018-09-30 18:01:03 · 329 阅读 · 0 评论 -
【问链-EOS公开课】第七课 EOS 宪法草案与 BP 协议
宪法草案设计原则:第一条–不说谎(EOS用户不得因为利益故意伪造或进行误导性陈述,这种行为将是违宪的并且将是可控告的)第二条–产权(EOS将是一个有产权定义的区块链或社区,在链上或仲裁程序的范围内简历个人不可侵犯的财产权)第三条–仲裁(EOS将提供一个“治理区块链”,通过有约束力的仲裁解决纠纷)第四条–选民独立(令牌持有者可以选择块生产者,选民选举必须公平公正,不得因为某些利益而选...转载 2018-08-22 12:48:55 · 311 阅读 · 0 评论 -
【问链-Eos公开课】第一课 EOS简介
一.Eos简介EOS(Enterprise Operation System),企业操作系统,是为企业级分布式应用设计的一款区块链操作系统。相比于目前区块链平台性能低、开发难度大以及手续费高等问题,EOS拥有高性能处理能力、易于开发以及用户免费等优势,极大的满足企业级的应用需求,被誉为继比特币、以太坊之后区块链3.0技术。EOS 提供帐户,身份验证,数据库,异步通信以及在数以万计的CPU或群集...原创 2018-06-25 16:03:07 · 1254 阅读 · 0 评论 -
【问链-Eos公开课】第二课 EOS环境搭建(Ubuntu系统下)
1、EOS三个组件: nodeos:服务端区块链节点组件,也就是区块生产节点,用于接受客户端的远端请求,并打包区块,主要包含四个插件,chain_plugin、http_plugin、net_plugin、producer_plugin。cleos:命令行接口,与区块链交互,管理钱包,管理账户,在区块链上调用方法。(很重要,相当于以太坊web3),根据具体命令请求调用相应的接口,例如查看...原创 2018-06-25 21:27:00 · 1046 阅读 · 0 评论 -
【问链-Eos公开课】第三课 EOS 的新共识机制 BFT-DPoS
EOS 最新的白皮书中已经将共识机制从 DPoS 升级为了 BFT-DPoS(Byzantine Fault Tolerance - Deligated Proof of Stake,带有拜占庭容错的委托股权证明),本篇文章将详解新共识机制的原理。传统 DPoSEOS 项目刚刚发布的时候的共识机制是 DPoS(Deligated Proof of Stake,委托股权证明),类似于 Bit...转载 2018-06-28 19:47:54 · 559 阅读 · 0 评论 -
【问链-Eos公开课】第四课 EOS 的钱包创建、导入私钥
1.检查wallet_api_plugin首先,需要nodeos的config.ini中,已经加载了wallet_api_plugin(钱包API插件)。可以在 ~/.local/share/eosio/nodeos/config/目录下,打开config.ini文件,然后使用gedit命令编辑:gedit config.ini在文本最后插入以下配置:# Enab...原创 2018-07-09 14:16:57 · 2065 阅读 · 0 评论 -
【问链-Eos公开课】第5课 组建单机多节点EOS网络
1.配置nodeos节点的初始集我们将启动许多nodeos,nodeos,将它们指向彼此,并最终对一组生产者进行投票。所有的nodeos节点都将在同一个服务器上运行。在接下来的章节中,我们将采取各种步骤来准备我们的候选生产者。producer1、producer2作为出块节点,user1、user2作为普通节点。 2.为每个nodeos创建配置和数据目录因为所有的node...原创 2018-07-30 09:51:04 · 621 阅读 · 0 评论 -
【问链-EOS公开课】第六课 什么是石墨烯技术?
Graphene,石墨烯,是EOS创始人Daniel Larimer带领Cryptonomex 公司团队一起创立的区块链底层技术架构,GitHub 项目地址:https://github.com/cryptonomex/graphene,Daniel基于此架构开发了Bitshares, Steem, EOS等具有深远影响的项目,基于此架构开发的著名区块链项目还有欧链, Crypviser, Das...原创 2018-08-01 19:10:01 · 1541 阅读 · 0 评论 -
【区块链基础知识系列】 第6课 区块链之分片技术(sharding)-区块链扩容问题的良方
进行区块链扩容的一个答案就是分片技术(Sharding)。分片技术承诺通过改变网络验证的方式来增加吞吐量。分片技术独特于其他解决扩容的链上技术的关键特性,就是它可以进行水平扩容,也就是说,网络的吞吐量随着挖矿网络的扩展而增加。这种特殊的特性可能使它成为推动区块链技术被快速采用的理想技术。本文将简要地讨论现有区块链平台的扩容问题,因为大多数读者都必须要熟悉这一问题。然后我们将进一步讨论分片技术和...原创 2018-05-12 09:39:46 · 3106 阅读 · 0 评论 -
区块链基础知识系列 第一课 区块链网络简介
区块链是一种分布式分类帐技术 (DLT),通过建立新一代事务性应用程序的新信任度、可计帐性和透明度,来简化业务流程。区块链网络首次引入到了比特币兑换市场,但其实际使用范围远远超出了加密数字货币事务处理。IBM Blockchain 与 Linux Foundation 的 Hyperledger 项目一起,将使人们重新构想最基本的业务交流,从而开启新的数字互动世界之门。Blockchain 通过创...原创 2018-02-09 16:57:47 · 1173 阅读 · 0 评论 -
区块链基础知识系列 第二课 区块链共识算法
共识算法解决的是对某个提案(proposal)大家达成一致意见的过程。PBFT(拜占庭容错)算法 -Fabric 0.6采用五个阶段:request,预准备(pre-prepare)、准备(prepare)、和确认(commit),reply步骤: 1.从全网节点选举出一个主节点(Leader),新区块由主节点负责生成 2.Pre-Prepare:每个节点把客户端发来的交易向全网广播...原创 2018-02-26 22:55:01 · 3271 阅读 · 0 评论 -
区块链基础知识系列 第三课 区块链中的默克尔树
“区块链是实现无中心分布式总账的一种技术。除了采用块、链结构的典型区块链以外,还有其他的方式实现分布式总账这个需求。总账技术的基本单元是‘交易’,整个账本是由一条条的交易构成。‘块’类似于账本中的页,每页都记录了若干条交易,把一页一页的账页按照时间顺序装订起来,就形成了一个完整的账本——‘区块链’。‘块’是交易的容器,‘块’通过密码学算法相连接,形成了按照时间序列的‘链’。这种组织账本的好处是由密...原创 2018-03-03 14:56:49 · 1228 阅读 · 0 评论 -
区块链基础知识系列 第四课Hyperledger fabric 1.0网络组成及构建流程
一、fabric网络结构(暂时不包括CA)如上图所示,在fabric网络中,O表示Orderer,P代表Peer,EP代表Endorsing Peer(endorser),CC代表Chaincode以及Client、Channel、Ledger、Transaction,由它们组成了整个网络,下面对每种元素进行介绍: Client:安装在节点(Peer)处的客户端,原创 2018-03-12 11:11:27 · 1176 阅读 · 0 评论 -
区块链基础知识系列第5课 Hyperledger fabric1.0网络中transaction产生以及流转过程
一、发起transaction当client想要发起一个transaction时,它会首先发送一个PROPOSE消息到它选择的一组endorser节点,消息模式有以下两种,节点可以自由选择(可能有更多种):client首先将消息发送给某个单个的endorser,该endorser会产生相应的版本依赖(anchor),以供client稍后作为PROPOSE消息的参数发送给其它endo原创 2018-03-12 11:14:17 · 627 阅读 · 0 评论 -
Hyperledger Fabric 1.0 实战开发系列 第四课 搭建node.js服务器
如何使用fabric sdk来做出应用程序,代替CLI与整个区块链网络交互,一篇文章立马学会原创 2017-12-15 16:00:33 · 5069 阅读 · 1 评论 -
Hyperledger Fabric 1.0 实战开发系列 第三课 chaincode开发
chaincode是由go语言写的,实现了定义的接口。其他语言例如JAVA也是支持的。通过application体积的transaction,chaincode可以初始化并管理Ledger状态。一个chaincode创建的Ledger状态是独立的,不能被其他chaincode直接访问。在合适的许可下,chaincode能够调用在相同网络下的其他chaincode用于访问其Ledger状态。原创 2017-12-14 21:50:34 · 4325 阅读 · 1 评论 -
Hyperledger Fabric 1.0 实战开发系列 第二课 Fabric环境搭建
搭建fabirc1.0实战环境,跟着一步步来 没有任何问题原创 2017-12-11 12:43:35 · 6997 阅读 · 3 评论 -
Hyperledger Fabric 1.0 实战开发系列 第一课 系统环境搭建
有人说讲了那么多理论,总该来点实际动手的干货,嘿嘿,所以笔者开始写点实战,本人电脑为window10系统,故采用虚拟机virtualBox+Ubuntu来进行实战原创 2017-12-10 22:11:54 · 3786 阅读 · 0 评论 -
Hyperledger Fabric Chaincode 开发
介绍Chaincode程序编写、调试的基本方法之外,我还加入了一些有关Chaincode原理的内容,希望能够帮助大家更好地理解Chaincode,进而编写出更加高效的Chaincode程序以及更加快速地调试自己的Chaincode程序。转载 2017-11-13 07:15:39 · 3335 阅读 · 0 评论 -
区块链核心技术:拜占庭共识算法之PBFT全面理解
PBFT是Practical Byzantine Fault Tolerance的缩写,意为实用拜占庭容错算法。该算法是Miguel Castro (卡斯特罗)和Barbara Liskov(利斯科夫)在1999年提出来的,解决了原始拜占庭容错算法效率不高的问题,将算法复杂度由指数级降低到多项式级,使得拜占庭容错算法在实际系统应用中变得可行。翻译 2017-07-19 07:30:50 · 5685 阅读 · 0 评论 -
Hyperledger Fabric1.0架构概览
Hyperledger是被业界非常看到的联盟链的实现,包括IBM、Intel、R3、各个大型商业银行等都参与其中,带给我们关于区块链技术与软件工业、金融、保险、物流等领域碰撞结合的想象空间;在这个联盟中,有超过1/4的成员都来自中国,这更是我们对于它的一举一动都非常关注。很大程度上,Hyperledger和它背后的联盟体系就代表着区块链在产业环境中的未来。原创 2017-07-14 12:01:22 · 1063 阅读 · 0 评论 -
IBM HyperLedger fabric 详解
fabric源于IBM,初衷为了服务于工业生产,IBM将44,000行代码开源,是了不起的贡献,让我们可以有机会如此近的去探究区块链的原理,但毕竟IBM是从自身利益和客户利益出发的,并不是毫无目的的去做这项公益事业,我们在看fabric的同时要有一种审慎的思维:区块链不一定非得这样,它跟比特币最本质的非技术区别在哪里。我们先来大致了解一下fabric的关键术语(因为一些词汇用英文更准确,我就不硬翻原创 2017-07-13 19:05:20 · 2883 阅读 · 0 评论 -
BlockChain- 以太坊架构
1. 区块链的六层结构 数据层:是一个区块 + 链表的数据结构,本质是一个分布式区块链网络层:p2p网络。共识层:制定区块链的获取货币的机制。比如比特币用的是POW(Proof of Work工作量证明机制):电脑的性能越好,越容易获取到货币奖励。还有POS(Proof of Stake权益证明机制):类似于众筹分红的概念,会根据你持有的货币数量和时间,给持原创 2017-07-13 09:35:45 · 5704 阅读 · 0 评论 -
两步搞定Hyperledger主打区块链解决方案Fabric
区块链技术发展至今,形成了公有链和联盟链两种主流技术平台。公有链 面向大众,用户可以匿名参与,非常方便,账本数据也公开,加上强大的智能合约,因此公有链极大地促进了区块链概念和技术的普及,比如比特币、Ethereum平台等。联盟链 考虑到商业应用对安全、隐私、监管、审计、性能的需求,提高准入门槛,增加了安全、隐私、可监管审计等商业特性,是区块链技术在商业领域的应用探索。本文将原创 2017-07-13 09:47:10 · 4597 阅读 · 0 评论 -
区块链的共识机制
1、Pow工作量证明就是大家熟悉的挖矿,通过与或运算,计算出一个满足规则的随机数,即获得本次记账权,发出本轮需要记录的数据,全网其它节点验证后一起存储;优点:完全去中心化,节点自由进出;缺点:目前bitcoin已经吸引全球大部分的算力,其它再用Pow共识机制的区块链应用很难获得相同的算力来保障自身的安全;挖矿造成大量的资源浪费;共识达成的周期较长,不适合商业应用2、原创 2017-07-13 08:05:52 · 1144 阅读 · 0 评论 -
3分钟把区块链的技术与应用彻底讲清楚
作为互联网新名词中的重要词汇——区块链,许多人似乎似懂非懂,本文的描述,是看到的版本中最容易懂的,特此推荐给各位原创 2017-07-08 09:58:49 · 997 阅读 · 1 评论 -
一篇文章让你彻底明白区块链有哪些应用场景
区块链技术的核心是沿时间轴记录数据与合约,并且只能读取和写入,不能修改和删除。在应用层面,区块链的安全、透明、高效3大优势,使其特别有助于规范互联网金融的发展,以及促进物联网和共享经济的普及与创新;在资本市场,采用分布式数据库和智能合约还可以大幅减少人工核对工作,为金融机构节省成本。 本文结合案例介绍金融领域内的6个区块链应用场景和细分市场:数字货币转账、支付、借贷;跨境支付与结算;央行原创 2017-07-07 15:26:10 · 62415 阅读 · 2 评论 -
区块链技术运用在票据领域-票据链
如何解决票据市场现在面临的问题,区块链技术完美解决原创 2017-07-07 10:28:51 · 12153 阅读 · 0 评论 -
从技术角度来说说区块链到底有哪些特点和运作机制
摘要: 区块链技术的核心是实现了沿时间轴记录数据与合约,并且一旦写入,就只能读取,不能修改和删除。自从今年1月20日,中国人民银行在数字货币研讨会上表示高度重视区块链(Blockchain)等技术带来的新机遇和挑战,并争取早日推出央行发行的数字货币[1]以来,区块链的概念在国内越发火热,吸引了金融机构空前的关注。这份报告是爱就投与研究中心第一次关于区块链技术的研原创 2017-07-07 15:02:12 · 1615 阅读 · 0 评论 -
区块链技术应用场景之政务链
区块链技术在电子政务方面的应用场景原创 2017-07-06 15:46:06 · 14813 阅读 · 0 评论