辅助工具类接口

为方便使用,JS SDK 提供一些辅助工具类方法,如 getHashtoDecimaltoUtf8getKeyInfodecryptAESWithPassword。可直接通过 Chain 全局对象或 Chain 初始化的环境实例 chain 来使用辅助工具类方法。

    Chain.utils.getHash('Tester001') //通过账户 name,计算得到账户的 identity

getHash

对给定字符串计算 hash,通常用来得到 identity。

请求参数

参数

必选

类型

说明

msg

true

string

目标字符串,作为计算 hash 的输入。

not0x

false

bool

返回结果的 16 进制表示是否以“0x”为前缀,true:不以“0x”为前缀;false 或不指定:以“0x”为前缀。

返回值

返回字段

字段类型

说明

result

string

16 进制的字符串表示,根据参数的限定确定是否以“0x”为前缀。

示例

const accountId = Chain.utils.getHash('Tester001')

toDecimal

将十六进制转换成十进制,可传入 BigNumber 对象。

请求参数

参数

必选

类型

说明

value

true

string/BigNumber

目标参数

返回值

返回字段

字段类型

说明

result

number

十进制数字

示例

const num = Chain.utils.toDecimal('0x64')

toUtf8

将十六进制字符串转换成 utf8 字符串。

请求参数

参数

必选

类型

说明

value

true

string

16 进制字符串

返回值

返回字段

字段类型

说明

result

string

utf8 字符串

示例

const str = Chain.utils.toUtf8('0xe89a82e89a81e58cbae59d97e993be')

getKeyInfo

获取账户信息。

请求参数

参数

必选

类型

说明

value

true

string

账户文件(user.pem,参考 准备合约链的账户)读取内容,或者 16 进制(以“0x”为前缀)私钥字符串

passphrase

false

string

账户文件(user.pem)的密码,如果 value 参数使用的是 16 进制私钥字符串,则不需要配置此密码。

返回值

返回字段

字段类型

说明

result

object

密钥对象

result.privateKey

Buffer

私钥 Buffer

result.publicKey

Buffer

公钥 Buffer

示例

const result = Chain.utils.getKeyInfo('0x2768d0e80eb904560aa0a3ff4fc96b2f4d1e5d1fe293cc69c07808765ab20c29')