Socket
Socket
Sign inDemoInstall

@chainsafe/blst

Package Overview
Dependencies
111
Maintainers
6
Versions
19
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @chainsafe/blst

Typescript wrapper for supranational/blst native bindings, a highly performant BLS12-381 signature library


Version published
Weekly downloads
3.5K
increased by2.48%
Maintainers
6
Created
Weekly downloads
 

Readme

Source

blst-ts

ETH2.0_Spec_Version 0.12.0 ES Version Node Version

Typescript wrapper for supranational/blst native bindings, a highly performant BLS12-381 signature library.

Supported Environments

OS / Archbinary nameNode
Linux / x64linux-x6416, 18, 20, 21
Linux / arm64linux-arm6416, 18, 20, 21
Windows / x64win32-x6416, 18, 20, 21
macOS / x64darwin-x6416, 18, 20, 21
macOS / arm64darwin-arm6416, 18, 20, 21

Usage

yarn add @chainsafe/blst

This library comes with pre-compiled bindings for most platforms. You can check current support in releases. If your platform is not supported, bindings will be compiled from source as a best effort with node-gyp.

import crypto from "crypto";
import {SecretKey, verify, BLST_CONSTANTS} from "@chainsafe/blst";

const msg = Buffer.from("sample-msg");
const sk = SecretKey.fromKeygen(crypto.randomBytes(BLST_CONSTANTS.SECRET_KEY_LENGTH));
const pk = sk.toPublicKey();
const sig = sk.sign(msg);

console.log(verify(msg, pk, sig)); // true

Spec versioning

This library has a hardcoded configuration compatible with Eth2.0 spec:

Settingvalue
PK_ING1
HASH_OR_ENCODEtrue
DSTBLS_SIG_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_
RAND_BITS64

spec

test vectors

Contributing

Please check out CONTRIBUTING.md for more info on how to use the repo and for architectural details

Release/Publishing

The release process is automatically triggered when a change to the version in package.json is merged to master. See CONTRIBUTING.md for more specifics about how the release and package are built.

License

Apache-2.0

FAQs

Last updated on 09 Apr 2024

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc