ilp-packet
TypeScript icon, indicating that this package has built-in type declarations

3.1.4-alpha.2 • Public • Published

ILP Packet

npm

A serializer and deserializer for ILP packets and messages

Usage

Install

npm install ilp-packet

Serialize PREPARE, FULFILL, REJECT

const IlpPacket = require('ilp-packet')
const crypto = require('crypto')
function sha256(preimage) {
  return crypto.createHash('sha256').update(preimage).digest()
}

const fulfillment = crypto.randomBytes(32)
const condition = sha256(fulfillment)

const binaryPrepare = IlpPacket.serializeIlpPrepare({
  amount: '10',
  executionCondition: condition,
  destination: 'g.us.nexus.bob',
  data: Buffer.from('hello world'),
  expiresAt: new Date(new Date().getTime() + 10000),
})

const binaryFulfill = IlpPacket.serializeIlpFulfill({
  fulfillment,
  data: Buffer.from('thank you'),
})

const binaryReject = IlpPacket.serializeIlpReject({
  code: 'F00',
  triggeredBy: 'g.us.nexus.gateway',
  message: 'more details, human-readable',
  data: Buffer.from('more details, machine-readable'),
})

Types

IlpPrepare

Property Type
amount string
executionCondition Buffer
expiresAt Date
destination string
data Buffer

IlpFulfill

Property Type
fulfillment Buffer
data Buffer

IlpReject

Property Type
code IlpErrorCode
triggeredBy string
message string
data Buffer

Readme

Keywords

none

Package Sidebar

Install

npm i ilp-packet

Weekly Downloads

1,449

Version

3.1.4-alpha.2

License

Apache-2.0

Unpacked Size

70.1 kB

Total Files

17

Last publish

Collaborators

  • interledger