MPT智能合约的安全性

数字合约是在互联网上运行的数字化签名合约。举个例子,乘客在Uber的用户条款中点击“同意”,即同意在车辆将其送达目的地时付款给司机。智能合约本身也是一个数字协议,只是它运行在区块链上具有不可篡改的特性。智能合约会严格按照约定的条款执行,最简单的条件逻辑是:“ 如果事件X发生,则执行行为为Y。”例如,如果A队赢得体育比赛,则付款给Bob;如果B队赢得比赛,则付款给Steve。智能合约无须手动输⼊比赛结果,而是直接连接比赛结果数据触发执行。智能合约收到数据后,会自动执行,通常执行的任务是付款。

基于智能合约的常见的DeFi业务操作最常见的业务操作有两个:

  • 客户通过项目方官网入口,将自己的数字资产质押进项目方的智能合约,从而获得收益。

  • 客户将项目方的智能合约中属于自己的数字资产解除质押,使得数字资产回到自己的钱包地址。

数字资产质押进项目方的智能合约中,资产的安全性保障智能合约中的数字资产的安全,通常取决于两个因素:私钥安全和合约安全。即,客户的私钥没有泄露,合约开发者严格按照《以太坊智能合约安全指南》进行开发,该合约就可以视为安全等级为优。

如上图所示,我们只需要记住,只要私钥不被别人知道,我的数字资产在该就是安全的。我们把自己的数字资产转移到CEX(如OKEx)时,此时你已经失去了对数字资产的掌控权。这也是为什么DEX和DeFi如此⽕爆的原因,因为他们并不会转移你对数字资产的控制权。从私钥的生成过程看,记住助记词就等于记住了私钥,因此我们只需要记住12个英文单词即可。

助记词切不可告诉他⼈,顺序也不能记错

一个比较常见的问题,即项目官网访问不了,质押进入项目方智能合约的数字资产是否会丢失? 如下图所示的智能合约执⾏过程:

根据上图可知,不会。即便项目的网站页面通过浏览器无法访问了,用户的数字资产依然存储在合约中,用户也可自行使用web3js调用合约函数完成操作(如质押、解押等)。

MPT智能合约严格遵守Web3文档标准和《智能合约 - 安全性描述》。开发团队已经进行了单元测试,并已经在Secret测试链进行了更多的用例测试。开发团队会邀请顶级智能合约审核机构对合约进行审核以保证用户的财产安全和项目的可持续性,确保资金池资金的万无一失。对于静态收益合约,提取质押代币接口而言,如下面代码片段所示:

nonReentrant装饰器保证的重入的失败,有且仅有质押人才可提取其对应的质押币和收益,不会造成任何资产泄露和损失。 对于动态收益合约,提取动态收益的接口而言,如下所示:

nonReentrant装饰器和withdrawProof哈希表保证的重入的失败,仅对应默克尔树的叶子节点可提取,不会造成任何资产泄露和损失。

对于衔接段合约,MPT合约在编写过程中对代币的流向进行了单向的限制,即只允许从一个合约流转到另一个指定合约,这样保证了在衔接段不会造成任何资产的损失。

流动性资金池本质上是一个包含着资金的智能合约,只有当满足智能合约执行条件时才会发生入金、出金动作,比如存入本金获得利息。而智能合约又是全网共识、链上公开透明的程序代码,这从根本上保障了资金池规则的不可篡改性和可审计性。

Last updated