{"_id":"@digitalbazaar/bls12-381-multikey","_rev":"9-e95544bbc30d2cc41c01cc131dcc1b92","name":"@digitalbazaar/bls12-381-multikey","dist-tags":{"latest":"2.2.0"},"versions":{"1.0.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"1.0.0","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@1.0.0","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"99b9d25b88a1ec0ffc0a411027b421a2faaeea6b","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-1.0.0.tgz","fileCount":8,"integrity":"sha512-Cj7zM7G+Kmvo0GtOLNb1Mb/InwQ20OLCw0b4ZAHgq24/oFUX8zYZB3N7ENx5K8I4slCMXCxw/UKd2d4WJRrztw==","signatures":[{"sig":"MEUCIFNtZwWwPAYaL1KVnKY/xLPoRHQuUgECsWdOvyhQxZx6AiEA3i2bhopiOdL4EJL0Whc9m7AsM6MDfRLe394aZjXnXtQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27969},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"d698e5f0cdbf09525267378b12f849c9102d72f0","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"9.6.7","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_1.0.0_1704948678565_0.26211758607102387","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"1.1.0","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@1.1.0","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"f1bf43ec12de19415fac3643caaefb240ef6e62b","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-1.1.0.tgz","fileCount":8,"integrity":"sha512-rhXvF8OW3Ce+gZwoS4RrSZCHcRtnq+Zp7GRpJKjj9J81ME/nHjCET/aNxyMkv8Yf6cnu4dIVdufjTISNHNwQdA==","signatures":[{"sig":"MEUCIQDgQa3Ph4TaWOCAKNWBgMrYZNCUGLHAf5libdRzy+eoEAIgVXgG51be2pX8GdLl0DOQ9uJBcN0w+jupvgQHQBrt5MU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":28835},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"4fb9c4d66620296b8ecad34c2d6710be17504ca4","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"9.6.7","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_1.1.0_1705019288029_0.547692452492015","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@digitalbazaar/bls12-381-multikey","version":"1.1.1","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@1.1.1","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"1a4d54c2b8650d45bd582bb063350de09393609e","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-1.1.1.tgz","fileCount":8,"integrity":"sha512-J9W2CYPlz8PBHHabm98EmqVNg9a7Rrpn2d5aMx5kvjyqzDWZ10mUzpchldw0U+HQDhdqeyAFkfew8kvj5fNtTQ==","signatures":[{"sig":"MEUCIDaHsmNPrxHk6V7ZusPYrQa/3JrISkauhJ/AQpblQXIKAiEA2MUdZNGNBQuQOZWlCctD/jEiZ9pGMRy5zQ+s5jztsFc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":28849},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"db71928f80dccdd262e92442bd1331bf8622dfed","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"9.6.7","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_1.1.1_1705021337976_0.2016819521067852","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"1.2.0","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@1.2.0","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"ca0e41a4276fdcccd9eed486ef1fd7c57ed179ab","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-1.2.0.tgz","fileCount":8,"integrity":"sha512-p+U+un5vHYZA6r3XPpOj/deblFaIo/syi79RNANhwj2KmSNfeQBIDL2kz3c0MmtN5YNPLANz9C8cSV1yvdnhRA==","signatures":[{"sig":"MEYCIQCXcakOtoX+zxP8uXjAobupOnHZcr51XfeXQJF2sV+nnAIhAMoNRTXCx6hJTK8YeU3TwBUMXSzqmgS+7JB/l9ZMbvLP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29122},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"5b8763d2ef2f9820334e1d112d7c7f5a1e373fe5","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"10.2.4","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.11.0","dependencies":{"@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_1.2.0_1710728752371_0.8520739572304121","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"1.3.0","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@1.3.0","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"bfee1d98a60ee7d56a368ca5bb6aa3b87d5dc82c","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-1.3.0.tgz","fileCount":8,"integrity":"sha512-ukc7hxFqDiQfkIq92X4GWJHtu5xgBizYIzC46rNPt72owv9/9a8V1C8inoHYTSLX0RoSz+uXkJ72fv9CUyjLJw==","signatures":[{"sig":"MEUCICwg6yS6dCmdaYPKzqB9RMIYjDdnzcc3jHRZ6qDhLUi3AiEA5cXbBu1bsvmZPuRifWfF27d6A9R1CCgUs58E50ayFm0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29516},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"7711a23bbde8f8c738947e0211a5f778269416f7","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"10.5.0","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.12.1","dependencies":{"cborg":"^4.2.0","@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_1.3.0_1712846529184_0.6080616065062927","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"2.0.0","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@2.0.0","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"88591a4e8ce35b01cb56e3cb42119eca2066ef92","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-2.0.0.tgz","fileCount":8,"integrity":"sha512-PtGpv+6z0U4lhGcgJYUBYOfiMl1dpWMG6e/mVfAJi08Ckac4vUcpkDK64N1Vpno81GXwe4mebIi7v7Vudj4D8Q==","signatures":[{"sig":"MEUCIEeyY8CDQZnbb8vryUGggV/py4VG0f2bEUSytTL0jzh0AiEA1Ctz8wNH27Yrvae8ufaQZJ/3kvDIVhHL45TIDzJA3io=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29516},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"dd6d0a761c836ae8a876a3ab988ae920d68cf1b3","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"10.5.0","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.12.1","dependencies":{"cborg":"^4.2.0","@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_2.0.0_1724107427662_0.2630702809203216","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"2.1.0","license":"BSD-3-Clause","_id":"@digitalbazaar/bls12-381-multikey@2.1.0","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"mattcollier","email":"mcollier@digitalbazaar.com"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"homepage":"https://github.com/digitalbazaar/bls12-381-multikey","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"c8":{"reporter":["lcov","text-summary","text"]},"dist":{"shasum":"663a0d43ca40e18bee2e022d18d3f55e4c80562f","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-2.1.0.tgz","fileCount":8,"integrity":"sha512-JelU85fNhvHl2/mqRdmrtrE2ZQJ0//+UwI0l/YFmvsOr6YN2GuKPzdkfXjpm7f3UvnBqz5f8QKFTb9mVa7mVVg==","signatures":[{"sig":"MEQCIHOuDX6uk7qt24GFBypSbY/mMsDxvYp8mE7m5sjJgKOmAiA78Hxklm6PQ93fKRzSIG8M/GTeJE1OwEw5GKyQfgwNPQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29866},"type":"module","engines":{"node":">=18"},"exports":"./lib/index.js","gitHead":"ddd833de8454d3da2092884a6bd519c1bfc63261","scripts":{"lint":"eslint .","test":"npm run test-node","coverage":"cross-env NODE_ENV=test c8 npm run test-node","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","test-karma":"karma start karma.conf.cjs","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report"},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"repository":{"url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git","type":"git"},"_npmVersion":"10.8.2","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"cborg":"^4.2.0","@noble/curves":"^1.3.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","@digitalbazaar/bbs-signatures":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^9.0.0","chai":"^4.4.0","karma":"^6.3.20","mocha":"^10.0.0","eslint":"^8.16.0","varint":"^6.0.0","webpack":"^5.72.1","cross-env":"^7.0.3","karma-chai":"^0.1.0","karma-mocha":"^2.0.1","karma-webpack":"^5.0.0","eslint-plugin-jsdoc":"^48.0.2","mocha-lcov-reporter":"^1.3.0","karma-mocha-reporter":"^2.2.5","eslint-plugin-unicorn":"^50.0.1","karma-chrome-launcher":"^3.1.1","karma-sourcemap-loader":"^0.4.0","eslint-config-digitalbazaar":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/bls12-381-multikey_2.1.0_1727910187198_0.9778040948063971","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"@digitalbazaar/bls12-381-multikey","version":"2.2.0","description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","homepage":"https://github.com/digitalbazaar/bls12-381-multikey","repository":{"type":"git","url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git"},"license":"BSD-3-Clause","type":"module","exports":"./lib/index.js","dependencies":{"@digitalbazaar/bbs-signatures":"^3.0.0","@noble/curves":"^2.2.0","base58-universal":"^2.0.0","base64url-universal":"^2.0.0","cborg":"^5.1.1"},"devDependencies":{"c8":"^11.0.0","chai":"^4.4.0","cross-env":"^10.1.0","eslint":"^8.16.0","eslint-config-digitalbazaar":"^5.0.1","eslint-plugin-jsdoc":"^48.0.2","eslint-plugin-unicorn":"^50.0.1","karma":"^6.3.20","karma-chai":"^0.1.0","karma-chrome-launcher":"^3.1.1","karma-mocha":"^2.0.1","karma-mocha-reporter":"^2.2.5","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.0","mocha":"^11.7.6","mocha-lcov-reporter":"^1.3.0","varint":"^6.0.0","webpack":"^5.72.1"},"engines":{"node":">=22"},"scripts":{"test":"npm run test-node","test-karma":"karma start karma.conf.cjs","test-node":"cross-env NODE_ENV=test mocha --preserve-symlinks -t 10000 test/**/*.spec.js","coverage":"cross-env NODE_ENV=test c8 npm run test-node","coverage-ci":"cross-env NODE_ENV=test c8 --reporter=lcovonly --reporter=text-summary --reporter=text npm run test-node","coverage-report":"c8 report","lint":"eslint ."},"c8":{"reporter":["lcov","text-summary","text"]},"gitHead":"56766647e4204a8598a055ccc10450d5c1edc24b","_id":"@digitalbazaar/bls12-381-multikey@2.2.0","bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-C71W5QIVSkLK24XsDWENOqihfy8ITKXqP2c+aKtx09j4vbHstwG6grn4sF9qKEQ2FOMm3KPIrL2byiIIqt61ow==","shasum":"a2bfae3a543c07db6f341e1e2c6831d673541022","tarball":"https://registry.npmjs.org/@digitalbazaar/bls12-381-multikey/-/bls12-381-multikey-2.2.0.tgz","fileCount":8,"unpackedSize":29843,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCxhwdgyQZudUI+wNvU0fyz3GsQgmwm1/xjFd1aFKN3dQIhAI2pqzTNqDLeaBiefkLj7Mjoe4WwKczdVS07hvdDvC+X"}]},"_npmUser":{"name":"dlongley","email":"dlongley@digitalbazaar.com"},"directories":{},"maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/bls12-381-multikey_2.2.0_1779730238525_0.539771495563433"},"_hasShrinkwrap":false}},"time":{"created":"2024-01-11T04:51:18.456Z","modified":"2026-05-25T17:30:38.810Z","1.0.0":"2024-01-11T04:51:18.700Z","1.1.0":"2024-01-12T00:28:08.219Z","1.1.1":"2024-01-12T01:02:18.125Z","1.2.0":"2024-03-18T02:25:52.524Z","1.3.0":"2024-04-11T14:42:09.449Z","2.0.0":"2024-08-19T22:43:47.918Z","2.1.0":"2024-10-02T23:03:07.397Z","2.2.0":"2026-05-25T17:30:38.668Z"},"bugs":{"url":"https://github.com/digitalbazaar/bls12-381-multikey/issues"},"license":"BSD-3-Clause","homepage":"https://github.com/digitalbazaar/bls12-381-multikey","repository":{"type":"git","url":"git+https://github.com/digitalbazaar/bls12-381-multikey.git"},"description":"Javascript library for generating and working with BLS12-381 (BBS) key pairs.","maintainers":[{"name":"dlongley","email":"dlongley@digitalbazaar.com"},{"name":"msporny","email":"msporny@digitalbazaar.com"},{"name":"davidlehn","email":"dil@lehn.org"},{"name":"gannan","email":"gannan@digitalbazaar.com"}],"readme":"# Bls12381Multikey Key Pair Library _(@digitalbazaar/bls12-381-multikey)_\n\n[![Node.js CI](https://github.com/digitalbazaar/bls12-381-multikey/workflows/Node.js%20CI/badge.svg)](https://github.com/digitalbazaar/bls12-381-multikey/actions?query=workflow%3A%22Node.js+CI%22)\n[![NPM Version](https://img.shields.io/npm/v/@digitalbazaar/bls12-381-multikey.svg)](https://npm.im/@digitalbazaar/bls12-381-multikey)\n\n> JavaScript library for using Bls12381Multikey key pairs with BBS\n\n## Table of Contents\n\n- [Background](#background)\n- [Security](#security)\n- [Install](#install)\n- [Usage](#usage)\n- [Contribute](#contribute)\n- [Commercial Support](#commercial-support)\n- [License](#license)\n\n## Background\n\nFor use with:\n\n* [`@digitalbazaar/bbs-2023-cryptosuite`](https://github.com/digitalbazaar/bbs-2023-cryptosuite) `^1.0.0`\n  crypto suite (with [`jsonld-signatures`](https://github.com/digitalbazaar/jsonld-signatures) `^11.2.0`)\n* [`@digitalbazaar/data-integrity`](https://github.com/digitalbazaar/data-integrity) `^2.0.0`\n\nSee also (related specs):\n\n* [Verifiable Credential Data Integrity](https://w3c.github.io/vc-data-integrity/)\n\n## Security\n\nAs with most security- and cryptography-related tools, the overall security of\nyour system will largely depend on your design decisions.\n\n## Install\n\n- Node.js 18+ is required.\n\nTo install locally (for development):\n\n```\ngit clone https://github.com/digitalbazaar/bls12-381-multikey.git\ncd bls12-381-multikey\nnpm install\n```\n\n## Usage\n\n### Generating a new public/secret key pair for use with BBS signatures\n\nTo generate a new public/secret key pair for use with BBS signatures:\n\n* `{string} [algorithm]` \\[Required\\] Algorithm to be used with the key pair:\n  \\['BBS-BLS12-381-SHA-256'\\].\n* `{string} [id]` \\[Optional\\] ID for the generated key.\n* `{string} [controller]` \\[Optional\\] Controller URI or DID to initialize the\n  generated key. (This will be used to generate `id` if it is not explicitly defined.)\n\n```js\nimport * as Bls12381Multikey from '@digitalbazaar/bls12-381-multikey';\n\nconst keyPair = await Bls12381Multikey.generateBbsKeyPair({\n  algorithm: Bls12381Multikey.ALGORITHMS.BBS_BLS12381_SHA256\n});\n```\n\n### Importing a key pair from storage\n\nTo create an instance of a public/secret key pair from data imported from\nstorage, use `.from()`:\n\n```js\nconst serializedKeyPair = { ... };\n\nconst keyPair = await Bls12381Multikey.from(serializedKeyPair);\n````\n\n### Exporting the public key only\n\nTo export just the public key of a pair:\n\n```js\nawait keyPair.export({publicKey: true});\n// ->\n{\n  type: 'Multikey',\n  id: 'did:example:1234#zUC7GMwWWkA5UMTx7Gg6sabmpchWgq8p1xGhUXwBiDytY8BgD6eq5AmxNgjwDbAz8Rq6VFBLdNjvXR4ydEdwDEN9L4vGFfLkxs8UsU3wQj9HQGjQb7LHWdRNJv3J1kGoA3BvnBv',\n  controller: 'did:example:1234',\n  publicKeyMultibase: 'zUC7GMwWWkA5UMTx7Gg6sabmpchWgq8p1xGhUXwBiDytY8BgD6eq5AmxNgjwDbAz8Rq6VFBLdNjvXR4ydEdwDEN9L4vGFfLkxs8UsU3wQj9HQGjQb7LHWdRNJv3J1kGoA3BvnBv'\n}\n```\n\n### Exporting the full public-secret key pair\n\nTo export the full key pair, including secret key (warning: this should be a\ncarefully considered operation, best left to dedicated Key Management Systems):\n\n```js\nawait keyPair.export({publicKey: true, secretKey: true});\n// ->\n{\n  type: 'Multikey',\n  id: 'did:example:1234#zUC7GMwWWkA5UMTx7Gg6sabmpchWgq8p1xGhUXwBiDytY8BgD6eq5AmxNgjwDbAz8Rq6VFBLdNjvXR4ydEdwDEN9L4vGFfLkxs8UsU3wQj9HQGjQb7LHWdRNJv3J1kGoA3BvnBv',\n  controller: 'did:example:1234',\n  publicKeyMultibase: 'zUC7GMwWWkA5UMTx7Gg6sabmpchWgq8p1xGhUXwBiDytY8BgD6eq5AmxNgjwDbAz8Rq6VFBLdNjvXR4ydEdwDEN9L4vGFfLkxs8UsU3wQj9HQGjQb7LHWdRNJv3J1kGoA3BvnBv',\n  secretKeyMultibase: 'z488vexJQSQ2rF5GrCT8qhzGR7ASSj5rx6CtZjKNFq183woF'\n}\n```\n\n### Creating a BBS signature using a signer\n\nIn order to perform a cryptographic signature, you need to create a\n`signer` instance and call `multisign()` on it.\n\n```js\nconst keyPair = Bls12381Multikey.generateBbsKeyPair({\n  algorithm: 'BBS-BLS12-381-SHA-256'\n});\n\nconst signer = keyPair.signer();\n\n// header is a Uint8Array\nconst header = new Uint8Array();\n// message is an array of Uint8Arrays\nconst messages = [new TextEncoder().encode('test data goes here')];\n// creates a BBS signature over the messages expressed in a Uint8Array\nconst signature = await signer.multisign({header, messages});\n```\n\n### Deriving a BBS proof from a BBS signature\n\nDerive a proof from a BBS signature as a holder / prover.\n\n```js\n// no `secretKey` needs to be present on `keyPair` to derive a proof, only\n// the `publicKey` is required\n\n// pass original signer's `publicKey`, `signature`, `header`, and `messages`\n// as well as a custom `presentationHeader` and any `disclosedMessageIndexes`\nconst proof = await keyPair.deriveProof({\n  signature, header, messages,\n  presentationHeader: new Uint8Array(),\n  disclosedMessageIndexes: [1]\n});\n// `proof` is a `Uint8Array` containing a BBS proof\n```\n\n### Verifying a BBS proof using a verifier\n\nIn order to verify a BBS proof, you need to create a `verifier` instance\nand call `multiverify()` on it.\n\n```js\nconst verifier = keyPair.verifier();\n\nconst verified = await verifier.multiverify({\n  proof, header,\n  presentationHeader,\n  // leave holes for messages that were not disclosed\n  messages: [undefined, messages[1]]\n});\n// returns `true` or `false`\n```\n\n## Contribute\n\nSee [the contribute file](https://github.com/digitalbazaar/bedrock/blob/master/CONTRIBUTING.md)!\n\nPRs accepted.\n\nIf editing the Readme, please conform to the\n[standard-readme](https://github.com/RichardLitt/standard-readme) specification.\n\n## Commercial Support\n\nCommercial support for this library is available upon request from\nDigital Bazaar: support@digitalbazaar.com\n\n## License\n\n[New BSD License (3-clause)](LICENSE) © 2023 Digital Bazaar\n","readmeFilename":"README.md"}