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以及小程序等技术...相关推荐

  1. 区块链项目实战 - 使用以太坊/智能合约solidity,全栈开发区块链借贷记账小应用,含完整源码

    本文使用区块链平台以太坊+智能合约实现一个区块链记账的功能,具体为: 借款人和贷款人以及数额被记录在区块链中.使用区块链地址来表示借款人或者贷款人. 若一个借款人多次向一个贷款人借钱,更新所有的数额之 ...

  2. 以太坊搭建联盟链_区块链知识普及:什么是以太坊

    以太坊(Ethereum)是下一代密码学账本,可以支持众多的高级功能,包括用户发行货币,智能协议,去中心化的交易和设立去中心化自治组织(DAOs)或去中心化自治公司(DACs).以太坊并不是把每一单个 ...

  3. mysql 事件_区块链研究实验室 | 使用MySQL存储以太坊事件

    在本文中,我将演示一种缓存以太坊事件的简单方法.我只想说,通常我们将事务用于链下操作,例如跟踪令牌的传输或检索特定事务的筛选列表,就像一个SQL查询一样. 假设我们想要创建一个跟踪令牌传输的网站,Et ...

  4. 区块链安全-以太坊智能合约静态分析

    概述 目前,以太坊智能合约的安全事件频发,从The DAO事件到最近的Fomo3D奖池被盗,每次安全问题的破坏力都是巨大的,如何正确防范智能合约的安全漏洞成了当务之急.本文主要讲解了如何通过对智能合约 ...

  5. 区块链快速入门(八)——以太坊

    一.以太坊简介 以太坊(Ethereum)项目的最初目标是打造一个运行智能合约的平台(Platform for Smart Contract),支持图灵完备的应用,按照智能合约的约定逻辑自动执行,理想 ...

  6. 区块链兼容以太坊智能合约

    链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 引言 随着区块链技术以及应用的普及,越来越多的区块链出现在大众视野中.由于区块链技术的开源特性,任何公司和个人都可以方便 ...

  7. 区块链安全100问 | 第七篇:智能合约审计流程及审计内容

    零时科技--专注于区块链安全领域 深圳零时科技有限公司(简称:零时科技),公司成立于2018年11月,是一家专注于区块链生态安全的实战创新型网络安全企业,团队扎根区块链安全与应用技术研究,以丰富的安全 ...

  8. 区块链开发入门:基于以太坊智能合约构建 ICO DApp

    写给前端开发者的第一本区块链开发入门指南,通过从 0 到 1 实战开发一个 ICO DApp 项目(基于 V 神的 DAICO 设计思想),深入掌握区块链及以太坊技术. 为什么要选择区块链开发? 未来 ...

  9. 区块链开发(二)部署和运行第一个以太坊智能合约

    区块链开发(二)部署并运行第一个以太坊智能合约 李赫2016年8月22日 本文首发8BTC 网络上不少部署智能合约的文章,但是都有一个共同的特点,就是采用命令行的方式来部署,先是建立SOLC的编译环境 ...

最新文章

  1. Too Many Segments CF595D 贪心乱搞
  2. 利用java做一个简单的计算器
  3. TStringList的用法
  4. 在 Eclipse 上建立一个 JSP
  5. 笔记-高项案例题-2016年上-计算题
  6. php随机产生4乘4矩阵,PHP 用二维矩阵生成一个给定层数的杨辉(PASCAL)三角形
  7. 大型分布式系统需要考虑的问题
  8. 猎鹰spacex_SpaceX:简单,美观的界面是未来
  9. 【洛谷】P4643 【模板】动态dp
  10. helm安装_如何利用 Helm 在 Kubernetes 上快速部署 Jenkins
  11. linux 系统配置
  12. CKEditor 4 编辑器已与 Vue.js 集成
  13. 深蓝学院-视觉SLAM从理论到实践基础知识导图
  14. [Ubuntu Error]无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
  15. 深入浅出之正则表达式(一)(转)
  16. CVPR 2021|人脸属性风格解耦
  17. 前端特效,超级炫酷,内容丰富,多种选择
  18. 云计算第二天总结 10.29
  19. 在ubuntu20.04中安装MATLAB时常见问题及解决方法
  20. 一个优秀开发者如何才能变得伟大?

热门文章

  1. 表格怎么合并为同一工作簿的两个工作表
  2. 前端技术搭建贪吃蛇小游戏(内含源码)
  3. 易聊ii v2.1 下载
  4. JAVA小型三国杀的制作_1
  5. ECharts柱条渐变色设置以及常用渐变色
  6. 二、ArcGIS Pro基础知识
  7. shell181网格划分_ANSYS中SHELL181单元理解和参数详解 -
  8. 推荐吴军的著作《文明之光》
  9. 计算机在材料领域的新进展和发展趋势,浅谈材料科学的发展趋势及进展
  10. 高等职业教育计算机教学标准,高等职业教育教学课程标准.doc