前言:本文适用于对JavaScript,Web3和以太坊智能合约有基本了解的开发者。
DeFi已成为以太坊生态系统非常流行的用例。在撰写本文时,DeFi协议已锁定价值超过10亿美元。迄今为止,使用开放的,去中心化的替代选择替代现有金融产品的前景已经非常受欢迎。
这些DeFi平台之所以如此出色,原因之一就是因为它们易于开发人员使用。由于它们的开源特性,开发者可以更好地了解,任何愿意学习如何使用它们的人都可以使用它们。
计算机程序员父子团队帮助客户恢复丢失的加密资产:9月4日消息,计算机程序员父子Chris和Charlie Brooks在新罕布什尔州经营一家小企业,帮助客户恢复丢失的加密资产。他们进行了一项分析,估计有68,110到92,855枚看似丢失的比特币是可以恢复的。以当前价格计算,可回收比特币估值的上限为47亿美元。(businessinsider)[2021/9/4 23:00:37]
DeFi领域目前最大的公司之一是CompoundFinance,目前其生态中锁定的价值约为1.15亿美元。所有人都可以为其协议提供资产并从中获取利息,但是这个过程如何做到的?
Compound怎么玩的?
Compound目前支持9种代币:BAT,DAI,ETH,REP,SAI,USDC,USDT,WBTC,ZRX。这些是您可以赚取利息的数字资产。
话题“英国程序员把7500个比特币当成垃圾扔掉”冲上微博热搜前十:今天下午话题“英国程序员把7500个比特币当成垃圾扔掉”登上新浪微博热搜。英国一IT工程师不小心将藏有7500枚比特币私钥的硬盘当垃圾扔掉。按照3.2万美元现价估算约2.4亿美元,他表示后悔莫及。区块链分析公司Chainalysis于2020年6月发布报告显示,至少有370万比特币至少有五年没被触及。加密数据公司Glassnode估计,大约有300万个比特币将永远丢失。自2020年10月牛市以来,约70亿美元的比特币已被重新找到。截至目前阅读量超过1.2亿次,讨论5745次,一度冲上热搜前十。[2021/1/6 16:34:03]
让我们以DAI为例。当你向协议提供DAI后,DAI将被锁定,直到您决定取回它为止。当DAI被锁定时,您需要同意协议可以借出这些价值,从而赢得整个流动性池的利息。你可以把它想象为一种储蓄帐户。
程序员创建标准化代理合约以解决以太坊合约规模的限制:7月19日消息,当有太多函数和代码时,以太坊合约可能会达到最大合约大小24KB的限制,程序员Nick Mudge在他7月10日的博客中透露,尽管V神坚持使用“代理合约”可能是解决这些限制的潜在方法,但他创建的标准化代理合约“钻石标准”可能为其锦上添花。代理合约是指通过借用其他合同的功能来保持较小规模的合约。Mudge指出,ERC1400安全代币标准需要很多函数和事件,实现标准契约很容易就会受到限制。而“钻石标准”可以将程序员如何从任意数量的合同中创建小合约借用功能。(Cointelegraph)[2020/7/20]
存入其中后,您可以随时查看池中总共锁定了多少DAI,当前利率是多少,借用其他资产等。
技术实现
从技术角度来看,这种资产供应过程是什么样的?
动态 | 澳大利亚程序员警告用户闪电网络的漏洞:澳大利亚软件程序员和比特币闪电网络程序员Rusty Russell警告用户,“各种基于闪电网络都存在安全问题,可能导致资金损失。”拉塞尔发布推文敦促闪电节点运营商尽快更新他们的软件。根据消息,他的警告涉及0.7.1之前的所有C-Lightning版本、0.7之前的LND版本和0.3之前的ECLAir版本。Russell表示完整的细节将在4周内发布,请在此之前进行升级。”[2019/9/1]
该协议使用了ERC20兼容合约用于每个受支持的市场。它们称为cToken。它们每个都有一个外部函数:mint,这是供应的价值的发送目的地。此函数用于接收供应的价值,根据交易所汇率计算等值的cToken数量,并将它们交换为供应的价值。
例如,如果汇率为1:1,则供应1个ETH,发送方将收到一个cETH。
自称一星期攻破币安程序员,集资后清空微博疑似跑路:3月15日,微博网友“程序员的快乐”在微博挑衅币安创始人赵长鹏,称可以打在一个星期内攻破币安,赢了需要币安奖励1000个比特币。随后几日,该网友在其微博放出以太坊地址,声称需要赞助,赞助人可根据转账资金截图入群获取内部消息。今日该网友微博已清空,疑似跑路。根据查询其以太坊地址得知,该地址目前已将筹集的11.8个ETH转出。[2018/3/21]
mint的反向函数为redeem函数。当用户想要提取其锁定的价值时,根据当前汇率,使用所需数量的cETH代币进行赎回,返还等价的ETH。
注意:还有一个redeemUnderlying函数,使用基础资产单位而不是cToken单位作为输入。
编写代码
前提条件:本演练假定读者对JavaScript,Web3和以太坊智能合约有基本的了解。
我们将按照以下步骤为CompoundFinance提供和兑换ETH:
加载cETH合约。
通过调用mint,锁定ETH并接收cETH代币来提供ETH。
读取我们的cETH余额。
读取我们锁定的ETH余额。
通过提供cETH从协议中赎回我们的ETH。
步骤1:加载cETH合约
每个代币合约在每个网络上都有一个不同的地址。cToken合约的ABI可从https://compound.finance/docs/abi/<network>/<cToken>公开获得。
在我们的场景中,使用cETH和Kovan测试网,我们的URL是https://compound.finance/docs/abi/kovan/cETH。
在Compound的官方文档中可以找到每个网络上每个合约的地址。
使用web3,我们像这样初始化合约实例:
constcEthInstance=newweb3.eth.Contract(cEthABI,addr);
步骤2:提供ETH
图1显示了使用web3的send函数创建cToken的容易程度:
图1:铸造cToken
在此阶段,我们的ETH将开始根据当前利率赚取利息。
步骤3:读取我们的cETH余额
由于cToken合约兼容ERC20,因此它们提供了一个称为balanceOf的函数。我们可以通过调用并向其传递我们的帐户地址来检查我们的cETH余额:
letb=awaitcEthInstance.methods.balanceOf(account).call();
步骤4:读取锁定的ETH余额
cToken合约还提供了一个称为balanceOfUnderlying的函数,该函数使用其拥有的cToken和当前汇率返还帐户的基础资产价值:
letu=await
cEthInstance.methods.balanceOfUnderlying(account).call();
步骤5:从协议中赎回我们的ETH
将步骤4中的值u用作图2中的redeemAmount,我们可以调用redeemUnderlying来赎回我们的ETH:
图2:赎回过程
或者,我们可以使用
redeem代替
redeemUnderlying并将第3步中的值
b作为
redeemAmount。
结论
随着DeFi变得越来越容易使用并被许多人采用,在任何开发人员的工具箱中,学习如何与这些协议进行交互都是一种宝贵的工具。
如果您对区块链开发感兴趣,我会撰写有关入门和构建产品组合的教程,演练,提示和技巧。查看以下的区块链开发资源:https://medium.com/blockcentric/blockchain-development-resources-b44b752f3248
撰文:LeftOfCenter来源:链闻链上数据分析服务公司Glassnode发布一份报告,针对以太坊网络中不同交易类别产生的费用进行分析发现,从创立以来,ETH作为纯支付用例的活动越来越少.
1900/1/1 0:00:00来源:cointelegraph中文特斯拉股价飙升至1,027美元,市值超过比特币,达到1,880亿美元.
1900/1/1 0:00:00国际货币基金组织把这次冠状病引发的全球经济危机称为大封锁(TheGreatLockdown)。它跟1930年代的大萧条不一样,意味着疫情舒缓后新加坡需要创新思维来解决经济危机带来的问题.
1900/1/1 0:00:00在COVID-19大流行期间,随着许多人的工作生活模式变得虚拟化,我们对互联网的依赖只会增加。然而,尽管我们无法离不开互联网,但现在它已经在崩溃的边缘了.
1900/1/1 0:00:00去中心化交易所对去中心化世界越来越重要,因为它代表了以太坊乃至整个加密DeFi生态系统中的重要组成部分.
1900/1/1 0:00:00今天的Coindesk快讯中,有这样一条消息?“支付巨头PayPal和其子公司Venmo计划为其3.25亿用户提供加密货币购买和出售服务.
1900/1/1 0:00:00