Skip to main content

Validate QRL Address

Build Status Coverage Status npm version

Synopsis

An npm package to validate (and extract data from) QRL addresses.

The dist\validateQrlAddress.js file can be used within a web browser

Code Examples

where npm packages can be used:

var validate = require('@theqrl/validate-qrl-address');
var isValid = validate.hexString('Q01070050d31c7f123995f097bc98209e9231d663dc26e06085df55dc2f6afe3c2cd62e8271a6bd')
console.log(isValid.result);
console.log(isValid.sig.type);
console.log(isValid.sig.number);
console.log(isValid.hash.function);

=>

true
XMSS
16384
SHAKE-128

in the browser:

<script src="../dist/validateQrlAddress.js"></script>
<script>
var result = validateQrlAddress.hexString('Q01070050d31c7f123995f097bc98209e9231d663dc26e06085df55dc2f6afe3c2cd62e8271a6bd');
console.log(result);
</script>

Motivation

Provides a utility function to nodejs based applications. Part of a suite of development tools to simplify working within the QRL ecosystem.

Installation

npm install @theqrl/validate-qrl-address

API Reference

TODO (but the object returned is pretty self explanatory)

Inspecting this Pen may be of use.

Tests

Run with:

npm test

See test/test.js for examples.

  #validateHexString
✓ should return true: argument is a valid address
✓ should return xmss as name of signature scheme
✓ should return XMSS tree height of 14
✓ should return number of XMSS signatures as 16384 (2^14)
✓ should return shake-128 as name of the hashing method
✓ should return false: argument is NOT a valid address
✓ should return false: argument does NOT have an initial Q
✓ should return true: argument is a valid address length
✓ should return false: argument is NOT a valid address length
✓ should return true: argument does have a valid hashing mechanism
✓ should return false: argument does NOT a valid hashing mechanism
✓ should return false: argument does NOT a valid checksum

Contributors

JP Lomas

License

MIT