Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@dydxprotocol/starkex-lib

Package Overview
Dependencies
Maintainers
10
Versions
62
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dydxprotocol/starkex-lib - npm Package Compare versions

Comparing version 0.11.0 to 0.11.1

__tests__/signable/crypto.test.ts

11

__tests__/signable/hashes.test.ts

@@ -17,2 +17,3 @@ /* eslint-disable @typescript-eslint/no-unused-expressions */

} from '../../src/types';
import * as cryptoModule from '../../src/signable/crypto';
import * as hashesModule from '../../src/signable/hashes';

@@ -34,2 +35,3 @@ import {

let mockPedersen: sinon.SinonSpy;
let proxyquiredCrypto: typeof cryptoModule;
let proxyquiredHashes: typeof hashesModule;

@@ -71,3 +73,3 @@ let mocks: any;

mockPedersen = sinon.spy(pedersen);
proxyquiredHashes = proxyquire('../../src/signable/hashes', {
proxyquiredCrypto = proxyquire('../../src/signable/crypto', {
'../lib/starkex-resources': {

@@ -77,6 +79,7 @@ pedersen: mockPedersen,

});
proxyquiredHashes = proxyquire('../../src/signable/hashes', {
'./crypto': proxyquiredCrypto,
});
mocks = {
'../lib/starkex-resources': {
pedersen: mockPedersen,
},
'./crypto': proxyquiredCrypto,
'./hashes': proxyquiredHashes,

@@ -83,0 +86,0 @@ };

@@ -18,2 +18,3 @@ "use strict";

let mockPedersen;
let proxyquiredCrypto;
let proxyquiredHashes;

@@ -52,3 +53,3 @@ let mocks;

mockPedersen = sinon_1.default.spy(starkex_resources_1.pedersen);
proxyquiredHashes = proxyquire_1.default('../../src/signable/hashes', {
proxyquiredCrypto = proxyquire_1.default('../../src/signable/crypto', {
'../lib/starkex-resources': {

@@ -58,6 +59,7 @@ pedersen: mockPedersen,

});
proxyquiredHashes = proxyquire_1.default('../../src/signable/hashes', {
'./crypto': proxyquiredCrypto,
});
mocks = {
'../lib/starkex-resources': {
pedersen: mockPedersen,
},
'./crypto': proxyquiredCrypto,
'./hashes': proxyquiredHashes,

@@ -111,2 +113,2 @@ };

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaGVzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fX3Rlc3RzX18vc2lnbmFibGUvaGFzaGVzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZEQUE2RDtBQUM3RDs7R0FFRzs7Ozs7QUFFSCxvREFBNEI7QUFDNUIsNERBQW9DO0FBQ3BDLGtEQUEwQjtBQUUxQiwyQ0FNeUI7QUFXekIsdUVBQTJEO0FBRTNELG9CQUFVLENBQUMsZUFBZSxFQUFFLENBQUM7QUFFN0IsU0FBUztBQUNULElBQUksWUFBNEIsQ0FBQztBQUNqQyxJQUFJLGlCQUFzQyxDQUFDO0FBQzNDLElBQUksS0FBVSxDQUFDO0FBRWYsYUFBYTtBQUNiLE1BQU0sdUJBQXVCLEdBQThCO0lBQ3pELGdCQUFnQixFQUFFLE9BQU87SUFDekIsa0JBQWtCLEVBQUUsT0FBTztJQUMzQixpQkFBaUIsRUFBRSxrRUFBa0U7SUFDckYsV0FBVyxFQUFFLFdBQVc7SUFDeEIsc0JBQXNCLEVBQUUsMEJBQTBCO0lBQ2xELFFBQVEsRUFBRSxzRUFBc0U7SUFDaEYsbUJBQW1CLEVBQUUsNENBQTRDO0lBQ2pFLElBQUksRUFBRSxvRUFBb0U7Q0FDM0UsQ0FBQztBQUNGLE1BQU0sU0FBUyxHQUFzQjtJQUNuQyxVQUFVLEVBQUUsT0FBTztJQUNuQixTQUFTLEVBQUUsVUFBVTtJQUNyQixRQUFRLEVBQUUsT0FBTztJQUNqQixNQUFNLEVBQUUsa0JBQVUsQ0FBQyxPQUFPO0lBQzFCLElBQUksRUFBRSwwQkFBa0IsQ0FBQyxHQUFHO0lBQzVCLHNCQUFzQixFQUFFLDBCQUEwQjtJQUNsRCxVQUFVLEVBQUUsV0FBVztJQUN2QixRQUFRLEVBQUUsbUVBQW1FO0NBQzlFLENBQUM7QUFDRixNQUFNLGNBQWMsR0FBMkI7SUFDN0MsVUFBVSxFQUFFLE9BQU87SUFDbkIsV0FBVyxFQUFFLFdBQVc7SUFDeEIsc0JBQXNCLEVBQUUsMEJBQTBCO0lBQ2xELFFBQVEsRUFBRSx3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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaGVzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fX3Rlc3RzX18vc2lnbmFibGUvaGFzaGVzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZEQUE2RDtBQUM3RDs7R0FFRzs7Ozs7QUFFSCxvREFBNEI7QUFDNUIsNERBQW9DO0FBQ3BDLGtEQUEwQjtBQUUxQiwyQ0FNeUI7QUFZekIsdUVBQTJEO0FBRTNELG9CQUFVLENBQUMsZUFBZSxFQUFFLENBQUM7QUFFN0IsU0FBUztBQUNULElBQUksWUFBNEIsQ0FBQztBQUNqQyxJQUFJLGlCQUFzQyxDQUFDO0FBQzNDLElBQUksaUJBQXNDLENBQUM7QUFDM0MsSUFBSSxLQUFVLENBQUM7QUFFZixhQUFhO0FBQ2IsTUFBTSx1QkFBdUIsR0FBOEI7SUFDekQsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixrQkFBa0IsRUFBRSxPQUFPO0lBQzNCLGlCQUFpQixFQUFFLGtFQUFrRTtJQUNyRixXQUFXLEVBQUUsV0FBVztJQUN4QixzQkFBc0IsRUFBRSwwQkFBMEI7SUFDbEQsUUFBUSxFQUFFLHNFQUFzRTtJQUNoRixtQkFBbUIsRUFBRSw0Q0FBNEM7SUFDakUsSUFBSSxFQUFFLG9FQUFvRTtDQUMzRSxDQUFDO0FBQ0YsTUFBTSxTQUFTLEdBQXNCO0lBQ25DLFVBQVUsRUFBRSxPQUFPO0lBQ25CLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLE1BQU0sRUFBRSxrQkFBVSxDQUFDLE9BQU87SUFDMUIsSUFBSSxFQUFFLDBCQUFrQixDQUFDLEdBQUc7SUFDNUIsc0JBQXNCLEVBQUUsMEJBQTBCO0lBQ2xELFVBQVUsRUFBRSxXQUFXO0lBQ3ZCLFFBQVEsRUFBRSxtRUFBbUU7Q0FDOUUsQ0FBQztBQUNGLE1BQU0sY0FBYyxHQUEyQjtJQUM3QyxVQUFVLEVBQUUsT0FBTztJQUNuQixXQUFXLEVBQUUsV0FBVztJQUN4QixzQkFBc0IsRUFBRSww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

@@ -12,2 +12,3 @@ "use strict";

const constants_2 = require("./constants");
const crypto_1 = require("./crypto");
const hashes_1 = require("./hashes");

@@ -74,3 +75,3 @@ const stark_signable_1 = require("./stark-signable");

const assetIds = await hashes_1.getCacheablePedersenHash(COLLATERAL_ASSET_ID_BN, FEE_ASSET_ID_BN);
const transferPart1 = await hashes_1.getPedersenHash(await hashes_1.getPedersenHash(assetIds, receiverPublicKeyBn), conditionBn);
const transferPart1 = await crypto_1.getPedersenHash(await crypto_1.getPedersenHash(assetIds, receiverPublicKeyBn), conditionBn);
// Note: Use toString() to avoid mutating senderPositionIdBn.

@@ -86,3 +87,3 @@ const transferPart2 = new bn_js_1.default(senderPositionIdBn.toString(), 10)

.iushln(CONDITIONAL_TRANSFER_PADDING_BITS);
return hashes_1.getPedersenHash(await hashes_1.getPedersenHash(transferPart1, transferPart2), transferPart3);
return crypto_1.getPedersenHash(await crypto_1.getPedersenHash(transferPart1, transferPart2), transferPart3);
}

@@ -94,2 +95,2 @@ toStarkware() {

exports.SignableConditionalTransfer = SignableConditionalTransfer;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZGl0aW9uYWwtdHJhbnNmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvY29uZGl0aW9uYWwtdHJhbnNmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsa0RBQXVCO0FBRXZCLDRDQUdzQjtBQUN0Qix3Q0FJb0I7QUFDcEIsc0NBS3FCO0FBS3JCLDJDQUFxRTtBQUNyRSxxQ0FHa0I7QUFDbEIscURBQWlEO0FBRWpELDBEQUEwRDtBQUMxRCxNQUFNLGlCQUFpQixHQUFHLElBQUksZUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRXBDLE1BQU0sc0JBQXNCLEdBQUcsY0FBTyxDQUFDLCtCQUFtQixDQUFDLENBQUM7QUFDNUQsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEMsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLENBQUM7QUFDdEMsTUFBTSxpQ0FBaUMsR0FBRyxFQUFFLENBQUM7QUFFN0M7O0dBRUc7QUFDSCxNQUFhLDJCQUE0QixTQUFRLDhCQUEyQztJQUUxRixZQUNFLFFBQW1DO1FBRW5DLE1BQU0sS0FBSyxHQUFHLDJCQUFpQixDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuRCxxREFBcUQ7UUFDckQsTUFBTSxjQUFjLEdBQUcseUJBQWUsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLDRCQUFnQixDQUFDLENBQUM7UUFFL0UsMENBQTBDO1FBQzFDLE1BQU0sb0JBQW9CLEdBQUcsa0NBQXdCLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFFdkYsS0FBSyxDQUFDO1lBQ0osZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLGdCQUFnQjtZQUMzQyxrQkFBa0IsRUFBRSxRQUFRLENBQUMsa0JBQWtCO1lBQy9DLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUI7WUFDN0MsU0FBUyxFQUFFLHNCQUFlLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDdkUsY0FBYztZQUNkLEtBQUs7WUFDTCxvQkFBb0I7U0FDckIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLEtBQUssQ0FBQyxhQUFhO1FBQzNCLE1BQU0sa0JBQWtCLEdBQUcsY0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNsRSxNQUFNLG9CQUFvQixHQUFHLGNBQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdEUsTUFBTSxtQkFBbUIsR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sV0FBVyxHQUFHLGNBQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sZ0JBQWdCLEdBQUcsY0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDOUQsTUFBTSxPQUFPLEdBQUcsY0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsTUFBTSxzQkFBc0IsR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRTFFLElBQUksa0JBQWtCLENBQUMsU0FBUyxFQUFFLEdBQUcsa0RBQXNDLENBQUMsVUFBVSxFQUFFO1lBQ3RGLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztTQUM1RTtRQUNELElBQ0Usb0JBQW9CLENBQUMsU0FBUyxFQUFFLEdBQUcsa0RBQXNDLENBQUMsVUFBVSxFQUNwRjtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQztTQUM5RTtRQUNELElBQ0UsbUJBQW1CLENBQUMsU0FBUyxFQUFFLEdBQUcsa0RBQXNDLENBQUMsaUJBQWlCLEVBQzFGO1lBQ0EsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1NBQzdFO1FBQ0QsSUFBSSxXQUFXLENBQUMsU0FBUyxFQUFFLEdBQUcsa0RBQXNDLENBQUMsU0FBUyxFQUFFO1lBQzlFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztTQUNyRTtRQUNELElBQUksZ0JBQWdCLENBQUMsU0FBUyxFQUFFLEdBQUcsa0RBQXNDLENBQUMsY0FBYyxFQUFFO1lBQ3hGLE1BQU0sSUFBSSxLQUFLLENBQUMsdURBQXVELENBQUMsQ0FBQztTQUMxRTtRQUNELElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLGtEQUFzQyxDQUFDLEtBQUssRUFBRTtZQUN0RSxNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7U0FDakU7UUFDRCxJQUNFLHNCQUFzQixDQUFDLFNBQVMsRUFBRTtZQUNsQyxrREFBc0MsQ0FBQyxvQkFBb0IsRUFDM0Q7WUFDQSxNQUFNLElBQUksS0FBSyxDQUFDLDZEQUE2RCxDQUFDLENBQUM7U0FDaEY7UUFFRCxxREFBcUQ7UUFDckQsb0RBQW9EO1FBQ3BELE1BQU0sUUFBUSxHQUFHLE1BQU0saUNBQXdCLENBQUMsc0JBQXNCLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFFekYsTUFBTSxhQUFhLEdBQUcsTUFBTSx3QkFBZSxDQUN6QyxNQUFNLHdCQUFlLENBQ25CLFFBQVEsRUFDUixtQkFBbUIsQ0FDcEIsRUFDRCxXQUFXLENBQ1osQ0FBQztRQUNGLDZEQUE2RDtRQUM3RCxNQUFNLGFBQWEsR0FBRyxJQUFJLGVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUM7YUFDNUQsTUFBTSxDQUFDLGtEQUFzQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQzthQUNwRixNQUFNLENBQUMsa0RBQXNDLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO2FBQ2xGLE1BQU0sQ0FBQyxrREFBc0MsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdEUsTUFBTSxhQUFhLEdBQUcsSUFBSSxlQUFFLENBQUMsMkJBQTJCLENBQUM7YUFDdEQsTUFBTSxDQUFDLGtEQUFzQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQzthQUNwRixNQUFNLENBQUMsa0RBQXNDLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO2FBQ3JGLE1BQU0sQ0FBQyxrREFBc0MsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksQ0FDdkUsc0JBQXNCLENBQ3ZCO2FBQ0EsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFFN0MsT0FBTyx3QkFBZSxDQUNwQixNQUFNLHdCQUFlLENBQ25CLGFBQWEsRUFDYixhQUFhLENBQ2QsRUFDRCxhQUFhLENBQ2QsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7Q0FDRjtBQWxHRCxrRUFrR0MifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZGl0aW9uYWwtdHJhbnNmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvY29uZGl0aW9uYWwtdHJhbnNmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsa0RBQXVCO0FBRXZCLDRDQUdzQjtBQUN0Qix3Q0FJb0I7QUFDcEIsc0NBS3FCO0FBS3JCLDJDQUFxRTtBQUNyRSxxQ0FBMkM7QUFDM0MscUNBQW9EO0FBQ3BELHFEQUFpRDtBQUVqRCwwREFBMEQ7QUFDMUQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUVwQyxNQUFNLHNCQUFzQixHQUFHLGNBQU8sQ0FBQywrQkFBbUIsQ0FBQyxDQUFDO0FBQzVELE1BQU0sZUFBZSxHQUFHLElBQUksZUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xDLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxDQUFDO0FBQ3RDLE1BQU0saUNBQWlDLEdBQUcsRUFBRSxDQUFDO0FBRTdDOztHQUVHO0FBQ0gsTUFBYSwyQkFBNEIsU0FBUSw4QkFBMkM7SUFFMUYsWUFDRSxRQUFtQztRQUVuQyxNQUFNLEtBQUssR0FBRywyQkFBaUIsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFbkQscURBQXFEO1FBQ3JELE1BQU0sY0FBYyxHQUFHLHlCQUFlLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSw0QkFBZ0IsQ0FBQyxDQUFDO1FBRS9FLDBDQUEwQztRQUMxQyxNQUFNLG9CQUFvQixHQUFHLGtDQUF3QixDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRXZGLEtBQUssQ0FBQztZQUNKLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxnQkFBZ0I7WUFDM0Msa0JBQWtCLEVBQUUsUUFBUSxDQUFDLGtCQUFrQjtZQUMvQyxpQkFBaUIsRUFBRSxRQUFRLENBQUMsaUJBQWlCO1lBQzdDLFNBQVMsRUFBRSxzQkFB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

@@ -5,16 +5,3 @@ /**

import BN from 'bn.js';
import { HashFunction } from '../types';
/**
* Set the hash function implementation that will be used for all StarkSignable objects.
*/
export declare function setGlobalStarkHashImplementationNoSanityCheck(hashFunction: HashFunction): void;
/**
* Set the hash function implementation that will be used for all StarkSignable objects.
*/
export declare function setGlobalStarkHashImplementation(hashFunction: HashFunction): Promise<void>;
/**
* Calculate a pedersen hash.
*/
export declare function getPedersenHash(left: BN, right: BN): Promise<BN>;
/**
* Calculate a pedersen hash with commonly used parameters. The hash will be cached.

@@ -21,0 +8,0 @@ */

@@ -5,42 +5,11 @@ "use strict";

*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.preComputeHashes = exports.getCacheablePedersenHash = exports.getPedersenHash = exports.setGlobalStarkHashImplementation = exports.setGlobalStarkHashImplementationNoSanityCheck = void 0;
const bn_js_1 = __importDefault(require("bn.js"));
exports.preComputeHashes = exports.getCacheablePedersenHash = void 0;
const constants_1 = require("../constants");
const starkex_resources_1 = require("../lib/starkex-resources");
const util_1 = require("../lib/util");
const types_1 = require("../types");
const SANITY_CHECK_EXPECTED_RESULT = new bn_js_1.default('2001140082530619239661729809084578298299223810202097622761632384561112390979');
const crypto_1 = require("./crypto");
// Global state for all STARK signables.
const CACHE = {};
let globalHashFunction = starkex_resources_1.pedersen;
/**
* Set the hash function implementation that will be used for all StarkSignable objects.
*/
function setGlobalStarkHashImplementationNoSanityCheck(hashFunction) {
globalHashFunction = hashFunction;
}
exports.setGlobalStarkHashImplementationNoSanityCheck = setGlobalStarkHashImplementationNoSanityCheck;
/**
* Set the hash function implementation that will be used for all StarkSignable objects.
*/
async function setGlobalStarkHashImplementation(hashFunction) {
const result = await hashFunction(new bn_js_1.default(0), new bn_js_1.default(1));
if (!result.eq(SANITY_CHECK_EXPECTED_RESULT)) {
throw new Error('setGlobalStarkHashImplementation: Sanity check failed');
}
setGlobalStarkHashImplementationNoSanityCheck(hashFunction);
}
exports.setGlobalStarkHashImplementation = setGlobalStarkHashImplementation;
/**
* Calculate a pedersen hash.
*/
async function getPedersenHash(left, right) {
return globalHashFunction(left, right);
}
exports.getPedersenHash = getPedersenHash;
/**
* Calculate a pedersen hash with commonly used parameters. The hash will be cached.

@@ -55,3 +24,3 @@ */

if (!CACHE[leftString][rightString]) {
CACHE[leftString][rightString] = await globalHashFunction(left, right);
CACHE[leftString][rightString] = await crypto_1.getPedersenHash(left, right);
}

@@ -89,2 +58,2 @@ return CACHE[leftString][rightString];

exports.preComputeHashes = preComputeHashes;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NpZ25hYmxlL2hhc2hlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7Ozs7OztBQUVILGtEQUF1QjtBQUV2Qiw0Q0FJc0I7QUFDdEIsZ0VBQW9EO0FBQ3BELHNDQUFzQztBQUN0QyxvQ0FBbUQ7QUFFbkQsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGVBQUUsQ0FDekMsOEVBQThFLENBQy9FLENBQUM7QUFFRix3Q0FBd0M7QUFDeEMsTUFBTSxLQUFLLEdBQXVDLEVBQUUsQ0FBQztBQUNyRCxJQUFJLGtCQUFrQixHQUFpQiw0QkFBUSxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsU0FBZ0IsNkNBQTZDLENBQUMsWUFBMEI7SUFDdEYsa0JBQWtCLEdBQUcsWUFBWSxDQUFDO0FBQ3BDLENBQUM7QUFGRCxzR0FFQztBQUVEOztHQUVHO0FBQ0ksS0FBSyxVQUFVLGdDQUFnQyxDQUFDLFlBQTBCO0lBQy9FLE1BQU0sTUFBTSxHQUFHLE1BQU0sWUFBWSxDQUFDLElBQUksZUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksZUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsNEJBQTRCLENBQUMsRUFBRTtRQUM1QyxNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7S0FDMUU7SUFDRCw2Q0FBNkMsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBTkQsNEVBTUM7QUFFRDs7R0FFRztBQUNJLEtBQUssVUFBVSxlQUFlLENBQUMsSUFBUSxFQUFFLEtBQVM7SUFDdkQsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUZELDBDQUVDO0FBRUQ7O0dBRUc7QUFDSSxLQUFLLFVBQVUsd0JBQXdCLENBQUMsSUFBUSxFQUFFLEtBQVM7SUFDaEUsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNyQyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDdEIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztLQUN4QjtJQUNELElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDbkMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLE1BQU0sa0JBQWtCLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQ3hFO0lBQ0QsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDeEMsQ0FBQztBQVZELDREQVVDO0FBRUQ7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxnQkFBZ0I7SUFDcEMsTUFBTSxpQkFBaUIsR0FBRyxjQUFPLENBQUMsK0JBQW1CLENBQUMsQ0FBQztJQUV2RCxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDaEIsdURBQXVEO1FBQ3ZELE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxpQkFBUyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsRUFBRTtZQUMzRCxJQUFJLFNBQVMsS0FBSyw0QkFBZ0IsRUFBRTtnQkFDbEMsT0FBTzthQUNSO1lBQ0QsTUFBTSxXQUFXLEdBQUcsY0FBTyxDQUFDLHdCQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUNyRCxNQUFNLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDNUMsd0JBQXdCLENBQUMsaUJBQWlCLEVBQUUsV0FBVyxDQUFDO2dCQUN4RCx3QkFBd0IsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLENBQUM7YUFDekQsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNoQix3QkFBd0IsQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUM7Z0JBQ3BELHdCQUF3QixDQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQzthQUN0RCxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILHlEQUF5RDtRQUN6RCx3QkFBd0IsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQztLQUMvRCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBdkJELDRDQXVCQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NpZ25hYmxlL2hhc2hlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7OztBQUlILDRDQUlzQjtBQUN0QixzQ0FBc0M7QUFDdEMsb0NBQXFDO0FBQ3JDLHFDQUEyQztBQUUzQyx3Q0FBd0M7QUFDeEMsTUFBTSxLQUFLLEdBQXVDLEVBQUUsQ0FBQztBQUVyRDs7R0FFRztBQUNJLEtBQUssVUFBVSx3QkFBd0IsQ0FBQyxJQUFRLEVBQUUsS0FBUztJQUNoRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUN0QixLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDO0tBQ3hCO0lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUNuQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsTUFBTSx3QkFBZSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztLQUNyRTtJQUNELE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFWRCw0REFVQztBQUVEOzs7O0dBSUc7QUFDSSxLQUFLLFVBQVUsZ0JBQWdCO0lBQ3BDLE1BQU0saUJBQWlCLEdBQUcsY0FBTyxDQUFDLCtCQUFtQixDQUFDLENBQUM7SUFFdkQsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDO1FBQ2hCLHVEQUF1RDtRQUN2RCxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUU7WUFDM0QsSUFBSSxTQUFTLEtBQUssNEJBQWdCLEVBQUU7Z0JBQ2xDLE9BQU87YUFDUjtZQUNELE1BQU0sV0FBVyxHQUFHLGNBQU8sQ0FBQyx3QkFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDckQsTUFBTSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQzVDLHdCQUF3QixDQUFDLGlCQUFpQixFQUFFLFdBQVcsQ0FBQztnQkFDeEQsd0JBQXdCLENBQUMsV0FBVyxFQUFFLGlCQUFpQixDQUFDO2FBQ3pELENBQUMsQ0FBQztZQUNILE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDaEIsd0JBQXdCLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDO2dCQUNwRCx3QkFBd0IsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLENBQUM7YUFDdEQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCx5REFBeUQ7UUFDekQsd0JBQXdCLENBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUM7S0FDL0QsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQXZCRCw0Q0F1QkMifQ==
import { HashFunction } from '../types';
export { SignableApiRequest } from './api-request';
export { preComputeHashes, setGlobalStarkHashImplementation, setGlobalStarkHashImplementationNoSanityCheck, } from './hashes';
export * from './crypto';
export { preComputeHashes } from './hashes';
export { SignableOraclePrice } from './oracle-price';

@@ -5,0 +6,0 @@ export { SignableOrder } from './order';

"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.hashInWorkerThread = exports.StarkSignable = exports.SignableConditionalTransfer = exports.SignableWithdrawal = exports.SignableOrder = exports.SignableOraclePrice = exports.setGlobalStarkHashImplementationNoSanityCheck = exports.setGlobalStarkHashImplementation = exports.preComputeHashes = exports.SignableApiRequest = void 0;
exports.hashInWorkerThread = exports.StarkSignable = exports.SignableConditionalTransfer = exports.SignableWithdrawal = exports.SignableOrder = exports.SignableOraclePrice = exports.preComputeHashes = exports.SignableApiRequest = void 0;
var api_request_1 = require("./api-request");
Object.defineProperty(exports, "SignableApiRequest", { enumerable: true, get: function () { return api_request_1.SignableApiRequest; } });
__exportStar(require("./crypto"), exports);
var hashes_1 = require("./hashes");
Object.defineProperty(exports, "preComputeHashes", { enumerable: true, get: function () { return hashes_1.preComputeHashes; } });
Object.defineProperty(exports, "setGlobalStarkHashImplementation", { enumerable: true, get: function () { return hashes_1.setGlobalStarkHashImplementation; } });
Object.defineProperty(exports, "setGlobalStarkHashImplementationNoSanityCheck", { enumerable: true, get: function () { return hashes_1.setGlobalStarkHashImplementationNoSanityCheck; } });
var oracle_price_1 = require("./oracle-price");

@@ -34,2 +43,2 @@ Object.defineProperty(exports, "SignableOraclePrice", { enumerable: true, get: function () { return oracle_price_1.SignableOraclePrice; } });

exports.hashInWorkerThread = maybeHashInWorkerThread;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsNkNBQW1EO0FBQTFDLGlIQUFBLGtCQUFrQixPQUFBO0FBQzNCLG1DQUlrQjtBQUhoQiwwR0FBQSxnQkFBZ0IsT0FBQTtBQUNoQiwwSEFBQSxnQ0FBZ0MsT0FBQTtBQUNoQyx1SUFBQSw2Q0FBNkMsT0FBQTtBQUUvQywrQ0FBcUQ7QUFBNUMsbUhBQUEsbUJBQW1CLE9BQUE7QUFDNUIsaUNBQXdDO0FBQS9CLHNHQUFBLGFBQWEsT0FBQTtBQUN0QiwyQ0FBa0Q7QUFBekMsZ0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IsK0RBQXFFO0FBQTVELG1JQUFBLDJCQUEyQixPQUFBO0FBQ3BDLG1EQUFpRDtBQUF4QywrR0FBQSxhQUFhLE9BQUE7QUFFdEIsSUFBSSx1QkFBdUIsR0FBaUIsQ0FBQyxFQUFNLEVBQUUsRUFBTSxFQUFFLEVBQUU7SUFDN0QsTUFBTSxJQUFJLEtBQUssQ0FBQyx1RUFBdUUsQ0FBQyxDQUFDO0FBQzNGLENBQUMsQ0FBQztBQUNGLElBQUk7SUFDRixzRUFBc0U7SUFDdEUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDMUIsNkVBQTZFO0lBQzdFLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0lBQ2hGLHFFQUFxRTtDQUN0RTtBQUFDLE9BQU8sS0FBSyxFQUFFO0lBQ2QsK0JBQStCO0NBQ2hDO0FBRVksUUFBQSxrQkFBa0IsR0FBRyx1QkFBdUIsQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUlBLDZDQUFtRDtBQUExQyxpSEFBQSxrQkFBa0IsT0FBQTtBQUMzQiwyQ0FBeUI7QUFDekIsbUNBQTRDO0FBQW5DLDBHQUFBLGdCQUFnQixPQUFBO0FBQ3pCLCtDQUFxRDtBQUE1QyxtSEFBQSxtQkFBbUIsT0FBQTtBQUM1QixpQ0FBd0M7QUFBL0Isc0dBQUEsYUFBYSxPQUFBO0FBQ3RCLDJDQUFrRDtBQUF6QyxnSEFBQSxrQkFBa0IsT0FBQTtBQUMzQiwrREFBcUU7QUFBNUQsbUlBQUEsMkJBQTJCLE9BQUE7QUFDcEMsbURBQWlEO0FBQXhDLCtHQUFBLGFBQWEsT0FBQTtBQUV0QixJQUFJLHVCQUF1QixHQUFpQixDQUFDLEVBQU0sRUFBRSxFQUFNLEVBQUUsRUFBRTtJQUM3RCxNQUFNLElBQUksS0FBSyxDQUFDLHVFQUF1RSxDQUFDLENBQUM7QUFDM0YsQ0FBQyxDQUFDO0FBQ0YsSUFBSTtJQUNGLHNFQUFzRTtJQUN0RSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMxQiw2RUFBNkU7SUFDN0UsdUJBQXVCLEdBQUcsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBQUMsa0JBQWtCLENBQUM7SUFDaEYscUVBQXFFO0NBQ3RFO0FBQUMsT0FBTyxLQUFLLEVBQUU7SUFDZCwrQkFBK0I7Q0FDaEM7QUFFWSxRQUFBLGtCQUFrQixHQUFHLHVCQUF1QixDQUFDIn0=

@@ -11,3 +11,3 @@ "use strict";

const constants_1 = require("./constants");
const hashes_1 = require("./hashes");
const crypto_1 = require("./crypto");
const stark_signable_1 = require("./stark-signable");

@@ -67,3 +67,3 @@ /**

.iadd(timestampEpochSecondsBn);
return hashes_1.getPedersenHash(signedAssetId, priceAndTimestamp);
return crypto_1.getPedersenHash(signedAssetId, priceAndTimestamp);
}

@@ -70,0 +70,0 @@ }

@@ -13,2 +13,3 @@ "use strict";

const constants_2 = require("./constants");
const crypto_1 = require("./crypto");
const hashes_1 = require("./hashes");

@@ -112,3 +113,3 @@ const stark_signable_1 = require("./stark-signable");

const assetsBn = await hashes_1.getCacheablePedersenHash(await hashes_1.getCacheablePedersenHash(assetIdSellBn, assetIdBuyBn), assetIdFeeBn);
return hashes_1.getPedersenHash(await hashes_1.getPedersenHash(assetsBn, orderPart1), orderPart2);
return crypto_1.getPedersenHash(await crypto_1.getPedersenHash(assetsBn, orderPart1), orderPart2);
}

@@ -121,2 +122,2 @@ toStarkware() {

SignableOrder.fromOrder = SignableOrder.fromOrderWithClientId; // Alias.
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsa0RBQXVCO0FBRXZCLDRDQUdzQjtBQUN0Qix3Q0FNb0I7QUFDcEIsc0NBSXFCO0FBQ3JCLG9DQU9rQjtBQUNsQiwyQ0FFcUI7QUFDckIscUNBR2tCO0FBQ2xCLHFEQUFpRDtBQUVqRCxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQztBQUNoQyxNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLDhCQUE2QjtJQUk5RCxNQUFNLENBQUMscUJBQXFCLENBQzFCLEtBQTBEO1FBRTFELG9EQUFvRDtRQUNwRCxNQUFNLEtBQUssR0FBRywyQkFBaUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsT0FBTyxhQUFhLENBQUMsa0JBQWtCLENBQUM7WUFDdEMsR0FBRyxLQUFLO1lBQ1IsUUFBUSxFQUFFLFNBQVM7WUFDbkIsS0FBSztTQUNOLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsa0JBQWtCLENBQ3ZCLEtBQW9EO1FBRXBELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDMUIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQUVwQyx1RUFBdUU7UUFDdkUsTUFBTSxTQUFTLEdBQUcsMEJBQWtCLENBQUMscUJBQXFCLENBQUM7UUFFM0QsbUZBQW1GO1FBQ25GLHlDQUF5QztRQUN6QyxNQUFNLEVBQ0osdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGlCQUFpQixHQUNsQixHQUFHLDZCQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9CLGdHQUFnRztRQUNoRyxNQUFNLGlCQUFpQixHQUFHLG9DQUEwQixDQUFD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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsa0RBQXVCO0FBRXZCLDRDQUdzQjtBQUN0Qix3Q0FNb0I7QUFDcEIsc0NBSXFCO0FBQ3JCLG9DQU9rQjtBQUNsQiwyQ0FFcUI7QUFDckIscUNBQTJDO0FBQzNDLHFDQUFvRDtBQUNwRCxxREFBaUQ7QUFFakQsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLENBQUM7QUFDaEMsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFFOUI7O0dBRUc7QUFDSCxNQUFhLGFBQWMsU0FBUSw4QkFBNkI7SUFJOUQsTUFBTSxDQUFDLHFCQUFxQixDQUMxQixLQUEwRDtRQUUxRCxvREFBb0Q7UUFDcEQsTUFBTSxLQUFLLEdBQUcsMkJBQWlCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sYUFBYSxDQUFDLGtCQUFrQixDQUFDO1lBQ3RDLEdBQUcsS0FBSztZQUNSLFFBQVEsRUFBRSxTQUFTO1lBQ25CLEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLGtCQUFrQixDQUN2QixLQUFvRDtRQUVwRCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzFCLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFFcEMsdUVBQXVFO1FBQ3ZFLE1BQU0sU0FBUyxHQUFHLDBCQUFrQixDQUFDLHFCQUFxQixDQUFDO1FBRTNELG1GQUFtRjtRQUNuRix5Q0FBeUM7UUFDekMsTUFBTSxFQUNKLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixpQkFBaUIsR0FDbEIsR0FBRyw2QkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUvQixnR0FBZ0c7UUFDaEcsTUFBTSxpQkFBaUIsR0FBRyxvQ0FBMEIsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLHdCQUF3QixDQUFDLENBQUM7UUFDL0YsTUFBTSxVQUFVLEdBQUcsd0JBQVksQ0FBQyw0QkFBZ0IsQ0FBQyxDQUFDO1FBRWxELCtGQUErRjtRQUMvRixNQUFNLG9CQUFvQixHQUFHLHVDQUE2QixDQUN4RCxrQ0FBd0IsQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FDdkQsQ0FBQztRQUVGLE9BQU8sSUFBSSxhQUFhLENBQUM7WUFDdkIsU0FBUztZQUNULEtBQUs7WUFDTCx1QkFBdUI7WUFDdkIsd0JBQXdCO1lBQ3hCLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLFVBQVU7WUFDVixVQUFVO1lBQ1YsaUJBQWlCO1lBQ2pCLG9CQUFvQjtTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsS0FBSyxDQUFDLGFBQWE7UUFDM0IsTUFBTSxrQkFBa0IsR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sbUJBQW1CLEdBQUcsY0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRSxNQUFNLFlBQVksR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0RCxNQUFNLHlCQUF5QixHQUFHLGNBQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDaEYsTUFBTSwwQkFBMEIsR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ2xGLE1BQU0sbUJBQW1CLEdBQUcsY0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRSxNQUFNLE9BQU8sR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxNQUFNLFlBQVksR0FBRyxjQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0RCxNQUFNLG9CQUFvQixHQUFHLGNBQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFeEUsTUFBTSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQjtZQUNsRSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxrQkFBa0IsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCO1lBQ2hGLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixFQUFFLHlCQUF5QixDQUFDO1lBQ3pELENBQUMsQ0FBQyxDQUFDLHlCQUF5QixFQUFFLDBCQUEwQixDQUFDLENBQUM7UUFFNUQsSUFBSSxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsR0FBRyxtQ0FBdUIsQ0FBQyxnQkFBZ0IsRUFBRTtZQUM3RSxNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7U0FDdEU7UUFDRCxJQUFJLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxHQUFHLG1DQUF1QixDQUFDLGlCQUFpQixFQUFFO1lBQy9FLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztTQUN2RTtRQUNELElBQUksWUFBWSxDQUFDLFNBQVMsRUFBRSxHQUFHLG1DQUF1QixDQUFDLFVBQVUsRUFBRTtZQUNqRSxNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7U0FDaEU7UUFDRCxJQUFJLHlCQUF5QixDQUFDLFNBQVMsRUFBRSxHQUFHLG1DQUF1QixDQUFDLGNBQWMsRUFBRTtZQUNsRixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7U0FDN0U7UUFDRCxJQUFJLDBCQUEwQixDQUFDLFNBQVMsRUFBRSxHQUFHLG1DQUF1QixDQUFDLGNBQWMsRUFBRTtZQUNuRixNQUFNLElBQUksS0FBSyxDQUFDLDJEQUEyRCxDQUFDLENBQUM7U0FDOUU7UUFDRCxJQUFJLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxHQUFHLG1DQUF1QixDQUFDLGNBQWMsRUFBRTtZQUM1RSxNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxDQUFDLENBQUM7U0FDdkU7UUFDRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxtQ0FBdUIsQ0FBQyxLQUFLLEVBQUU7WUFDdkQsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1NBQzNEO1FBQ0QsSUFBSSxZQUFZLENBQUMsU0FBUyxFQUFFLEdBQUcsbUNBQXVCLENBQUMsVUFBVSxFQUFFO1lBQ2pFLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztTQUNoRTtRQUNELElBQUksb0JBQW9CLENBQUMsU0FBUyxFQUFFLEdBQUcsbUNBQXVCLENBQUMsb0JBQW9CLEVBQUU7WUFDbkYsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1NBQzFFO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxlQUFFLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDO2FBQzNELE1BQU0sQ0FBQyxtQ0FBdUIsQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUM7YUFDeEUsTUFBTSxDQUFDLG1DQUF1QixDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQzthQUN4RSxNQUFNLENBQUMsbUNBQXVCLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZELE1BQU0sVUFBVSxHQUFHLElBQUksZUFBRSxDQUFDLHFCQUFxQixDQUFDO2FBQzdDLE1BQU0sQ0FBQyxtQ0FBdUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsZ0JBQWdCO2FBQzlFLE1BQU0sQ0FBQyxtQ0FBdUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsZ0JBQWdCO2FBQzlFLE1BQU0sQ0FBQyxtQ0FBdUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsZ0JBQWdCO2FBQzlFLE1BQU0sQ0FBQyxtQ0FBdUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQzthQUMvRSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUU5QixNQUFNLFFBQVEsR0FBRyxNQUFNLGlDQUF3QixDQUM3QyxNQUFNLGlDQUF3QixDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsRUFDM0QsWUFBWSxDQUNiLENBQUM7UUFDRixPQUFPLHdCQUFlLENBQ3BCLE1BQU0sd0JBQWUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEVBQzNDLFVBQVUsQ0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQzs7QUFqSUgsc0NBa0lDO0FBaElRLHVCQUFTLEdBQUcsYUFBYSxDQUFDLHFCQUFxQixDQUFDLENBQUMsU0FBUyJ9

@@ -7,2 +7,3 @@ "use strict";

const util_1 = require("../lib/util");
const crypto_2 = require("./crypto");
/**

@@ -33,3 +34,3 @@ * Base class for a STARK key signable message.

const hashBN = await this.getHashBN();
const ecSignature = crypto_1.sign(helpers_1.asEcKeyPair(privateKey), hashBN);
const ecSignature = await crypto_2.sign(helpers_1.asEcKeyPair(privateKey), hashBN);
return helpers_1.serializeSignature({

@@ -48,3 +49,3 @@ r: util_1.bnToHex32(ecSignature.r),

const ecPublicKey = crypto_1.starkEc.keyFromPublic({ x: publicKey, y: publicKeyYCoordinate });
return crypto_1.verify(ecPublicKey, await this.getHashBN(), signatureStruct);
return crypto_2.verify(ecPublicKey, await this.getHashBN(), signatureStruct);
}

@@ -55,7 +56,8 @@ // Return true if the signature is valid for either of the two possible y-coordinates.

// https://github.com/starkware-libs/starkex-resources/blob/1eb84c6a9069950026768013f748016d3bd51d54/crypto/starkware/crypto/signature/signature.py#L151
return (crypto_1.verify(helpers_1.asEcKeyPairPublic(publicKey, false), await this.getHashBN(), signatureStruct) ||
crypto_1.verify(helpers_1.asEcKeyPairPublic(publicKey, true), await this.getHashBN(), signatureStruct));
const hashBN = await this.getHashBN();
return ((await crypto_2.verify(helpers_1.asEcKeyPairPublic(publicKey, false), hashBN, signatureStruct)) ||
crypto_2.verify(helpers_1.asEcKeyPairPublic(publicKey, true), hashBN, signatureStruct));
}
}
exports.StarkSignable = StarkSignable;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhcmstc2lnbmFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvc3Rhcmstc2lnbmFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsd0NBS29CO0FBQ3BCLDREQUl5QztBQUN6QyxzQ0FBd0M7QUFHeEM7O0dBRUc7QUFDSCxNQUFzQixhQUFhO0lBTWpDLFlBQ0UsT0FBVTtRQUhKLFlBQU8sR0FBYyxJQUFJLENBQUM7UUFLaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLE9BQU87UUFDWCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTO1FBQ2IsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRTtZQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQzNDO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJLENBQ1IsVUFBNEI7UUFFNUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEMsTUFBTSxXQUFXLEdBQUcsYUFBSSxDQUFDLHFCQUFXLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDMUQsT0FBTyw0QkFBa0IsQ0FBQztZQUN4QixDQUFDLEVBQUUsZ0JBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNCLENBQUMsRUFBRSxnQkFBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGVBQWUsQ0FDbkIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsdUJBQXNDLElBQUk7UUFFMUMsTUFBTSxlQUFlLEdBQUcsOEJBQW9CLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFeEQsc0ZBQXNGO1FBQ3RGLElBQUksb0JBQW9CLEVBQUU7WUFDeEIsTUFBTSxXQUFXLEdBQUcsZ0JBQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUM7WUFDckYsT0FBTyxlQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1NBQ3JFO1FBRUQsc0ZBQXNGO1FBQ3RGLEVBQUU7UUFDRixnQkFBZ0I7UUFDaEIsd0pBQXdKO1FBQ3hKLE9BQU8sQ0FDTCxlQUFNLENBQUMsMkJBQWlCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLGVBQWUsQ0FBQztZQUNwRixlQUFNLENBQUMsMkJBQWlCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLGVBQWUsQ0FBQyxDQUNwRixDQUFDO0lBQ0osQ0FBQztDQU1GO0FBdEVELHNDQXNFQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhcmstc2lnbmFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lnbmFibGUvc3Rhcmstc2lnbmFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsd0NBS29CO0FBQ3BCLDREQUEwRDtBQUMxRCxzQ0FBd0M7QUFFeEMscUNBR2tCO0FBRWxCOztHQUVHO0FBQ0gsTUFBc0IsYUFBYTtJQU1qQyxZQUNFLE9BQVU7UUFISixZQUFPLEdBQWMsSUFBSSxDQUFDO1FBS2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUztRQUNiLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUMzQztRQUNELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsSUFBSSxDQUNSLFVBQTRCO1FBRTVCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sV0FBVyxHQUFHLE1BQU0sYUFBSSxDQUFDLHFCQUFXLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDaEUsT0FBTyw0QkFBa0IsQ0FBQztZQUN4QixDQUFDLEVBQUUsZ0JBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNCLENBQUMsRUFBRSxnQkFBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGVBQWUsQ0FDbkIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsdUJBQXNDLElBQUk7UUFFMUMsTUFBTSxlQUFlLEdBQUcsOEJBQW9CLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFeEQsc0ZBQXNGO1FBQ3RGLElBQUksb0JBQW9CLEVBQUU7WUFDeEIsTUFBTSxXQUFXLEdBQUcsZ0JBQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUM7WUFDckYsT0FBTyxlQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1NBQ3JFO1FBRUQsc0ZBQXNGO1FBQ3RGLEVBQUU7UUFDRixnQkFBZ0I7UUFDaEIsd0pBQXdKO1FBQ3hKLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLE9BQU8sQ0FDTCxDQUFDLE1BQU0sZUFBTSxDQUFDLDJCQUFpQixDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDNUUsZUFBTSxDQUFDLDJCQUFpQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLENBQ3BFLENBQUM7SUFDSixDQUFDO0NBTUY7QUF2RUQsc0NBdUVDIn0=

@@ -12,3 +12,3 @@ "use strict";

const constants_2 = require("./constants");
const hashes_1 = require("./hashes");
const crypto_1 = require("./crypto");
const stark_signable_1 = require("./stark-signable");

@@ -68,3 +68,3 @@ const COLLATERAL_ASSET_ID_BN = util_1.hexToBn(constants_1.COLLATERAL_ASSET_ID);

.iushln(WITHDRAWAL_PADDING_BITS);
return hashes_1.getPedersenHash(COLLATERAL_ASSET_ID_BN, packedWithdrawalBn);
return crypto_1.getPedersenHash(COLLATERAL_ASSET_ID_BN, packedWithdrawalBn);
}

@@ -71,0 +71,0 @@ toStarkware() {

import BN from 'bn.js';
import elliptic from 'elliptic';
export declare enum StarkwareOrderType {

@@ -33,2 +34,4 @@ LIMIT_ORDER_WITH_FEES = "LIMIT_ORDER_WITH_FEES"

export declare type HashFunction = (a: BN, b: BN) => BN | Promise<BN>;
export declare type SigningFunction = (key: elliptic.ec.KeyPair, message: BN) => elliptic.ec.Signature | Promise<elliptic.ec.Signature>;
export declare type VerificationFunction = (key: elliptic.ec.KeyPair, message: BN, signature: SignatureStruct) => boolean | Promise<boolean>;
interface WithdrawalParamsBase {

@@ -35,0 +38,0 @@ positionId: string;

@@ -35,2 +35,2 @@ "use strict";

})(ApiMethod = exports.ApiMethod || (exports.ApiMethod = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsSUFBWSxrQkFFWDtBQUZELFdBQVksa0JBQWtCO0lBQzVCLHFFQUErQyxDQUFBO0FBQ2pELENBQUMsRUFGVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQUU3QjtBQUVELElBQVksa0JBR1g7QUFIRCxXQUFZLGtCQUFrQjtJQUM1QixpQ0FBVyxDQUFBO0lBQ1gsbUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQUc3QjtBQUVELHVDQUF1QztBQUN2QyxJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsaUNBQW1CLENBQUE7SUFDbkIsaUNBQW1CLENBQUE7SUFDbkIsbUNBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUpXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBSXJCO0FBRUQsSUFBWSxTQUtYO0FBTEQsV0FBWSxTQUFTO0lBQ25CLDBCQUFhLENBQUE7SUFDYix3QkFBVyxDQUFBO0lBQ1gsd0JBQVcsQ0FBQTtJQUNYLDBCQUFhLENBQUE7QUFDZixDQUFDLEVBTFcsU0FBUyxHQUFULGlCQUFTLEtBQVQsaUJBQVMsUUFLcEI7QUFnSEQsbURBQW1EO0FBRW5ELElBQVksU0FLWDtBQUxELFdBQVksU0FBUztJQUNuQiwwQkFBYSxDQUFBO0lBQ2Isd0JBQVcsQ0FBQTtJQUNYLHdCQUFXLENBQUE7SUFDWCw4QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTFcsU0FBUyxHQUFULGlCQUFTLEtBQVQsaUJBQVMsUUFLcEIifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsSUFBWSxrQkFFWDtBQUZELFdBQVksa0JBQWtCO0lBQzVCLHFFQUErQyxDQUFBO0FBQ2pELENBQUMsRUFGVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQUU3QjtBQUVELElBQVksa0JBR1g7QUFIRCxXQUFZLGtCQUFrQjtJQUM1QixpQ0FBVyxDQUFBO0lBQ1gsbUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQUc3QjtBQUVELHVDQUF1QztBQUN2QyxJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsaUNBQW1CLENBQUE7SUFDbkIsaUNBQW1CLENBQUE7SUFDbkIsbUNBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUpXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBSXJCO0FBRUQsSUFBWSxTQUtYO0FBTEQsV0FBWSxTQUFTO0lBQ25CLDBCQUFhLENBQUE7SUFDYix3QkFBVyxDQUFBO0lBQ1gsd0JBQVcsQ0FBQTtJQUNYLDBCQUFhLENBQUE7QUFDZixDQUFDLEVBTFcsU0FBUyxHQUFULGlCQUFTLEtBQVQsaUJBQVMsUUFLcEI7QUFvSEQsbURBQW1EO0FBRW5ELElBQVksU0FLWDtBQUxELFdBQVksU0FBUztJQUNuQiwwQkFBYSxDQUFBO0lBQ2Isd0JBQVcsQ0FBQTtJQUNYLHdCQUFXLENBQUE7SUFDWCw4QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTFcsU0FBUyxHQUFULGlCQUFTLEtBQVQsaUJBQVMsUUFLcEIifQ==
{
"name": "@dydxprotocol/starkex-lib",
"version": "0.11.0",
"version": "0.11.1",
"description": "Cryptographic functions for use with StarkEx",

@@ -5,0 +5,0 @@ "main": "build/src/index.js",

@@ -23,6 +23,4 @@ import BN from 'bn.js';

import { CONDITIONAL_TRANSFER_FIELD_BIT_LENGTHS } from './constants';
import {
getCacheablePedersenHash,
getPedersenHash,
} from './hashes';
import { getPedersenHash } from './crypto';
import { getCacheablePedersenHash } from './hashes';
import { StarkSignable } from './stark-signable';

@@ -29,0 +27,0 @@

@@ -12,40 +12,10 @@ /**

} from '../constants';
import { pedersen } from '../lib/starkex-resources';
import { hexToBn } from '../lib/util';
import { DydxAsset, HashFunction } from '../types';
import { DydxAsset } from '../types';
import { getPedersenHash } from './crypto';
const SANITY_CHECK_EXPECTED_RESULT = new BN(
'2001140082530619239661729809084578298299223810202097622761632384561112390979',
);
// Global state for all STARK signables.
const CACHE: Record<string, Record<string, BN>> = {};
let globalHashFunction: HashFunction = pedersen;
/**
* Set the hash function implementation that will be used for all StarkSignable objects.
*/
export function setGlobalStarkHashImplementationNoSanityCheck(hashFunction: HashFunction) {
globalHashFunction = hashFunction;
}
/**
* Set the hash function implementation that will be used for all StarkSignable objects.
*/
export async function setGlobalStarkHashImplementation(hashFunction: HashFunction) {
const result = await hashFunction(new BN(0), new BN(1));
if (!result.eq(SANITY_CHECK_EXPECTED_RESULT)) {
throw new Error('setGlobalStarkHashImplementation: Sanity check failed');
}
setGlobalStarkHashImplementationNoSanityCheck(hashFunction);
}
/**
* Calculate a pedersen hash.
*/
export async function getPedersenHash(left: BN, right: BN): Promise<BN> {
return globalHashFunction(left, right);
}
/**
* Calculate a pedersen hash with commonly used parameters. The hash will be cached.

@@ -60,3 +30,3 @@ */

if (!CACHE[leftString][rightString]) {
CACHE[leftString][rightString] = await globalHashFunction(left, right);
CACHE[leftString][rightString] = await getPedersenHash(left, right);
}

@@ -63,0 +33,0 @@ return CACHE[leftString][rightString];

@@ -6,7 +6,4 @@ import BN from 'bn.js';

export { SignableApiRequest } from './api-request';
export {
preComputeHashes,
setGlobalStarkHashImplementation,
setGlobalStarkHashImplementationNoSanityCheck,
} from './hashes';
export * from './crypto';
export { preComputeHashes } from './hashes';
export { SignableOraclePrice } from './oracle-price';

@@ -13,0 +10,0 @@ export { SignableOrder } from './order';

@@ -23,3 +23,3 @@ import Big from 'big.js';

} from './constants';
import { getPedersenHash } from './hashes';
import { getPedersenHash } from './crypto';
import { StarkSignable } from './stark-signable';

@@ -26,0 +26,0 @@

@@ -30,6 +30,4 @@ import BN from 'bn.js';

} from './constants';
import {
getCacheablePedersenHash,
getPedersenHash,
} from './hashes';
import { getPedersenHash } from './crypto';
import { getCacheablePedersenHash } from './hashes';
import { StarkSignable } from './stark-signable';

@@ -36,0 +34,0 @@

@@ -9,9 +9,9 @@ import BN from 'bn.js';

} from '../helpers';
import { starkEc } from '../lib/starkex-resources/crypto';
import { bnToHex32 } from '../lib/util';
import { KeyPair } from '../types';
import {
sign,
starkEc,
verify,
} from '../lib/starkex-resources/crypto';
import { bnToHex32 } from '../lib/util';
import { KeyPair } from '../types';
} from './crypto';

@@ -54,3 +54,3 @@ /**

const hashBN = await this.getHashBN();
const ecSignature = sign(asEcKeyPair(privateKey), hashBN);
const ecSignature = await sign(asEcKeyPair(privateKey), hashBN);
return serializeSignature({

@@ -82,5 +82,6 @@ r: bnToHex32(ecSignature.r),

// https://github.com/starkware-libs/starkex-resources/blob/1eb84c6a9069950026768013f748016d3bd51d54/crypto/starkware/crypto/signature/signature.py#L151
const hashBN = await this.getHashBN();
return (
verify(asEcKeyPairPublic(publicKey, false), await this.getHashBN(), signatureStruct) ||
verify(asEcKeyPairPublic(publicKey, true), await this.getHashBN(), signatureStruct)
(await verify(asEcKeyPairPublic(publicKey, false), hashBN, signatureStruct)) ||
verify(asEcKeyPairPublic(publicKey, true), hashBN, signatureStruct)
);

@@ -87,0 +88,0 @@ }

@@ -23,3 +23,3 @@ import BN from 'bn.js';

import { WITHDRAWAL_FIELD_BIT_LENGTHS } from './constants';
import { getPedersenHash } from './hashes';
import { getPedersenHash } from './crypto';
import { StarkSignable } from './stark-signable';

@@ -26,0 +26,0 @@

import BN from 'bn.js';
import elliptic from 'elliptic';

@@ -44,2 +45,6 @@ export enum StarkwareOrderType {

export type HashFunction = (a: BN, b: BN) => BN | Promise<BN>;
export type SigningFunction =
(key: elliptic.ec.KeyPair, message: BN) => elliptic.ec.Signature | Promise<elliptic.ec.Signature>;
export type VerificationFunction =
(key: elliptic.ec.KeyPair, message: BN, signature: SignatureStruct) => boolean | Promise<boolean>;

@@ -46,0 +51,0 @@ // ============ Withdrawal Parameters ============

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc