@exodus/bip322-js 1.1.0-exodus.0 → 1.1.0-exodus.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  A Javascript library that provides utility functions related to the BIP-322 signature scheme.
7
7
  **This is a fork of https://github.com/ACken2/bip322-js with dependencies change in order to reduce audit load.**
8
- No API changes present at the moment.
8
+ No breaking API changes present at the moment.
9
9
 
10
10
  ## Current status
11
11
 
@@ -13,6 +13,8 @@ No API changes present at the moment.
13
13
  - We decided to keep using `bitcoinjs-lib` and take an audit from scratch. ~~Update `@exodus/bitcoinjs-lib` so that the skipped tests in `Verifier.test.js` work.
14
14
  A description of the existing challenges available in https://exodusio.slack.com/archives/C05DQN4DW4D/p1695295752637329.~~
15
15
  - Replace `@bitcoinerlab/secp256k1` with an audited library.
16
+ - (Breaking API): Export only functions to sign a message and ignore the validation tools to
17
+ reduce the package itself.
16
18
 
17
19
  ## Limitations
18
20
 
package/dist/Signer.d.ts CHANGED
@@ -7,13 +7,13 @@ import * as bitcoin from 'bitcoinjs-lib';
7
7
  declare class Signer {
8
8
  /**
9
9
  * Sign a BIP-322 signature from P2WPKH, P2SH-P2WPKH, and single-key-spend P2TR address and its corresponding private key.
10
- * @param privateKey Private key used to sign the message
10
+ * @param privateKeyOrWIF
11
11
  * @param address Address to be signing the message
12
12
  * @param message message_challenge to be signed by the address
13
13
  * @param network Network that the address is located, defaults to the Bitcoin mainnet
14
14
  * @returns BIP-322 simple signature, encoded in base-64
15
15
  */
16
- static sign(privateKey: string, address: string, message: string, network?: bitcoin.Network): string | Buffer;
16
+ static sign(privateKeyOrWIF: string | Buffer, address: string, message: string, network?: bitcoin.Network): string | Buffer;
17
17
  /**
18
18
  * Check if a given public key is the public key for a claimed address.
19
19
  * @param publicKey Public key to be tested
package/dist/Signer.js CHANGED
@@ -40,16 +40,16 @@ const bitcoinMessage = __importStar(require("bitcoinjs-message"));
40
40
  class Signer {
41
41
  /**
42
42
  * Sign a BIP-322 signature from P2WPKH, P2SH-P2WPKH, and single-key-spend P2TR address and its corresponding private key.
43
- * @param privateKey Private key used to sign the message
43
+ * @param privateKeyOrWIF
44
44
  * @param address Address to be signing the message
45
45
  * @param message message_challenge to be signed by the address
46
46
  * @param network Network that the address is located, defaults to the Bitcoin mainnet
47
47
  * @returns BIP-322 simple signature, encoded in base-64
48
48
  */
49
- static sign(privateKey, address, message, network = bitcoin.networks.bitcoin) {
49
+ static sign(privateKeyOrWIF, address, message, network = bitcoin.networks.bitcoin) {
50
50
  // Initialize private key used to sign the transaction
51
51
  const ECPair = (0, ecpair_1.default)(secp256k1_1.default);
52
- let signer = ECPair.fromWIF(privateKey, network);
52
+ let signer = Buffer.isBuffer(privateKeyOrWIF) ? ECPair.fromPrivateKey(privateKeyOrWIF) : ECPair.fromWIF(privateKeyOrWIF, network);
53
53
  // Check if the private key can sign message for the given address
54
54
  if (!this.checkPubKeyCorrespondToAddress(signer.publicKey, address)) {
55
55
  throw new Error(`Invalid private key provided for signing message for ${address}.`);
@@ -1 +1 @@
1
- {"version":3,"file":"Signer.js","sourceRoot":"","sources":["../src/Signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Signer.js","sourceRoot":"","sources":["../src/Signer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exodus/bip322-js",
3
- "version": "1.1.0-exodus.0",
3
+ "version": "1.1.0-exodus.1",
4
4
  "description": "A Javascript library that provides utility functions related to the BIP-322 signature scheme",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",