以太坊--众筹ICO实现

本文介绍了如何使用以太坊智能合约实现ICO众筹的三个步骤:设定众筹目标、以太和代币兑换、受益人提款或投资人退款。通过代码示例,详细讲解了众筹过程中的关键环节,并强调了合约在未达到目标时自动退款的安全性。
摘要由CSDN通过智能技术生成

github首页:区块链学习有用链接和25本区块链书籍可免费阅读

  • 地址:https://github.com/cancerts/study-blockchain-referrence 点击这

第三节 我是实现了token的一些高级功能,如增发,冻结,撤销等,这一小节我就来实现一个众筹的项目ICO,我在学习solidity的时候好像也看见几个合约的例子,其中一个就是众筹的例子,好久了,我不记得了,大家可以去官网下载solidity去看一下,其中就有一个,今天呢,用自己的规则来实现,要完成一个众筹需要完成以下的内容:

众筹就是在约定的时间,完成约定的目标金额

第一步:设定众筹目标

众筹的目标金额,时间,兑换的价格,以及受益人

contract ico is owner{
    uint public fundingGoal;
    uint public  deadline ;
    uint public price;
    token public tokenReward;
    address public beneficiary;
 
    constructor(uint fundingGoalInEthers,uint durationInMinutes,uint costOfEachToken,address addressOfToken)public{
        fundingGoal=fundingGoalInEthers*1 ether;
        deadline=now + durationInMinutes* 1 minutes;
        price=costOfEachToken* 1 ether;
        tokenReward=token(addressOfToken);
        beneficiary=msg.sender;
        
    }
}

第二步: 实现以太和代币的兑换

我们知道,我们众筹是通过代币来完成的,但是,代币是没有价值的,只是作为一个交换的媒介

function() public payable{
        require(now<deadline);
        uint amount=msg.value;
        balanceOf[msg.sender]+=amount;
        fundAmount+=amount;
        uint tokenAmount=0;
       
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值