问题描述
我尝试了@polkadot/util-crypto
lib和@polkadot/keyring
来将公钥转换为圆点地址,但没有帮助。
polkadot.js
提供了什么方法吗?
获取地址的步骤也很有效。
谢谢
解决方法
@polkadot/util-crypto
公开了函数encodeAddress
,该函数可以输入公共密钥字节/十六进制并输出SS58编码的地址。如果要获取特定网络(如Polkadot)的地址,则需要提供一个辅助参数,即该网络的SS58前缀。如果是Polkadot,则为0。
https://github.com/paritytech/substrate/wiki/External-Address-Format-(SS58)#address-type
例如:
let address = util_crypto.encodeAddress("0x263158a10b39debac59bd1239bc64fb4bd678f507814d24f59efd46279111c71",0)
document.getElementById("output").innerText = address;
<script src="//unpkg.com/polkadot-js-bundle/polkadot.js"></script>
<div id="output"></output>