Files
xrpl-dev-portal/_code-samples/modular-tutorials/five-bells.cjs
2025-05-02 12:42:24 -07:00

24 lines
786 B
JavaScript

const cc = require('five-bells-condition');
const crypto = require('crypto');
// 1. Generate a random 32-byte seed
const preimageData = crypto.randomBytes(32);
// 2. Create a PreimageSha256 fulfillment object
const fulfillment = new cc.PreimageSha256();
// 3. Set the preimage
fulfillment.setPreimage(preimageData);
// 4. Generate the condition (binary)
const conditionBinary = fulfillment.getConditionBinary();
// 5. Generate the fulfillment (binary)
const fulfillmentBinary = fulfillment.serializeBinary();
// Convert to hex for easier use
const conditionHex = conditionBinary.toString('hex').toUpperCase();
const fulfillmentHex = fulfillmentBinary.toString('hex').toUpperCase();
console.log('Condition (hex):', conditionHex);
console.log('Fulfillment (hex):', fulfillmentHex);