Skip to content

LemoFoundationLtd/lemo-utils

Repository files navigation

Lemo-utils

A collection of utility functions for Lemochain

npm Build Status code coverage GitHub license

address

amount

buffer

crypto

hex

rlp

base64

address


pubKeyToAddress

pubKeyToAddress(pubKey)

公钥生成地址

Parameters
  1. Buffer - Buffer类型的公钥
Returns

string - 生成Lemo地址


privateKeyToAddress

privateKeyToAddress(privKey)

通过私钥得到公钥,然后用公钥生成地址

Parameters
  1. string|Buffer - 私钥
Returns

string - 生成Lemo地址


verifyAddress

verifyAddress(address)

校验生成的地址

Parameters
  1. string - 地址
Returns

string - 如果地址正确返回空值,反之返回错误信息


isLemoAddress

isLemoAddress(addr)

用来校验是否是lemochain上面的地址,通常是以Lemo为地址的头四位

Parameters
  1. string - 地址
Returns

Boolean - 返回Boolean


isTempAddress

isTempAddress(address)

判断当前账户是否为临时账户

Parameters
  1. string - 地址
Returns

Boolean - 返回Boolean


isContractAddress

isContractAddress(address)

判断当前账户是否为合约账户

Parameters
  1. string - 地址
Returns

Boolean - 返回Boolean


createTempAddress

createTempAddress(from, userId)

创建临时账户

Parameters
  1. string - 需要创建临时账户的地址
  2. ustring - 用户设置的id
Returns

string - 临时账户的地址


encodeAddress

encodeAddress(data)

将十六进制的地址转换为Lemo开头的地址

Parameters
  1. string|Buffer - 需要转换的十六进制地址
Returns

string - 以Lemo开头的地址


decodeAddress

decodeAddress(address)

Lemo开头的地址转换为十六进制的地址

Parameters
  1. string - Lemo开头的地址
Returns

string - 十六进制的地址


generateAccount

generateAccount()

创建账户

Parameters

Returns

object - 带有账户和私钥的地址,包括: - privateKey 私钥 - addressLemo开头的地址

amount


formatLEMO

formatLEMO(mo)

规范LEMO的单位

Parameters
  1. string - 金额,单位mo
Returns

string - 返回计算之后的结果


moToLemo

moToLemo(mo)

将单位从mo转换为LEMO的金额

Parameters
  1. number|string - 金额,单位为mo
Returns

BigNumber - 返回计算之后的金额


lemoToMo

lemoToMo(ether)

将单位从LEMO的金额转换为mo

Parameters
  1. string - 金额,单位为LEMO
Returns

BigNumber - 返回计算之后的金额

Buffer


toBuffer

toBuffer(v)

将不同数据类型的数据转换成Buffer类型的二进制字节流

Parameters
  1. string|Array|object|number|bigNumber|Buffer - 需要转换的数据
Returns

Buffer - 得到的Buffer类型的数据


isBuffer

isBuffer(v)

检测传入的值是否是Buffer类型

Parameters
  1. * - 需要检测的数据
Returns

bool - 是否是Buffer类型的数据


hexStringToBuffer

hexStringToBuffer(hex)

将十六进制的字符串转换成Buffer类型的二进制字节流

Parameters
  1. string - 需要转换的十六进制字符串
Returns

Buffer - 得到的Buffer类型的数据


bufferTrimLeft

bufferTrimLeft(buffer)

删去Buffer类型的二进制字节流左边连续的0

Parameters
  1. Buffer - 需要转换的数据
Returns

Buffer - 整理后的Buffer类型的数据


setBufferLength

setBufferLength(buffer, length, right)

将buffer设置为固定的长度

Parameters
  1. Buffer - Buffer类型的数据
  2. string - 长度
  3. boolean - 如果传入的buffer长度不足,是否从右边补0
Returns

Buffer - 整理后的Buffer类型的数据

crypto


sign

sign(privateKey, hash)

对hash进行签名

Parameters
  1. Buffer - Buffer类型的私钥数据
  2. Buffer - Buffer类型的交易hash值
Returns

Buffer - Buffer类型的签名值


recover

recover(hash, sig)

通过hash和签名恢复公钥

Parameters
  1. Buffer - Buffer类型的私钥数据
  2. Buffer - Buffer类型的交易hash值
Returns

Buffer|null - 如果成功得到的Buffer类型的公钥,反之为null


sha3

function sha3(data)

hash算法

Parameters
  1. Buffer - buffer数据
Returns

Buffer - 加密之后的buffer


privateToPublicKey

privateToPublicKey(privKey)

通过私钥得到公钥

Parameters
  1. string|Buffer - 私钥
Returns

Buffer - 得到的公钥的buffer值

hex


has0xPrefix

has0xPrefix(str)

检验一个十六进制字符串是否以0x开头

Parameters
  1. string - 十六进制字符串
Returns

Boolean - 返回Boolean值


decodeUtf8Hex

decodeUtf8Hex(hex)

将一个十六进制字符串以utf格式进行解码

Parameters
  1. string - 十六进制字符串
Returns

string - 解析出的数据


toHexStr

toHexStr(data)

将字符串或者buffer数据转换成十六进制字符串

Parameters
  1. string|Buffer - 需要转换的数据
Returns

string - 十六进制字符串

rlp


rlpEncode

rlpEncode(input)

使用rlp算法进行编码

Parameters
  1. string|Buffer|Array|number - 需要编码的数据
Returns

Buffer - 编码后的Buffer数据对象


rlpDecode

rlpDecode(input, stream)

使用rlp算法进行解码

Parameters
  1. string|Buffer|Array|number - 需要解码的数据
  2. bool - stream是否是一个流,这种情况下input末尾会存在一些无法解析的数据
Returns

Array - 解码出的数据


getLength

getLength(input)

获取长度,输入需要获取长度的数据,然后返回此数据的长度


base64


base64Encode

base64Encode(input, uriSafe, isHex)

使用base64算法进行编码

Parameters
  1. string - 需要编码的字符串
  2. uriSafe - 是否需要编码为uri安全的字符串
  3. isHex - input是否是一个十六进制字符串
Returns

string - 编码后的字符串


base64Decode

base64Decode(input, isHex)

使用base64算法进行解码

Parameters
  1. string - 需要解码的字符串
  2. isHex - 解码后是否是一个十六进制字符串
Returns

string - 解码后的字符串


About

A collection of utility functions for Lemochain

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •