区块链
文章平均质量分 78
Clown95
a low coder
展开
-
solidity教程(三)高级 Solidity 理论
title: solidity教程(三)高级 Solidity 理论tags: solidity,eth声明:本系列教程是整理cryptozombies 而来https://cryptozombies.io/zh诶呦喂……少年!你比我想象的厉害。你的 Solidity 技能好棒。既然你已经有了些 Solidity 编程经验,我们就要提高难度,讲讲 Ethereum 开发的技术细节...原创 2018-10-23 16:20:39 · 2340 阅读 · 0 评论 -
HyperLedger Fabric 介绍
title: HyperLedger Fabric 介绍tags: 区块链,HyperLedger,Fabrichyperledger全家桶        2015年,Linux基金会启动了Hyperledger项目,目标是发展跨行业的区块链技术。Hyperledger项目并不仅仅是定义一个单原创 2018-11-14 15:35:56 · 690 阅读 · 0 评论 -
HyperLedger Fabric 系统架构
title: HyperLedger Fabric 架构tags: 区块链,HyperLedger Fabric系统逻辑架构 Hyperledger Fabric是一种模块化的区块链架构,是分布式记账技术(DLT)的一种独特的实现,它提供了可供企业运用的网络,具备安全、可伸缩、加密和可执行等特性...原创 2018-11-14 16:14:20 · 1435 阅读 · 0 评论 -
HyperLedger Fabric Chaincode(链码)介绍和使用
title: HyperLedger Fabric Chaincode(链码)介绍和使用tags: 区块链,HyperLedger Fabric,Chaincodegrammar_cjkRuby: true链码是什么?     &am原创 2018-11-14 20:31:31 · 3692 阅读 · 0 评论 -
Fabric链码实战(二)公民身份信息
title: Fabric链码实战(二)公民身份信息tags: Hyperledger, fabric ,区块链,chaincode功能简述使用链码可以添加和查询公民信息功能实现1.导入包package mainimport ( "github.com/hyperledger/fabric/core/chaincode/shim" pb "github.com/hyperl...原创 2018-11-29 10:24:09 · 785 阅读 · 0 评论 -
Hyperledger Fabric 链码的开发环境
title: Hyperledger Fabric 链码的开发tags: Hyperledger, fabric ,区块链,chaincode前面介绍过Hyperledger Fabric环境搭建和网络部署,现在我们开始链码开发。Fabric的fabric-sample项目中提供了一个chaincode的开发环境,使chaincode在开发阶段可以进行快速开发、构建、运行、调试。1. ...原创 2018-11-26 16:59:44 · 845 阅读 · 0 评论 -
Fabric链码实战(一)贷款还款
title: Fabric链码实战(一)贷款还款tags: Hyperledger, fabric ,区块链,chaincode功能简述假设需要用链码开发简单的贷款还款,要实现以下简单的几个业务需求:1.通过账户身份证号,银行名字进行贷款2.过账户身份证号,银行名字进行还款功能实现在fabric-samples/chaincode下新建一个pay目录用来存放代码。1.创建结构体...原创 2018-11-28 15:23:08 · 744 阅读 · 0 评论 -
Solidity简单例子-代理投票
代理投票需求实现一个带有代理功能的投票的智能合约。思路为了支持投票,我们首先要有进行投票的提案,每个提案都会有名字和投票的计数。针对每个投票者,我们可以设置它是否进行了投票,以及投票给谁。难点在于如何设计代理机制,我们可以给一个人指定一个代理人。但是这里有一个陷阱,因为这个代理人可能也设置了另一个代理人,因此我们需要不断地找到最初的代理人。如果我们能够在系统中不断的更新代理人和投票,那...转载 2018-12-09 08:45:50 · 738 阅读 · 1 评论 -
Solidity简单例子-公开拍卖
公开拍卖需求请实现一个拍卖协议,在该协议中,每个用户可以提交自己的出价。如果有人出价高于当前的最高价,那么我们将会退还之前的最高价的人的金额,然后将新的最高价记录在智能合约中。思路整个流程如下:我们首先要记录拍卖的基本数据:谁是受益人,什么时候结束我们开启拍卖,一个出价更高的人会替代之前出价最高的人当出现替代时,还要退还之前出价高的人的代币出于安全的考虑,退还过程将由之前用户主动...转载 2018-12-09 08:47:06 · 737 阅读 · 0 评论 -
Solidity简单例子-密封拍卖
密封拍卖需求请实现一个拍卖协议,在该协议中,每个用户可以提交自己的出价。但是用户之间不能看到之间的出价,最后出价最高的人获得拍卖。思路如何才能让大家互相看不到出价呢?我们可以让每个人把自己的出价加密一下,然后在一段时间内大家都给出加密后的出价。再出价结束后,给出一段时间让大家揭示自己的出价,并且从中选择最高的出价。但是,我们依然可以从你传递的代币的数量判断你的出价。因此我们一个方案是大家...转载 2018-12-09 08:48:16 · 902 阅读 · 0 评论 -
Solidity简单例子-物品买卖
物品买卖需求实现一个买卖物品的安全协议。思路整个逻辑如下卖家执行purchase的构造函数,设置一个偶数的价值卖家执行购买,需要支付同样的一个价值卖家发货买家确认收到货,将双方的押金返回代码注释pragma solidity ^0.4.22;contract Purchase { uint public value; address public se...转载 2018-12-09 08:49:58 · 1617 阅读 · 0 评论 -
Solidity简单例子-以太虾农庄
以太虾农庄每个新玩家进来,都能获得300个免费的虾,每只虾每秒钟产下1个虾籽,这些虾籽会累积起来,最多持续累积一天。对于累计的虾籽,玩家可以选择卖掉换成以太币,或者按照86400的比例转换成一只虾。你买入和卖出虾的价格有什么决定呢?项目开发者怎么挣钱呢?5%的交易费会进入项目开发者的口袋。如果推荐了新玩家加入,那么他每次把虾籽孵化为虾的时候,推荐者会收到20%的虾籽。这个游戏的特点是...转载 2018-12-09 08:51:17 · 546 阅读 · 1 评论 -
Solidity实战-简易交易平台
修改GitHub某个项目而来需求实现一个类似闲鱼交易市场,用户可以发售商品,也可以购买商品。思路用户将自己要卖的物品发布到平台上面,定下展示期限。 由智能合约自动处理,到期之后就下架,用户从物品发布到下架或者卖出的过程中全程透明,所有人都可以看到。用户可以点击展示详情页面购买物品, 购买物品需要一定的手续费。用户可以自己发布物品可以查看当前物品列表可以查看指定物品详情可以转...原创 2018-12-09 09:00:29 · 2535 阅读 · 4 评论 -
共识算法-DPoS(股份授权证明)算法
title: 共识算法-DPoS(股份授权证明)算法tags: 区块链,共识算法DPoS        PoW机制和PoS机制虽然都能有效地解决记账行为的一致性共识问题, 但是现有的比特币PoW机制纯粹依赖算力, 导致专业从事挖矿的矿工群体似乎已和比特币社区完全分隔, 某些矿池的巨大算力俨然成原创 2018-11-12 14:21:51 · 772 阅读 · 0 评论 -
solidity教程(五)ERC721 标准和加密
title: solidity教程(五)ERC721 标准和加密tags: solidity,eth声明:本系列教程是整理cryptozombieshttps://cryptozombies.io/zh而来。Lesson 5: ERC721 标准和加密收藏品呼,游戏变得越来越刺激啦…在这一课,我们将接触到一些更高级的东西。我们将讨论 代币, ERC721 标准, 以及 加密收...原创 2018-10-23 19:53:20 · 3037 阅读 · 2 评论 -
solidity教程(一)搭建僵尸工厂
title: solidity教程(一)基础tags: solidity,区块链第1章: 课程概述第一课你将创造一个"僵尸工厂", 用它建立一支僵尸部队。我们的工厂会把我们部队中所有的僵尸保存到数据库中工厂会有一个函数能产生新的僵尸每个僵尸会有一个随机的独一无二的面孔在后面的课程里,我们会增加功能。比如,让僵尸能攻击人类或其它僵尸! 但是在实现这些好玩的功能之前,我们先要实现创...原创 2018-10-19 20:36:19 · 3555 阅读 · 1 评论 -
solidity教程(六)前端和Web3.js
title: solidity教程(六)前端和Web3.jstags: solidity,eth声明:本系列教程是整理cryptozombieshttps://cryptozombies.io/zh而来。Lesson 6: 应用前端和 Web3.js哟,你都学到这里来啦。你真是个了不得的 CryptoZombie…通过前五课的学习,相信你已经有了扎实的 Solidity 基...原创 2018-10-23 21:37:41 · 6481 阅读 · 3 评论 -
solidity教程(四)僵尸作战系统
title: solidity教程(四)交易tags: solidity,eth声明:本系列教程是整理cryptozombies 而来https://cryptozombies.io/zhLesson 4: 僵尸作战系统这一刻终于来了, 人类……是时候让你的僵尸战斗了!不过僵尸大战并不适合胆小的人……在这一课, 我们将综合利用在前面课程中学到的许多知识,创建一个僵尸作战系统...原创 2018-10-23 17:22:19 · 1270 阅读 · 0 评论 -
共识算法-PoW(工作量证明)算法
title: 共识算法-PoW(工作量证明)算法tags: 区块链,共识算法PoW 区块链其实就是一个基于互联网去中心化的账本,每个区块相当于一页账本,它记录了交易内容。因为比特币是一个去中心账本,会引发记账一致性问题。一致性问题就是所有的区块,记账内容可能不一样。 &n...原创 2018-11-09 21:33:37 · 7870 阅读 · 0 评论 -
共识算法-拜占庭将军问题
title: 共识算法-拜占庭将军问题tags: 区块链,共识算法故事拜占庭是东罗马帝国的首都,由于当时拜占庭罗马帝国国土辽阔,每支军队的驻地分隔很远,将军们只能靠信使传递消息。在打仗的时候,拜占庭军队内所有将军必需达成一致的共识,才能更好地赢得胜利。但是,在军队内有可能存有叛徒,可能会引起下面的问题:叛徒可能欺骗某些将军自己将采取进攻行动。叛徒可能怂恿其他将军行动。叛徒可能迷...原创 2019-11-07 12:53:44 · 1318 阅读 · 0 评论 -
共识算法-PBFT(实用拜占庭容错系统)
title: 共识算法-PBFT(实用拜占庭容错系统)tags: 区块链,共识算法拜占庭容错系统区块链网络的记账共识和拜占庭将军问题是相似的。参与共识记账的每一个记账节点相当于将军,节点之间的消息传递相当于信使,某些节点可能由于各种原因而产生错误的信息并传达给其他节点。通常,这些发生故障节点被称为拜占庭节点,而正常的节点即为非拜占庭节点 。拜占庭容错系统是一个拥有n台节点的系统, 整个...原创 2018-11-02 19:27:19 · 2653 阅读 · 0 评论 -
共识算法-Raft协议
title: 共识算法-Raft协议tags: 区块链,共识算法在很多分布式系统场景下, 并不需要解决拜占庭将军问题, 也就是说,在这些分布式系统的实用场景下, 其假设条件不需要考虑拜占庭故障,而只是处理一般的死机故障。 在这种情况下, 采用Paxos等协议会更加高效。 Paxos是Lamport设计的保持分布式系统一致性的协议。 但由于Paxos非常复杂, 比较难以理解, 因此后来出现了...原创 2018-11-02 20:17:59 · 459 阅读 · 0 评论 -
Hyperledger fabri 部署网络(单机环境)
title: Hyperledger fabri 网络部署tags: Hyperledger, fabric ,区块链安装预置环境下载项目      &nbsp原创 2018-11-13 15:00:40 · 673 阅读 · 0 评论 -
共识算法-PoS(股权证明)算法
title: 共识算法-PoS(股权证明)算法tags: 区块链,共识算法为什么会出现PoS?        在比特币系统中采用了PoW(工作量证明)算法,PoW其实就是由所有的节点相互竞争,提交一个难于计算但是容易验证的计算结果原创 2018-11-11 22:07:35 · 8391 阅读 · 1 评论 -
Hyperledger fabric 环境搭建
title: Hyperledger fabric环境搭建tags: Hyperledger, fabric ,区块链一、需要的环境注意:本文是在CentOS下演示1.安装golang(1).下载源码包:go1.11.linux-amd64.tar.gz。https://studygolang.com/dl/golang/go1.11.linux-amd64.tar.gz(2)...原创 2018-11-08 21:03:08 · 749 阅读 · 0 评论 -
Go数据结构与算法-计数排序
title: Go数据结构与算法-计数排序tags: go,算法介绍计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。基本思想计数排序和基数排序都是非比较类排序,过程比较简单,但是计数是比较巧妙的,借助第三个数组 countsArr 存元素出现的频率往后累加,对应减一即可得出该元素在排序数组...原创 2018-12-19 20:40:32 · 449 阅读 · 0 评论