
Product
Introducing Supply Chain Attack Campaigns Tracking in the Socket Dashboard
Campaign-level threat intelligence in Socket now shows when active supply chain attacks affect your repositories and packages.
@hyperdivision/shielded-multisig
Advanced tools
@hyperdivision/shielded-multisigShielded Bitcoin Multisig using Public Key Tweaking
const shield = require('@hyperdivision/shielded-multisig')
// secp256k1 master keys used to redeem. Here we construct a 2-of-3 address
const threshold = 2
const masterKeys = [
Buffer.from('...', 'hex'),
Buffer.from('...', 'hex'),
Buffer.from('...', 'hex')
]
// Id must be 32 byte integer. Could also be a 256 bit hash of some user string
const id = Buffer.alloc(32)
id.writeUInt32LE(1) // Just use the Uint32LE value of `1`
// Save the tweak somewhere, and give out the hash. The `counter` may be
// incremented internally if a specific value causes an invalid tweaked key
const { tweak, address } = shield.address({ id, counter: 0 }, masterKeys, threshold)
// deepEqual(tweakS, tweak) === true
const { tweak: tweakS, script } = shield.redeemScript(tweak, masterKeys, threshold)
Signing:
const shield = require('@hyperdivision/shielded-multisig')
const { tweakPrivate } = require('@hyperdivision/shielded-multisig/tweak')
const threshold = 2
const masterKeys = [
Buffer.from('...', 'hex'),
Buffer.from('...', 'hex'),
Buffer.from('...', 'hex')
]
const tweak = { /* ... */ }
const { script } = shield.redeemScript(tweak, masterKeys, threshold)
const privateKey = Buffer.from('...', 'hex')
// bcoin part
const { MTX, KeyRing } = require('bcoin')
const spend = MTX.fromJSON(/* transaction data */)
const ring = KeyRing.fromPrivate(tweakPrivate(tweak, privateKey))
ring.witness = true
ring.script = script
var signed = spend.sign(ring)
if (signed !== spend.inputs.length) throw new Error('Did not sign all inputs')
// now spend is signed
const { tweak, address } = shield.address(userInfo, masterKeys, threshold)const { tweak, script } = shield.redeemScript(userInfo, masterKeys, threshold)const tweak = tweak.tweak(userInfo)const tweak = tweak.tweakPublic(userInfo, publicKey)const tweak = tweak.tweakPrivate(userInfo, privateKey)npm install @hyperdivision/shielded-multisig
FAQs
Shielded Bitcoin Multisig using Public Key tweaking
The npm package @hyperdivision/shielded-multisig receives a total of 0 weekly downloads. As such, @hyperdivision/shielded-multisig popularity was classified as not popular.
We found that @hyperdivision/shielded-multisig demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Campaign-level threat intelligence in Socket now shows when active supply chain attacks affect your repositories and packages.

Research
Malicious PyPI package sympy-dev targets SymPy users, a Python symbolic math library with 85 million monthly downloads.

Security News
Node.js 25.4.0 makes require(esm) stable, formalizing CommonJS and ESM compatibility across supported Node versions.