new ScriptBuilder()
- Description:
Script Builder class
- Source:
Methods
addOp(opcode) → {ScriptBuilder}
- Description:
Add an opcode
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
opcode |
number | Opcode to add |
Returns:
this
- Type
- ScriptBuilder
build() → {Buffer}
- Description:
Build the script
- Source:
Returns:
Compiled script
- Type
- Buffer
pushData(data) → {ScriptBuilder}
- Description:
Push data onto the stack
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Buffer | string | Data to push |
Returns:
this
- Type
- ScriptBuilder
pushNumber(num) → {ScriptBuilder}
- Description:
Push a number onto the stack
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
num |
number | Number to push |
Returns:
this
- Type
- ScriptBuilder
reset() → {ScriptBuilder}
- Description:
Reset the builder
- Source:
Returns:
this
- Type
- ScriptBuilder
(static) createCLTV(locktime, pubkeyHash) → {Buffer}
- Description:
Create CLTV (CheckLockTimeVerify) script
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
locktime |
number | Locktime value |
pubkeyHash |
Buffer | Public key hash |
Returns:
CLTV script
- Type
- Buffer
(static) createCSV(sequence, pubkeyHash) → {Buffer}
- Description:
Create CSV (CheckSequenceVerify) script
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
sequence |
number | Relative locktime |
pubkeyHash |
Buffer | Public key hash |
Returns:
CSV script
- Type
- Buffer
(static) createMultisig(m, publicKeys) → {Buffer}
- Description:
Create multisig script
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
m |
number | Required signatures |
publicKeys |
Array.<Buffer> | Public keys |
Returns:
Multisig script
- Type
- Buffer
(static) createOpReturn(data) → {Buffer}
- Description:
Create OP_RETURN output script
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Buffer | string | Data to embed (max 80 bytes) |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2PKH(pubkeyHash) → {Buffer}
- Description:
Create P2PKH scriptPubKey
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
pubkeyHash |
Buffer | 20-byte public key hash |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2PKHFromPubkey(publicKey) → {Buffer}
- Description:
Create P2PKH scriptPubKey from public key
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
publicKey |
Buffer | Compressed or uncompressed public key |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2PKHScriptSig(signature, publicKey) → {Buffer}
- Description:
Create P2PKH scriptSig (unlocking script)
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
signature |
Buffer | DER signature with sighash type |
publicKey |
Buffer | Public key |
Returns:
scriptSig
- Type
- Buffer
(static) createP2SH(scriptHash) → {Buffer}
- Description:
Create P2SH scriptPubKey
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
scriptHash |
Buffer | 20-byte script hash |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2SHScriptSig(pushData, redeemScript) → {Buffer}
- Description:
Create P2SH scriptSig
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
pushData |
Array.<Buffer> | Array of data to push |
redeemScript |
Buffer | The redeem script |
Returns:
scriptSig
- Type
- Buffer
(static) createP2TR(xOnlyPubkey) → {Buffer}
- Description:
Create P2TR scriptPubKey (Taproot)
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
xOnlyPubkey |
Buffer | 32-byte x-only public key |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2WPKH(pubkeyHash) → {Buffer}
- Description:
Create P2WPKH scriptPubKey (SegWit v0)
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
pubkeyHash |
Buffer | 20-byte public key hash |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2WPKHFromPubkey(publicKey) → {Buffer}
- Description:
Create P2WPKH scriptPubKey from public key
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
publicKey |
Buffer | Compressed public key |
Returns:
scriptPubKey
- Type
- Buffer
(static) createP2WSH(scriptHash) → {Buffer}
- Description:
Create P2WSH scriptPubKey (SegWit v0)
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
scriptHash |
Buffer | 32-byte script hash (SHA256) |
Returns:
scriptPubKey
- Type
- Buffer
(static) detectType(script) → {Object}
- Description:
Detect script type
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
script |
Buffer | Script to analyze |
Returns:
Script type info
- Type
- Object
(static) disassemble(script) → {string}
- Description:
Disassemble script to string
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
script |
Buffer | Script to disassemble |
Returns:
Human-readable script
- Type
- string
(static) parse(script) → {Array}
- Description:
Parse a script into human-readable format
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
script |
Buffer | Script to parse |
Returns:
Array of parsed elements
- Type
- Array