详细内容
智能合约,又称加密合约,是在一定条件下可以直接控制数字货币或资产在各方之间转移的一种计算机程序。智能合约不仅以与传统合约相同的方式定义了协议的规则和处罚,还可以自动强制执行这些义务。它通过接受信息作为输入,通过规则为输入赋值,在合约中列出并执行这些合约条款所要求的行为-例如,确定资产应该归返给一个人还是归返给资产来源的其他人。这个概念很容易用一个例子来解释。设想一下人寿保险,智能合约在保单持有人去世后向指定受益人支付利益。合约可以对在线死亡登记表进行实时检查以确定支付时间。智能合约是不可靠的,自主的,并且自给自足的系统開发180.3931.97Z4
}
//The event for tranfer and approve
event Transfer(address indexed _from, address indexed _to, uint256 _value);
event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}
contract DeFi is Token{
//声明owner,暂时没作用
address public owner ;
//声明 用户-抵押ETH数量 mapping
mapping (address => uint) pledgeETHAmount;
//声明 抵押/赎回时的event
event Pledge(address user, uint256 amount);
event Redeem(address user, uint256 amount);
//构造函数,只在合约被部署的时候执行一次
constructor() public {
owner = msg.sender ;
}
//抵押功能
function pledge() public payable returns(bool success){
//ETH抵押金额必须大于0
require(msg.value > 0, "Not enough ETH to pledge.");
//抵押操作
// 1. 1:1贷出ERC20 Token