Skip to content

SebastienGllmt/cip14-js

 
 

Repository files navigation

CIP14-JS

On the Cardano blockchain, native assets are uniquely identified by both their policy id and asset name. Neither the policy id nor the asset name are intended to be human-readable data. CIP14 introduces an asset fingerprint which is a short(er) and human-readable identifier for assets that user can recognize and refer to when talking about assets.

More specifically, CIP14 defines a user-facing asset fingerprint as a bech32-encoded blake2b-160 digest of the concatenation of the policy id and the asset name.

This package is a Typescript implementation of CIP14

Install

npm i @emurgo/cip14-js --save

Usage

const AssetFingerprint = require('@emurgo/cip14-js');

// initialize class with policyId, assetName
const assetFingerprint = new AssetFingerprint(Buffer.from('1e349c9bdea19fd6c147626a5260bc44b71635f398b67c59881df209', 'hex'), Buffer.from('504154415445', 'hex'));

const fingerprintHash = assetFingerprint.hash();
const bech32Fingerprint = assetFingerprint.fingerprint();
// initialize class with bech32
const assetFingerprint = new AssetFingerprint().fromBech32('asset1rjklcrnsdzqp65wjgrg55sy9723kw09mlgvlc3');

const fingerprintHash = assetFingerprint.hash();
const prefix = assetFingerprint.prefix();

About

JS implementation of CIP14 for Cardano

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.9%
  • JavaScript 6.1%