# 区块链智能合约精选
标签(空格分隔): 工作任务
---
## 农业乳制品区块链
#### 奶牛场
1. 添加奶牛场
2. 添加奶牛
3. 删除奶牛
4. 添加操作1为喂养 2为检疫
5. 挤奶
6. 桶发送到工厂
7. 工厂确认奶桶是否接受,如果是确认接受会立即向工厂同步奶桶信息
8. 查看工厂待收的奶桶
9. 获取操作历史
10. 获取数据
11. 存入数据
#### Machining Chaincode
1. 添加加工厂
1. 添加奶桶
1. 打包牛奶
1. 添加奶桶操作
1. 牛奶送到销售
1. 销售终端确认牛奶是否接受,如果是确认接受会立即向销售终端同步牛奶信息
1. 查看销售终端待收的牛奶
1. 获取操作历史
1. 获取数据
1. 存入数据
#### Salesterminal Chaincode
1. 添加销售终端
1. 添加奶桶
1. 添加操作
1. 获取操作历史
1. 获取溯源操作历史
1. 获取数据
1. 存入数据
## erc20 (chaincode实现erc20标准的代币)
用Hyperledger Fabric开发ERC20标准的代币
利用ca身份用户名作为代币地址(通过stub.GetCreator获取)
实现ERC20的标准的所有方法
###初始化
1. 检查
1. 添加代币
1. 创建人
1. 拥有者初始化拥有所有代币
### 执行
1. 获取token信息 tokenInfo
1. 输入地址,可以获取该地址代币的余额 balanceOf
1. 挖矿 minter
1. 调用transfer函数将自己的token转账给to地址,value为转账个数 transfer
1. 实现账户的冻结和解冻 (true 冻结,false 解冻)freezeAccount
1. 转移拥有者transferOwner
1. 批准spender账户从自己的账户转移value个token。可以分多次转移approve
1. 与approve搭配使用,approve批准之后,调用transferFrom函数来转移token。 transferFrom
1. 返回spender还能提取sponsor的token的个数 allowance
1. 增加spender账户从自己的账户转移value个token。可以分多次转移
increaseAllowance
1. 减少spender账户从自己的账户转移value个token。可以分多次转移
decreaseAllowance
1. 销毁代币burn
##云证
代码
type CloudCertificate struct {
CloudCardNumber string `json:"cloudCardNumber"` //云证编号
CloudCardPerson string `json:"cloudCardPerson"` //存证方
CloudCardPlatform string `json:"cloudCardPlatform"` //传证平台
Time int64 `json:"time"` //存证时间
BlockNumber string `json:"blockNumber"` //存证区块号
CloudCardHash string `json:"cloudCardHash"` //存证hash
FileType string `json:"fileType"` //文件类型
FileLabel string `json:"fileLabel"` //文件标签
FileName string `json:"fileName"` //文件名
FileAddress string `json:"fileAddress"` //下载地址
}
1. 添加证据addCard
1. 根据参数获取存证getList
1. 获取一条存证get
## 投票智能合约VoteChaincode
1. 投票VoteUser
1. 获取某人投票结果getUserVote
## 积分类型的智能合约实现
模仿以太坊ERC20规范的Hyperledger Fabric 实现Token通证案例
借用以太坊思维,将以太坊代币合约搬到 hyperledger 上,一样可以实现代币的功能,这个代币除了不能上交易所,基本满足我们替代积分系统的需求,在超级账本上实现类似以太坊的代币转账功能。
合约实现代币转账,额度查询,增发代币,冻结账号,锁仓等等服务,功能与 ERC20 Token 相仿。合约实例化所有代币打入了 coinbase 账号,分发代币需要使用转账功能从 coinbase 想普通账号转账。普通账号消费可以在将代币转到 coinbase 账号中,这样就完成了代币流通,形成一个闭环。
这个合约用户可以创建多套代币,Args":["Token" 的第一参数 Token就是代币名称,第二参数为初始化供应总额}
peer chaincode invoke -C myc -n token -c '{"function":"initLedger","Args":["Apple","水果币","1000000"]}'
peer chaincode invoke -C myc -n token -c '{"function":"initLedger","Args":["Token","蔬菜币","1000000"]}'
peer chaincode invoke -C myc -n token -c '{"function":"initLedger","Args":["Oil","粮油币","1000000"]}'
这个方案仍有不足之处,作者还不清楚如果用户上线是多少,达到临界值后,Hyperledger Fabric 无法在提供服务。
可能 chaincode_example02 做法更靠谱,就是不用 map 保存数据,将每个用户存储在 State 数据上。这里需要创建多套代币,所以使用了一个key 来存储所有账号。如果像 chaincode_example02 那样就需要部署多个 chaincode 在 channel 中。管理起来比较复杂。
相关推荐
毕业设计 基于深度学习的区块链智能合约安全检测系统源码+文档说明(高分毕设),该项目是个人毕设项目,答辩评审分达到98分,代码都经过调试测试,确保可以运行!欢迎下载使用,可用于小白学习、进阶。该资源主要...
Solidity编程 - 构建以太坊和区块链智能合约的初学者指南
《Solidity编程:构建以太坊和区块链智能合约的初学者指南》_毛明旺等译_2019-01-01
标题与描述中都提到了“区块链智能合约实施规范”,这是指在中国区块链技术和产业发展论坛发布的关于区块链智能合约的实施标准。该标准是技术实施规范类文件,具有一定的权威性,并对中国区块链行业智能合约的开发和...
区块链智能合约简介流程
区块链毕业设计基于深度学习的区块链智能合约安全检测系统源码+文档说明(高分项目)区块链毕业设计基于深度学习的区块链智能合约安全检测系统源码+文档说明(高分项目)区块链毕业设计基于深度学习的区块链智能合约...
区块链智能合约技术及实践.pdf
区块链智能合约技术发展研究报告(加了水印).rar
智能合约是一个事务处理系统,使数字化承诺在满足触发条件时被自动执行,而不会产生或者修改智能合约。...因此,智能合约技术是区块链应用中最主要的特征,也是区块链被称为颠覆性技术的主要原因。
毕业设计 基于以太坊的区块链智能合约彩票源码+详细文档+全部资料(高分项目).zip毕业设计 基于以太坊的区块链智能合约彩票源码+详细文档+全部资料(高分项目).zip毕业设计 基于以太坊的区块链智能合约彩票源码+...
智能合约则是运行在区块链上的一段代码,能够在满足预设条件时自动执行合约条款。这两项技术结合在一起,为网络数据安全提供了创新的路径。 首先,区块链技术的分布式存储机制确保了数据的真实性与完整性。每一个...
#资源达人分享计划#
区块链技术与应用——智能合约.pdf
本文将深入探讨标题和描述中提到的"行业分类-物理装置-一种区块链智能合约执行方法",并结合提供的压缩包文件"一种区块链智能合约执行方法.pdf"来阐述这一创新技术。 首先,我们要理解区块链的核心特性:去中心化、...
区块链智能合约漏洞测试
#资源达人分享计划#
总结来说,智能合约的安全研究关注点在于智能合约的设计、开发、部署和维护等各个环节的安全性,通过提升智能合约的整体安全性来减少安全事故的发生,保障区块链应用的可靠运行。随着区块链技术的不断发展和应用的...
区块链智能合约安全漏洞测试
区块链毕业设计 基于深度学习的区块链智能合约安全检测系统源码+详细文档+全部资料(高分项目).zip区块链毕业设计 基于深度学习的区块链智能合约安全检测系统源码+详细文档+全部资料(高分项目).zip区块链毕业设计...
区块链毕业设计 基于NAS区块链智能合约的去中心化星云遗嘱系统源码+详细文档+全部资料(高分项目).zip区块链毕业设计 基于NAS区块链智能合约的去中心化星云遗嘱系统源码+详细文档+全部资料(高分项目).zip区块链...