Security News
New Python Packaging Proposal Aims to Solve Phantom Dependency Problem with SBOMs
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
@bitgo/unspents
Advanced tools
Defines the chain codes used for different unspent types and methods to calculate bitcoin transaction sizes
The package provides a Dimensions
class with methods to calculate bitcoin transaction sizes
npm install --save @bitgo/unspents
The transaction vSize is critical to calculating the proper transaction fee.
The class unspents.Dimensions
provides a class that helps work with the components required
to calculate an accurate estimate of a transaction vSize.
import { Codes, Dimensions } from '@bitgo/unspents';
// using raw attributes
new Dimensions({
nP2shInputs: 1,
nP2shP2wshInputs: 1,
nP2wshInputs: 1,
outputs: { count: 1, size: 32 },
});
// calculate from unspents that have `chain` property (see Chain Codes)
Dimensions.fromUnspents(unspent[0]);
Dimensions.fromUnspents(unspents);
// Signed inputs work too
Dimensions.fromInput(inputs[0]);
Dimensions.fromInputs(inputs);
// Transaction outputs
Dimensions.fromOutputs(outputs[0]);
Dimensions.fromOutputs(outputs);
Dimensions.fromOutputOnChain(Codes.p2sh.internal);
Dimensions.fromOutputScriptLength(31);
// Combining dimensions and estimating their vSize
Dimensions.fromUnspents({ unspents })
.plus(Dimensions.fromOutputOnChain(Codes.p2shP2wsh.internal).times(nOutputs))
.getVSize();
Publishing new versions should be done by running the publish script in scripts/publish.sh
.
It can be invoked with the name of the branch to release, and will default to the currently checked out branch if not given.
It will perform validation of all prepublish conditions, run a dry-run publish, then, if successful, a real publish. After that is complete,
the newly installed package will be downloaded and require()
'd to ensure the package was published correctly.
@bitgo/unspents
uses github actions for continuous integration, which is configured by the .github/workflows/ci.yml
file in the project root. All changes to the CI process should be done by modifying the .github/workflows/ci.yml
file.
Codes
The exported Codes
module is now deprecated.
Please use utxo-lib/src/bitgo/wallet/chains
instead.
FAQs
Defines the chain codes used for different unspent types and methods to calculate bitcoin transaction sizes
The npm package @bitgo/unspents receives a total of 1,714 weekly downloads. As such, @bitgo/unspents popularity was classified as popular.
We found that @bitgo/unspents demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 15 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.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
Security News
Socket CEO Feross Aboukhadijeh discusses open source security challenges, including zero-day attacks and supply chain risks, on the Cyber Security Council podcast.
Security News
Research
Socket researchers uncover how threat actors weaponize Out-of-Band Application Security Testing (OAST) techniques across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.