Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
@zilliqa-js/util
Advanced tools
Utility functions useful in Zilliqa-related programs.
BN
See documentation at bn.js. This is
simply a re-export of that library to prevent bloating other @zilliqa-js
packages, most of which depend on bn.js
in small ways.
Long
See documentation at long.js. This is
simply a re-export for similar reasons. Note that long
is only required if
you need to serialise integers with size greater than or equal to 2^53
.
intToHexArray(int: number, size: number): string[]
Converts an integer to an array of hexadecimal strings (little endian). Size is the total length of bytes to pad to.
Parameters
int
: number
- the decimal number to convert.Returns
string[]
- hexadecimal array representation of the decimal number.intToByteArray(num: number, size: number): Uint8Array
Converts an integer to a Uint8Array
(i.e., byte array).
Parameters
num
: number
- the decimal number to convertReturns
Uint8Array
- byte array, padded to size
.hexToByteArray(hex: string): Uint8Array
Converts a hex-encoded string
to a Uint8Array
. Endianess is not important.
Parameters
hex
: string
Returns
Uint8Array
hexToIntArray(hex: string): number[]
Converts a hex-encoded string to an array of integers.
Parameters
hex
: string
Returns
number[]
compareBytes(a: string, b: string): boolean
Performs a constant time comparison of two hexadecimal values. This avoids timing attacks.
Parameters
a
: string
- hex-encoded string.b
: string
- hex-encoded string.Returns
boolean
- true
if the values are equal.isHex(str: string): boolean
Determines if a given string is hex-encoded.
Parameters
str
: string
.Returns
boolean
- true
if the string is hex-encoded.isAddress(address: string): boolean
Determines if a given string is a valid address.
Parameters
address
: string
.Returns
boolean
- true
if the string is an address.isPrivateKey(privateKey: string): boolean
Determines if a given string is a valid private key.
Parameters
privateKey
: string
.Returns
boolean
- true
if the string is a valid private key.isPubKey(pubKey: string): boolean
Determines if a given string is a valid uncompressed public key.
Parameters
pubKey
: string
.Returns
boolean
- true
if the string is a valid public key.isSignature(sig: string): boolean
Determines if a given string is a valid Schnorr signature.
Parameters
sig
: string
Returns
boolean
- true
if the string is a valid signature.isNumber(x: unknown): boolean
Determines if a given value is a valid JS number
.
Parameters
x
: unknown
Returns
boolean
- true
if the string is a valid signature.isBN(x: unknown): boolean
Determines if a given value is an instance of BN.js
.
Parameters
x
: unknown
Returns
boolean
- true
if the value is a BN
instance.isString(x: unknown): boolean
Determines if a given value is a valid JS string
.
Parameters
x
: unknown
Returns
boolean
- true
if the value is a string
.isPlainObject(x: unknown): boolean
Determines if a given value is a plain JS object (i.e. directly below
Object
in the prototype chain).
Parameters
x
: unknown
Returns
boolean
- true
if the value is a plain object.matchesObject(x: unknown, test: { [key: string]: Validator[] }): boolean
Determines if a value has the shape specified by test
.
Parameters
x
: unknown
test
: { [key: string]: Validator[] }
Returns
boolean
- true
if the value matches test
.FAQs
Utilities for working with Zilliqa.
We found that @zilliqa-js/util demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.