A collection of utility functions for Lemochain
- pubKeyToAddress
- privateKeyToAddress
- verifyAddress
- isLemoAddress
- isTempAddress
- isContractAddress
- createTempAddress
- encodeAddress
- decodeAddress
- generateAccount
pubKeyToAddress(pubKey)
公钥生成地址
Buffer
- Buffer类型的公钥
string
- 生成Lemo地址
privateKeyToAddress(privKey)
通过私钥得到公钥,然后用公钥生成地址
string|Buffer
- 私钥
string
- 生成Lemo地址
verifyAddress(address)
校验生成的地址
string
- 地址
string
- 如果地址正确返回空值,反之返回错误信息
isLemoAddress(addr)
用来校验是否是lemochain上面的地址,通常是以Lemo
为地址的头四位
string
- 地址
Boolean
- 返回Boolean
isTempAddress(address)
判断当前账户是否为临时账户
string
- 地址
Boolean
- 返回Boolean
isContractAddress(address)
判断当前账户是否为合约账户
string
- 地址
Boolean
- 返回Boolean
createTempAddress(from, userId)
创建临时账户
string
- 需要创建临时账户的地址ustring
- 用户设置的id
string
- 临时账户的地址
encodeAddress(data)
将十六进制的地址转换为Lemo
开头的地址
string|Buffer
- 需要转换的十六进制地址
string
- 以Lemo
开头的地址
decodeAddress(address)
将Lemo
开头的地址转换为十六进制的地址
string
-Lemo
开头的地址
string
- 十六进制的地址
generateAccount()
创建账户
无
object
- 带有账户和私钥的地址,包括:
- privateKey
私钥
- address
以Lemo
开头的地址
formatLEMO(mo)
规范LEMO的单位
string
- 金额,单位mo
string
- 返回计算之后的结果
moToLemo(mo)
将单位从mo转换为LEMO的金额
number|string
- 金额,单位为mo
BigNumber
- 返回计算之后的金额
lemoToMo(ether)
将单位从LEMO的金额转换为mo
string
- 金额,单位为LEMO
BigNumber
- 返回计算之后的金额
toBuffer(v)
将不同数据类型的数据转换成Buffer类型的二进制字节流
string|Array|object|number|bigNumber|Buffer
- 需要转换的数据
Buffer
- 得到的Buffer类型的数据
isBuffer(v)
检测传入的值是否是Buffer类型
*
- 需要检测的数据
bool
- 是否是Buffer类型的数据
hexStringToBuffer(hex)
将十六进制的字符串转换成Buffer类型的二进制字节流
string
- 需要转换的十六进制字符串
Buffer
- 得到的Buffer类型的数据
bufferTrimLeft(buffer)
删去Buffer类型的二进制字节流左边连续的0
Buffer
- 需要转换的数据
Buffer
- 整理后的Buffer类型的数据
setBufferLength(buffer, length, right)
将buffer设置为固定的长度
Buffer
- Buffer类型的数据string
- 长度boolean
- 如果传入的buffer长度不足,是否从右边补0
Buffer
- 整理后的Buffer类型的数据
sign(privateKey, hash)
对hash进行签名
Buffer
- Buffer类型的私钥数据Buffer
- Buffer类型的交易hash值
Buffer
- Buffer类型的签名值
recover(hash, sig)
通过hash和签名恢复公钥
Buffer
- Buffer类型的私钥数据Buffer
- Buffer类型的交易hash值
Buffer|null
- 如果成功得到的Buffer类型的公钥,反之为null
function sha3(data)
hash算法
Buffer
- buffer数据
Buffer
- 加密之后的buffer
privateToPublicKey(privKey)
通过私钥得到公钥
string|Buffer
- 私钥
Buffer
- 得到的公钥的buffer值
has0xPrefix(str)
检验一个十六进制字符串是否以0x开头
string
- 十六进制字符串
Boolean
- 返回Boolean值
decodeUtf8Hex(hex)
将一个十六进制字符串以utf格式进行解码
string
- 十六进制字符串
string
- 解析出的数据
toHexStr(data)
将字符串或者buffer数据转换成十六进制字符串
string|Buffer
- 需要转换的数据
string
- 十六进制字符串
rlpEncode(input)
使用rlp算法进行编码
string|Buffer|Array|number
- 需要编码的数据
Buffer
- 编码后的Buffer数据对象
rlpDecode(input, stream)
使用rlp算法进行解码
string|Buffer|Array|number
- 需要解码的数据bool
-stream
是否是一个流,这种情况下input
末尾会存在一些无法解析的数据
Array
- 解码出的数据
getLength(input)
获取长度,输入需要获取长度的数据,然后返回此数据的长度
base64Encode(input, uriSafe, isHex)
使用base64算法进行编码
string
- 需要编码的字符串uriSafe
- 是否需要编码为uri安全的字符串isHex
-input
是否是一个十六进制字符串
string
- 编码后的字符串
base64Decode(input, isHex)
使用base64算法进行解码
string
- 需要解码的字符串isHex
- 解码后是否是一个十六进制字符串
string
- 解码后的字符串