Chainide部署BSC币安智能链合约

前言

对数字货币有过一定了解的朋友应该知道币安(binance),币安最近推出了一个能兼容以太坊EVM并且运行智能合约的区块链,名为币安智能链。

这条链是使用PoSA的方式进行节点的选举和一致性校验,参与者使用BNB抵押进行参与,如果校验交易成功,提出有效区块,将从区块当中的交易收取手续费。

今天要介绍的内容就是如何通过Chainide以及Metamask来部署一个BSC上的智能合约

网站地址:https://binanceide.com/project/welcome

智能合约的编译及部署

首先,进入网站之后我们先找到如何新建一个项目,在右侧有个蓝色的方框内,写着Create Project,点击之后就会跳转到一个新的项目当中。

在这里我们可以看到会自动生成2个文件,上面是关于ERC20的类型引用(githubImport.sol),下面是一个简单的存取数的智能合约。

我把合约内容贴在这里,让大家了解一下。

pragma solidity >=0.4.22 <0.7.0;

/**
 * @title Storage
 * @dev Store & retrieve value in a variable
 */
contract Storage {

    uint256 number;

    /**
     * @dev Store value in variable
     * @param num value to store
     */
    function store(uint256 num) public {
        number = num;
    }

    /**
     * @dev Return value 
     * @return value of 'number'
     */
    function retrieve() public view returns (uint256){
        return number;
    }
}

合约内包括一个变量和两个函数,分别对应的是写数以及读数。

编译

在我们写好了智能合约后,点击右侧的compile会出现这样的侧边框。首先根据我们之前智能合约当中的版本定义选择一个complier,之前的定义是>=0.4.22 <0.7.0,那么在这里我选择一个0.6.8的版本,是符合版本定义的。

选择好之后点击下面的蓝色方框Compile storage.sol,就可以进行编译了,在编译成功后会出现如下字样。

在编译完成之后我们将进行合约的部署。

在这里有一点需要注意的,BSC上有两条链可以进行合约的部署,一条是测试网,一条是主网。测试网可以通过测试网的faucet领取测试代币进行部署,主网则需要从币安的官网上购买BNB存到自己的BEP20地址当中才能部署。

测试网部署合约

首先我们讲一下关于测试网的合约部署,在测试网上部署成本比较低,过程也比较简单。

与一般的以太坊EVM部署不同的是,在币安智能链上部署需要对Metamask进行一些设置。

首先,我们打开小狐狸钱包(metamask),点击Ethereum Mainnet的地方选择网络选项,然后点击自定义RPC(Custom RPC)。

点击进入后会有5个地方需要填写,内容如下:

Network Name:BSC Testnet
New RPC URL :https://data-seed-prebsc-1-s1.binance.org:8545/
Chain ID:97
Currency symbol:BNB
Block Explorer URL:https://testnet.bscscan.com

按照上面的样子填好后点击save就可以了,此时在network的选项栏当中会出现BSC Testnet这个选项。

接着我们可以去BSC测试网的水龙头(faucet)获取测试代币。
网站地址:https://testnet.binance.org/faucet-smart

在网站中间的方框内输入自己的钱包地址即可(钱包地址在打开metamask窗口的上方,点击即可复制)。

将网络切换到BSC Testnet,然后我们就可以看到自己的钱包当中有了一些BNB。

接着我们需要将Metamask与chainide的网站进行connect,让部署程序可以调用我们的钱包地址。

首先将浏览器切换到chainide所在的窗口,然后点击Metamask的图标,右上角有三个小点点,点击之后选择Connect site

此时会出现这样的方框,点击Manually connect to current site然后一步步点击确认即可。

然后再打开Metamask时,左上方应该会有一个绿点,同时显示为connect,这样就表示已经与网站链接成功。

接下来我们进行合约的部署,首先点击右侧的Deploy & interaction,会进入到部署的方框,设置Value为60,然后确认部署的合约正确之后点击Deploy。

此时我们会跳出这样的Metamask界面,要注意的是上面的Gas Price如果不是60需要自己修改一下,有时候如果部署失败了可能是Gas price给的不够高,如果不够的话给到100试试看也是可以的。

然后我们就可以在界面上看到部署成功的信息了,同时在右侧的Interact当中会出现合约内的函数,这样就代表部署已经成功了。

接下来我们可以尝试调用一下它们,就是点击Interact,然后对函数的数值进行一些设置和提交,就可以实现对合约的调用了。

主网部署合约

刚刚我们讲完了测试网的合约部署内容,接下来讲一下关于主网的,主网与测试网不同的部分在于它的Network设置和代币的购买

我们还是点击Metamask的网络,选择Custom RPC,点击进入后会有5个地方需要填写,内容如下:

Network Name:BSC Mainnet
New RPC URL :https://bsc-dataseed1.binance.org/
Chain ID:56
Currency symbol:BNB
Block Explorer URL:https://bscscan.com/

按照上面的样子填好后点击save就可以了,此时在network的选项栏当中会出现BSC Mainnet这个选项。

兑换BNB充值

在BSC链上,手续费由BNB进行扣款,因此如果想部署合约,钱包里需要有一定数量的BNB。

我们可以在币安的平台上兑换一定数量的BNB,然后将其提现到自己的账户当中。

tips:要注意的是在提现时,选择的是BSC链。

在完成以上的充值操作并且确认账户内有代币后,其余操作与上面的测试网部署就是相同的了。

结语

关于使用Chainide进行BSC币安智能链的部署教程就讲解到这里,有疑问的同学可以在评论区内留言,不同的平台因为架构不同带来更多的可能性,也希望大家可以多做一些尝试,共同进步。

参考资料

币安智能链官方文档

你可能感兴趣的:(Chainide部署BSC币安智能链合约)