java计步器算法_区块链+计步运动项目,主要采用以太坊、智能合约、springboot以及小程序等技术...
runlife_api
项目介绍
区块链+计步运动项目,主要采用以太坊、智能合约、springboot以及小程序等技术
兑换步数算法
按照每总量剩余一半的时候兑换难度增加一倍,如目前按照平均步数5112计算,总量14亿,每天5112步可以兑换1step,当剩下不足7亿时,5112*2步数才可以兑换1step,依次类推,100万人参与按照平均步数5112步/天计算,兑换13.78125亿step需要3.7年
软件架构
接口:springboot框架
区块链:以太坊私有链
承载端:小程序(小程序比较简单,只需要按照传统模式请求api即可)
智能合约编译工具:solc 、web3j Cammond Line
合约所在的目录:runlife_api\src\main\java\com\daohu\runlife\api\ethereum\TokenERC.sol
通过以下命令生成的文件为:TokenERC_sol_TokenERC20.java、TokenERC_sol_tokenRecipient.java
solc编译智能合约:
solcjs TokenERC.sol --bin --abi --optimize -o ./
根据智能合约生成java代码
web3j solidity generate --solidityTypes TokenERC_sol_TokenERC20.bin TokenERC_sol_TokenERC20.abi -o ./ -p com.daohu.runlife.api.ethereum
服务器api接口必须结合以太坊私有链一起
接口api定义:
工具安装教程
solc安装
npm install -g solc
web3j安装教程
以太坊私有链环境搭建
服务器启动说明
启动以太坊私有链
./geth --datadir "./chain" --rpc --rpcapi "db,eth,net,web3,personal,admin,miner" --nodiscover console 2>>eth_output.log
启动挖矿
miner.start(1)
启动服务器springboot
nohup java -jar runlife-api-0.0.1-SNAPSHOT.jar >outlog.txt 2>&1 &
隐私设置
请注意本代码库中我已经人为的把数据库mysql密码、部署合约的钱包密码、生成私钥的salt等等去除掉了,大家在使用代码的时候留意。
java计步器算法_区块链+计步运动项目,主要采用以太坊、智能合约、springboot以及小程序等技术...相关推荐
- 区块链项目实战 - 使用以太坊/智能合约solidity,全栈开发区块链借贷记账小应用,含完整源码
本文使用区块链平台以太坊+智能合约实现一个区块链记账的功能,具体为: 借款人和贷款人以及数额被记录在区块链中.使用区块链地址来表示借款人或者贷款人. 若一个借款人多次向一个贷款人借钱,更新所有的数额之 ...
- 以太坊搭建联盟链_区块链知识普及:什么是以太坊
以太坊(Ethereum)是下一代密码学账本,可以支持众多的高级功能,包括用户发行货币,智能协议,去中心化的交易和设立去中心化自治组织(DAOs)或去中心化自治公司(DACs).以太坊并不是把每一单个 ...
- mysql 事件_区块链研究实验室 | 使用MySQL存储以太坊事件
在本文中,我将演示一种缓存以太坊事件的简单方法.我只想说,通常我们将事务用于链下操作,例如跟踪令牌的传输或检索特定事务的筛选列表,就像一个SQL查询一样. 假设我们想要创建一个跟踪令牌传输的网站,Et ...
- 区块链安全-以太坊智能合约静态分析
概述 目前,以太坊智能合约的安全事件频发,从The DAO事件到最近的Fomo3D奖池被盗,每次安全问题的破坏力都是巨大的,如何正确防范智能合约的安全漏洞成了当务之急.本文主要讲解了如何通过对智能合约 ...
- 区块链快速入门(八)——以太坊
一.以太坊简介 以太坊(Ethereum)项目的最初目标是打造一个运行智能合约的平台(Platform for Smart Contract),支持图灵完备的应用,按照智能合约的约定逻辑自动执行,理想 ...
- 区块链兼容以太坊智能合约
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 引言 随着区块链技术以及应用的普及,越来越多的区块链出现在大众视野中.由于区块链技术的开源特性,任何公司和个人都可以方便 ...
- 区块链安全100问 | 第七篇:智能合约审计流程及审计内容
零时科技--专注于区块链安全领域 深圳零时科技有限公司(简称:零时科技),公司成立于2018年11月,是一家专注于区块链生态安全的实战创新型网络安全企业,团队扎根区块链安全与应用技术研究,以丰富的安全 ...
- 区块链开发入门:基于以太坊智能合约构建 ICO DApp
写给前端开发者的第一本区块链开发入门指南,通过从 0 到 1 实战开发一个 ICO DApp 项目(基于 V 神的 DAICO 设计思想),深入掌握区块链及以太坊技术. 为什么要选择区块链开发? 未来 ...
- 区块链开发(二)部署和运行第一个以太坊智能合约
区块链开发(二)部署并运行第一个以太坊智能合约 李赫2016年8月22日 本文首发8BTC 网络上不少部署智能合约的文章,但是都有一个共同的特点,就是采用命令行的方式来部署,先是建立SOLC的编译环境 ...
最新文章
- Too Many Segments CF595D 贪心乱搞
- 利用java做一个简单的计算器
- TStringList的用法
- 在 Eclipse 上建立一个 JSP
- 笔记-高项案例题-2016年上-计算题
- php随机产生4乘4矩阵,PHP 用二维矩阵生成一个给定层数的杨辉(PASCAL)三角形
- 大型分布式系统需要考虑的问题
- 猎鹰spacex_SpaceX:简单,美观的界面是未来
- 【洛谷】P4643 【模板】动态dp
- helm安装_如何利用 Helm 在 Kubernetes 上快速部署 Jenkins
- linux 系统配置
- CKEditor 4 编辑器已与 Vue.js 集成
- 深蓝学院-视觉SLAM从理论到实践基础知识导图
- [Ubuntu Error]无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
- 深入浅出之正则表达式(一)(转)
- CVPR 2021|人脸属性风格解耦
- 前端特效,超级炫酷,内容丰富,多种选择
- 云计算第二天总结 10.29
- 在ubuntu20.04中安装MATLAB时常见问题及解决方法
- 一个优秀开发者如何才能变得伟大?