如何在币安智能链(BSC)上部署合约已经如何与用户交互。
- 原文: How to use Binance Smart Chain in your Dapp
- 译文出自:登链翻译计划
- 译者:翻译小组
- 校对:Tiny 熊
- 本文永久链接:learnblockchain.cn/article…
Defi一直是币安智能链最近起飞的主要贡献力量。伴随着以太坊主网的Gas成本不断增加(当然在写这篇文章时,以太坊手续费实际上已经处于很长时间以来的最低水平之一,但不排除在下一次ETH价格暴涨是,手续费再次水涨船高。
那么,如何对其进行部署,币安智能链(BSC)究竟是什么?
币安链是由币安在2018年推出的。这是一个基于tendermint的链,其主要功能是转移资产。这使得币安生态系统内的价值转移有了更去中心化的形式。
2020年9月,币安生态系统中加入了币安智能链(BSC)。这是一个独立链,但却是双链设计的一部分,与原来的币安链同步状态。BSC本身只是一个geth分叉,所以它依靠的是与ETH 1.0相同的技术。但由于非常有限的验证者实现了更高的产出,因此Gas成本要低得多。
首先我们要明白,去中心化是一个范围上概念。虽然有些项目努力追求完美主义,在技术上尽可能地分散(有人说Injective protocol吗?),但这并不意味着其他方法都是完全中心的。那么,是什么因素使BSC更集中或更分散?
去中心化部分: BSC运行在权益证明(PoS与授权证明(PoA)相结合的基础上,他们称之为质押授权证明(PoSA),也可参见白皮书这里。在其双链设计中,原始币安链运行在PoS上,而币安智能链本身是一个纯PoA共识。然而,PoA共识中的验证者是通过币安链 staking管理的,因此不是完全集中的。这当然比普通的中心化交易所或纯PoA系统更好。
中心化部分:不得不说,POA是去中心化的反面。你基本上是在信任少数几个选定的验证者。在这种情况下,这些机构是通过币安链的治理来管理的。那么,币安链中的PoS是如何集中的呢?验证者的总数被限制在21个,币安本身可能控制着最大的验证者。
总而言之,你可以看到BSC更倾向于中心化的一面,但它仍然比简单地使用币安明显更加去中心。
部署到币安智能链是非常简单。如果你使用Truffle,只需像这样添加BSC的网络配置:
bsc: {
provider: () => new HDWalletProvider(mnemonic, 'https://bsc-dataseed.binance.org'),
network_id: 56,
},
},
bsc-testnet: {
provider: () => new HDWalletProvider(mnemonic, 'https://data-seed-prebsc-1-s1.binance.org:8545'),
network_id: 97,
}
当然,你还需要资金。对于测试网,你可以使用这里的水龙头。关于如何从公共主链上转移资金,请继续阅读。
现在,你有很多不只是MetaMask作为可能的钱包可供支持。以Yearn Finance为例。在写这篇文章的时候,他们仅支持11个不同的钱包。
我们以MetaMask为例,因为它是最大的钱包,功能最多。在MetaMask上,你现在可以请求它直接连接到一个自定义网络上。
如果你想看案例,请查看PancakeSwap。除非你已经添加了币安 Smart Chain,否则它将要求添加这个网络。或者直接点击币安桥中的'Add network'。
如果用户确认,网络被添加并自动切换到。
自动添加网络并切换,这都要归功于 EIP-3085的新RPC方法wallet_addEthereumChain
。MetaMask的文档在这里。
下面看到如何为用户自动添加BSC到钱包,这将显示你上面看到的弹出窗口:
javascript
const params = [{
"chainId": "0x38", // 56 in decimal
"chainName": "Smart Chain",
"rpcUrls": [
"https://bsc-dataseed.binance.org"
],
"nativeCurrency": {
"name": "Binance Coin",
"symbol": "BNB",
"decimals": 18
},
"blockExplorerUrls": [
"https://bscscan.com"
]
}]
try {
await ethereum.request({
method: 'wallet_addEthereumChain',
params,
})
} catch (error) {
// something failed, e.g., user denied request
}
你可以使用币安桥,在以太坊网络和币安智能链之前转移资金。它是通过在桥接合约上锁定代币来实现转移的。该桥的工作原理与PoA网络桥非常相似。它甚至可能是它的一个分叉,但我在任何地方都找不到币安桥的源代码。如果你知道这个问题的答案,请让我知道。
在开始的时候,币安桥只支持单向桥接,但现在它是双向的。这意味着你可以从以太坊转移到BSC,也可以从BSC转移到以太坊。
BSC的优势之一可能是其庞大的生态系统,特别是Defi项目。只要看看下面这张由BNB Swap提供的图片。
要了解不仅仅是Defi的概况,请查看生态系统的Github这里。最受欢迎的项目是什么?
本翻译由 Cell Network 赞助支持。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!