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