@cartridge/controller 0.1.62 → 0.1.64
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/lib/device.d.ts +3 -2
- package/lib/device.js +8 -3
- package/lib/device.js.map +1 -1
- package/lib/index.d.ts +8 -2
- package/lib/index.js +38 -5
- package/lib/index.js.map +1 -1
- package/lib/signer.d.ts +2 -1
- package/lib/signer.js +7 -0
- package/lib/signer.js.map +1 -1
- package/lib/types.d.ts +5 -3
- package/lib/webauthn.d.ts +8 -4
- package/lib/webauthn.js +58 -45
- package/lib/webauthn.js.map +1 -1
- package/package.json +2 -2
package/lib/device.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Account, DeployContractPayload, Abi, Call, EstimateFeeDetails, DeployContractResponse as StarknetDeployContractResponse, InvocationsDetails, Signature, typedData, InvokeFunctionResponse, EstimateFee } from "starknet";
|
|
1
|
+
import { Account, DeployContractPayload, Abi, Call, EstimateFeeDetails, DeployContractResponse as StarknetDeployContractResponse, InvocationsDetails, Signature, typedData, InvokeFunctionResponse, EstimateFee, DeclareContractPayload } from "starknet";
|
|
2
2
|
import { Keychain } from "./types";
|
|
3
3
|
import { AsyncMethodReturns } from "@cartridge/penpal";
|
|
4
4
|
declare class DeviceAccount extends Account {
|
|
@@ -30,7 +30,8 @@ declare class DeviceAccount extends Account {
|
|
|
30
30
|
*
|
|
31
31
|
* @returns response from addTransaction
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
estimateInvokeFee(calls: Call | Call[], details?: EstimateFeeDetails): Promise<EstimateFee>;
|
|
34
|
+
estimateDeclareFee(payload: DeclareContractPayload, details?: EstimateFeeDetails): Promise<EstimateFee>;
|
|
34
35
|
/**
|
|
35
36
|
* Invoke execute function in account contract
|
|
36
37
|
*
|
package/lib/device.js
CHANGED
|
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
const starknet_1 = require("starknet");
|
|
16
16
|
const query_string_1 = __importDefault(require("query-string"));
|
|
17
17
|
const signer_1 = require("./signer");
|
|
18
|
-
const constants_1 = require("starknet/constants");
|
|
18
|
+
const constants_1 = require("starknet/dist/constants");
|
|
19
19
|
class DeviceAccount extends starknet_1.Account {
|
|
20
20
|
constructor(address, keychain, options) {
|
|
21
21
|
super(starknet_1.defaultProvider, address, new signer_1.Signer(keychain, options));
|
|
@@ -52,9 +52,14 @@ class DeviceAccount extends starknet_1.Account {
|
|
|
52
52
|
*
|
|
53
53
|
* @returns response from addTransaction
|
|
54
54
|
*/
|
|
55
|
-
|
|
55
|
+
estimateInvokeFee(calls, details) {
|
|
56
56
|
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
return this.keychain.
|
|
57
|
+
return this.keychain.estimateInvokeFee(calls, details);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
estimateDeclareFee(payload, details) {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
return this.keychain.estimateDeclareFee(payload, details);
|
|
58
63
|
});
|
|
59
64
|
}
|
|
60
65
|
/**
|
package/lib/device.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AccountInterface } from "starknet";
|
|
2
2
|
import { Session, Policy } from "./types";
|
|
3
|
-
import { BigNumberish } from "starknet/utils/number";
|
|
3
|
+
import { BigNumberish } from "starknet/dist/utils/number";
|
|
4
4
|
declare class Controller {
|
|
5
5
|
private selector;
|
|
6
6
|
private connection?;
|
|
@@ -21,7 +21,13 @@ declare class Controller {
|
|
|
21
21
|
address: string;
|
|
22
22
|
deviceKey: string;
|
|
23
23
|
} | null>;
|
|
24
|
-
login(address: string, credentialId: string,
|
|
24
|
+
login(address: string, credentialId: string, options: {
|
|
25
|
+
rpId?: string;
|
|
26
|
+
hashExt?: string;
|
|
27
|
+
}): Promise<{
|
|
28
|
+
assertion: import("./webauthn").Assertion;
|
|
29
|
+
receipt: import("starknet").InvokeFunctionResponse;
|
|
30
|
+
} | null>;
|
|
25
31
|
provision(address: string): Promise<string | null>;
|
|
26
32
|
connect(): Promise<AccountInterface | null>;
|
|
27
33
|
disconnect(): Promise<void | null>;
|
package/lib/index.js
CHANGED
|
@@ -10,6 +10,18 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
10
10
|
if (k2 === undefined) k2 = k;
|
|
11
11
|
o[k2] = m[k];
|
|
12
12
|
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
13
25
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
26
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
27
|
};
|
|
@@ -31,8 +43,11 @@ const query_string_1 = __importDefault(require("query-string"));
|
|
|
31
43
|
const starknet_1 = require("starknet");
|
|
32
44
|
const penpal_1 = require("@cartridge/penpal");
|
|
33
45
|
const device_1 = __importDefault(require("./device"));
|
|
34
|
-
const number_1 = require("starknet/utils/number");
|
|
35
|
-
const webauthn_1 =
|
|
46
|
+
const number_1 = require("starknet/dist/utils/number");
|
|
47
|
+
const webauthn_1 = __importStar(require("./webauthn"));
|
|
48
|
+
const constants_1 = require("starknet/dist/constants");
|
|
49
|
+
const hash_1 = require("starknet/dist/utils/hash");
|
|
50
|
+
const transaction_1 = require("starknet/dist/utils/transaction");
|
|
36
51
|
class Controller {
|
|
37
52
|
constructor(policies, options) {
|
|
38
53
|
this.selector = "cartridge-messenger";
|
|
@@ -107,14 +122,14 @@ class Controller {
|
|
|
107
122
|
return yield this.keychain.register(username, credential);
|
|
108
123
|
});
|
|
109
124
|
}
|
|
110
|
-
login(address, credentialId,
|
|
125
|
+
login(address, credentialId, options) {
|
|
111
126
|
return __awaiter(this, void 0, void 0, function* () {
|
|
112
127
|
if (!this.keychain) {
|
|
113
128
|
console.error("not ready for connect");
|
|
114
129
|
return null;
|
|
115
130
|
}
|
|
116
131
|
const deviceKey = yield this.keychain.provision(address);
|
|
117
|
-
const account = new webauthn_1.default(address, credentialId, deviceKey,
|
|
132
|
+
const account = new webauthn_1.default(address, credentialId, deviceKey, options);
|
|
118
133
|
const calls = [
|
|
119
134
|
{
|
|
120
135
|
contractAddress: address,
|
|
@@ -122,7 +137,25 @@ class Controller {
|
|
|
122
137
|
calldata: [deviceKey],
|
|
123
138
|
},
|
|
124
139
|
];
|
|
125
|
-
|
|
140
|
+
const nonce = yield account.getNonce();
|
|
141
|
+
let maxFee = constants_1.ZERO;
|
|
142
|
+
const { suggestedMaxFee } = yield account.estimateInvokeFee(calls, { nonce });
|
|
143
|
+
maxFee = suggestedMaxFee.toString();
|
|
144
|
+
const version = (0, number_1.toBN)(hash_1.transactionVersion);
|
|
145
|
+
const chainId = yield account.getChainId();
|
|
146
|
+
const calldata = (0, transaction_1.fromCallsToExecuteCalldata)(calls);
|
|
147
|
+
let msgHash = (0, hash_1.calculateTransactionHash)(account.address, version, calldata, maxFee, chainId, nonce);
|
|
148
|
+
if (options.hashExt) {
|
|
149
|
+
msgHash += options.hashExt;
|
|
150
|
+
}
|
|
151
|
+
const assertion = yield account.signer.sign(msgHash);
|
|
152
|
+
const signature = (0, webauthn_1.formatAssertion)(assertion);
|
|
153
|
+
const receipt = yield account.invokeFunction({ contractAddress: account.address, calldata, signature }, {
|
|
154
|
+
nonce,
|
|
155
|
+
maxFee,
|
|
156
|
+
version,
|
|
157
|
+
});
|
|
158
|
+
return { assertion, receipt };
|
|
126
159
|
});
|
|
127
160
|
}
|
|
128
161
|
provision(address) {
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/signer.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Abi, InvocationsSignerDetails, SignerInterface, Signature, typedData, Call } from "starknet";
|
|
1
|
+
import { Abi, InvocationsSignerDetails, SignerInterface, Signature, typedData, Call, DeclareSignerDetails } from "starknet";
|
|
2
2
|
import { Keychain } from "./types";
|
|
3
3
|
import { AsyncMethodReturns } from "@cartridge/penpal";
|
|
4
4
|
export declare class Signer implements SignerInterface {
|
|
@@ -36,4 +36,5 @@ export declare class Signer implements SignerInterface {
|
|
|
36
36
|
* @returns signature
|
|
37
37
|
*/
|
|
38
38
|
signTransaction(calls: Call[], transactionsDetail: InvocationsSignerDetails, abis?: Abi[]): Promise<Signature>;
|
|
39
|
+
signDeclareTransaction(details: DeclareSignerDetails): Promise<Signature>;
|
|
39
40
|
}
|
package/lib/signer.js
CHANGED
|
@@ -69,6 +69,13 @@ class Signer {
|
|
|
69
69
|
return this.keychain.signTransaction(calls, transactionsDetail, abis);
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
|
+
signDeclareTransaction(
|
|
73
|
+
// contractClass: ContractClass, // Should be used once class hash is present in ContractClass
|
|
74
|
+
details) {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
return this.keychain.signDeclareTransaction(details);
|
|
77
|
+
});
|
|
78
|
+
}
|
|
72
79
|
}
|
|
73
80
|
exports.Signer = Signer;
|
|
74
81
|
//# sourceMappingURL=signer.js.map
|
package/lib/signer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AASA,gEAA8B;AAM9B,MAAa,MAAM;IAIf,YAAY,QAAsC,EAAE,OAEnD;QAJO,QAAG,GAAW,sBAAsB,CAAC;QAKzC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,EAAE;YACd,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;SAC1B;IACL,CAAC;IAED;;;;OAIG;IACI,SAAS;QACZ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC9B,CAAC;IAED;;;;;;;;OAQG;IACU,WAAW,CAAC,SAA8B,EAAE,OAAe;;YACpE,MAAM,CAAC,IAAI,CACP,GAAG,IAAI,CAAC,GAAG,SAAS,sBAAE,CAAC,SAAS,CAAC;gBAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;aAC7C,CAAC,EAAE,EACJ,QAAQ,EACR,sBAAsB,CACzB,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;KAAA;IAED;;;;;;;;;;;OAWG;IACU,eAAe,CACxB,KAAa,EACb,kBAA4C,EAC5C,IAAY;;YAEZ,MAAM,CAAC,IAAI,CACP,GAAG,IAAI,CAAC,GAAG,SAAS,sBAAE,CAAC,SAAS,CAAC;gBAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aAC/B,CAAC,EAAE,EACJ,QAAQ,EACR,sBAAsB,CACzB,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAC1E,CAAC;KAAA;IAEY,sBAAsB;IAC/B,+FAA+F;IAC/F,OAA6B;;YAE7B,OAAO,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACzD,CAAC;KAAA;CACJ;AAhFD,wBAgFC"}
|
package/lib/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Abi, Call, InvocationsDetails, typedData, InvokeFunctionResponse, Signature, InvocationsSignerDetails, EstimateFeeDetails, EstimateFee } from "starknet";
|
|
2
|
-
import { BigNumberish } from "starknet/utils/number";
|
|
1
|
+
import { Abi, Call, InvocationsDetails, typedData, InvokeFunctionResponse, Signature, InvocationsSignerDetails, EstimateFeeDetails, EstimateFee, DeclareSignerDetails, DeclareContractPayload } from "starknet";
|
|
2
|
+
import { BigNumberish } from "starknet/dist/utils/number";
|
|
3
3
|
export declare type Session = {
|
|
4
4
|
policies: Policy[];
|
|
5
5
|
maxFee: BigNumberish;
|
|
@@ -20,7 +20,8 @@ export interface Keychain {
|
|
|
20
20
|
disconnect(): void;
|
|
21
21
|
revoke(origin: string): void;
|
|
22
22
|
approvals(origin: string): Promise<Session | undefined>;
|
|
23
|
-
|
|
23
|
+
estimateDeclareFee(payload: DeclareContractPayload, details?: EstimateFeeDetails): Promise<EstimateFee>;
|
|
24
|
+
estimateInvokeFee(calls: Call | Call[], estimateFeeDetails?: EstimateFeeDetails): Promise<EstimateFee>;
|
|
24
25
|
execute(calls: Call | Call[], abis?: Abi[], transactionsDetail?: InvocationsDetails, sync?: boolean): Promise<InvokeFunctionResponse>;
|
|
25
26
|
provision(address: string): Promise<string>;
|
|
26
27
|
register(username: string, credential: {
|
|
@@ -32,4 +33,5 @@ export interface Keychain {
|
|
|
32
33
|
}>;
|
|
33
34
|
signMessage(typedData: typedData.TypedData, account: string): Promise<Signature>;
|
|
34
35
|
signTransaction(transactions: Call[], transactionsDetail: InvocationsSignerDetails, abis?: Abi[]): Promise<Signature>;
|
|
36
|
+
signDeclareTransaction(details: DeclareSignerDetails): Promise<Signature>;
|
|
35
37
|
}
|
package/lib/webauthn.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Abi, Call, InvocationsSignerDetails, Signature, SignerInterface, typedData, Account } from "starknet";
|
|
2
|
-
declare type Assertion = PublicKeyCredential & {
|
|
1
|
+
import { Abi, Call, InvocationsSignerDetails, Signature, SignerInterface, typedData, Account, DeclareSignerDetails } from "starknet";
|
|
2
|
+
export declare type Assertion = PublicKeyCredential & {
|
|
3
3
|
response: AuthenticatorAssertionResponse;
|
|
4
4
|
};
|
|
5
5
|
export declare class WebauthnSigner implements SignerInterface {
|
|
@@ -9,12 +9,16 @@ export declare class WebauthnSigner implements SignerInterface {
|
|
|
9
9
|
constructor(credentialId: string, publicKey: string, rpId?: string);
|
|
10
10
|
getPubKey(): Promise<string>;
|
|
11
11
|
sign(hash: string): Promise<Assertion>;
|
|
12
|
-
formatAssertion(assertion: Assertion): Signature;
|
|
13
12
|
hashTransaction(transactions: Call[], transactionsDetail: InvocationsSignerDetails, abis?: Abi[]): string;
|
|
14
13
|
signTransaction(calls: Call[], transactionsDetail: InvocationsSignerDetails, abis?: Abi[]): Promise<Signature>;
|
|
15
14
|
signMessage(td: typedData.TypedData, accountAddress: string): Promise<Signature>;
|
|
15
|
+
signDeclareTransaction({ classHash, senderAddress, chainId, maxFee, version, nonce }: DeclareSignerDetails): Promise<Signature>;
|
|
16
16
|
}
|
|
17
17
|
declare class WebauthnAccount extends Account {
|
|
18
|
-
|
|
18
|
+
signer: WebauthnSigner;
|
|
19
|
+
constructor(address: string, credentialId: string, publicKey: string, options: {
|
|
20
|
+
rpId?: string;
|
|
21
|
+
});
|
|
19
22
|
}
|
|
23
|
+
export declare function formatAssertion(assertion: Assertion): Signature;
|
|
20
24
|
export default WebauthnAccount;
|
package/lib/webauthn.js
CHANGED
|
@@ -12,10 +12,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.WebauthnSigner = void 0;
|
|
15
|
+
exports.formatAssertion = exports.WebauthnSigner = void 0;
|
|
16
16
|
const starknet_1 = require("starknet");
|
|
17
17
|
const base64url_1 = __importDefault(require("base64url"));
|
|
18
18
|
const _1 = require(".");
|
|
19
|
+
const hash_1 = require("starknet/dist/utils/hash");
|
|
19
20
|
function convertUint8ArrayToWordArray(u8Array) {
|
|
20
21
|
var words = [], i = 0, len = u8Array.length;
|
|
21
22
|
while (i < len) {
|
|
@@ -60,46 +61,6 @@ class WebauthnSigner {
|
|
|
60
61
|
}));
|
|
61
62
|
});
|
|
62
63
|
}
|
|
63
|
-
formatAssertion(assertion) {
|
|
64
|
-
var authenticatorDataBytes = new Uint8Array(assertion.response.authenticatorData);
|
|
65
|
-
let authenticatorDataRem = 4 - (authenticatorDataBytes.length % 4);
|
|
66
|
-
if (authenticatorDataRem == 4) {
|
|
67
|
-
authenticatorDataRem = 0;
|
|
68
|
-
}
|
|
69
|
-
const authenticatorDataWords = convertUint8ArrayToWordArray(authenticatorDataBytes).words;
|
|
70
|
-
var clientDataJSONBytes = new Uint8Array(assertion.response.clientDataJSON);
|
|
71
|
-
let clientDataJSONRem = 4 - (clientDataJSONBytes.length % 4);
|
|
72
|
-
if (clientDataJSONRem == 4) {
|
|
73
|
-
clientDataJSONRem = 0;
|
|
74
|
-
}
|
|
75
|
-
const clientDataWords = convertUint8ArrayToWordArray(clientDataJSONBytes).words;
|
|
76
|
-
// Convert signature from ASN.1 sequence to "raw" format
|
|
77
|
-
const usignature = new Uint8Array(assertion.response.signature);
|
|
78
|
-
const rStart = usignature[4] === 0 ? 5 : 4;
|
|
79
|
-
const rEnd = rStart + 32;
|
|
80
|
-
const sStart = usignature[rEnd + 2] === 0 ? rEnd + 3 : rEnd + 2;
|
|
81
|
-
const r = starknet_1.number.toBN("0x" + Buffer.from(usignature.slice(rStart, rEnd)).toString("hex"));
|
|
82
|
-
const s = starknet_1.number.toBN("0x" + Buffer.from(usignature.slice(sStart)).toString("hex"));
|
|
83
|
-
const { x: r0, y: r1, z: r2 } = (0, _1.split)(r);
|
|
84
|
-
const { x: s0, y: s1, z: s2 } = (0, _1.split)(s);
|
|
85
|
-
return [
|
|
86
|
-
"0",
|
|
87
|
-
r0.toString(),
|
|
88
|
-
r1.toString(),
|
|
89
|
-
r2.toString(),
|
|
90
|
-
s0.toString(),
|
|
91
|
-
s1.toString(),
|
|
92
|
-
s2.toString(),
|
|
93
|
-
"9",
|
|
94
|
-
"0",
|
|
95
|
-
`${clientDataWords.length}`,
|
|
96
|
-
`${clientDataJSONRem}`,
|
|
97
|
-
...clientDataWords.map((word) => `${word}`),
|
|
98
|
-
`${authenticatorDataWords.length}`,
|
|
99
|
-
`${authenticatorDataRem}`,
|
|
100
|
-
...authenticatorDataWords.map((word) => `${word}`),
|
|
101
|
-
];
|
|
102
|
-
}
|
|
103
64
|
hashTransaction(transactions, transactionsDetail, abis) {
|
|
104
65
|
if (abis && abis.length !== transactions.length) {
|
|
105
66
|
throw new Error("ABI must be provided for each transaction or no transaction");
|
|
@@ -117,22 +78,74 @@ class WebauthnSigner {
|
|
|
117
78
|
const calldata = starknet_1.transaction.fromCallsToExecuteCalldataWithNonce(calls, transactionsDetail.nonce);
|
|
118
79
|
const msgHash = starknet_1.hash.calculateTransactionHash(transactionsDetail.walletAddress, transactionsDetail.version, [starknet_1.hash.getSelectorFromName("__execute__")].concat(calldata), transactionsDetail.maxFee, transactionsDetail.chainId, transactionsDetail.nonce);
|
|
119
80
|
const assertion = yield this.sign(msgHash);
|
|
120
|
-
return
|
|
81
|
+
return formatAssertion(assertion);
|
|
121
82
|
});
|
|
122
83
|
}
|
|
123
84
|
signMessage(td, accountAddress) {
|
|
124
85
|
return __awaiter(this, void 0, void 0, function* () {
|
|
125
86
|
const msgHash = starknet_1.typedData.getMessageHash(td, accountAddress);
|
|
126
87
|
const assertion = yield this.sign(msgHash);
|
|
127
|
-
return
|
|
88
|
+
return formatAssertion(assertion);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
signDeclareTransaction(
|
|
92
|
+
// contractClass: ContractClass, // Should be used once class hash is present in ContractClass
|
|
93
|
+
{ classHash, senderAddress, chainId, maxFee, version, nonce }) {
|
|
94
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
const msgHash = (0, hash_1.calculateDeclareTransactionHash)(classHash, senderAddress, version, maxFee, chainId, nonce);
|
|
96
|
+
const assertion = yield this.sign(msgHash);
|
|
97
|
+
return formatAssertion(assertion);
|
|
128
98
|
});
|
|
129
99
|
}
|
|
130
100
|
}
|
|
131
101
|
exports.WebauthnSigner = WebauthnSigner;
|
|
132
102
|
class WebauthnAccount extends starknet_1.Account {
|
|
133
|
-
constructor(address, credentialId, publicKey,
|
|
134
|
-
|
|
103
|
+
constructor(address, credentialId, publicKey, options) {
|
|
104
|
+
const signer = new WebauthnSigner(credentialId, publicKey, options.rpId);
|
|
105
|
+
super(starknet_1.defaultProvider, address, signer);
|
|
106
|
+
this.signer = signer;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
function formatAssertion(assertion) {
|
|
110
|
+
var authenticatorDataBytes = new Uint8Array(assertion.response.authenticatorData);
|
|
111
|
+
let authenticatorDataRem = 4 - (authenticatorDataBytes.length % 4);
|
|
112
|
+
if (authenticatorDataRem == 4) {
|
|
113
|
+
authenticatorDataRem = 0;
|
|
114
|
+
}
|
|
115
|
+
const authenticatorDataWords = convertUint8ArrayToWordArray(authenticatorDataBytes).words;
|
|
116
|
+
var clientDataJSONBytes = new Uint8Array(assertion.response.clientDataJSON);
|
|
117
|
+
let clientDataJSONRem = 4 - (clientDataJSONBytes.length % 4);
|
|
118
|
+
if (clientDataJSONRem == 4) {
|
|
119
|
+
clientDataJSONRem = 0;
|
|
135
120
|
}
|
|
121
|
+
const clientDataWords = convertUint8ArrayToWordArray(clientDataJSONBytes).words;
|
|
122
|
+
// Convert signature from ASN.1 sequence to "raw" format
|
|
123
|
+
const usignature = new Uint8Array(assertion.response.signature);
|
|
124
|
+
const rStart = usignature[4] === 0 ? 5 : 4;
|
|
125
|
+
const rEnd = rStart + 32;
|
|
126
|
+
const sStart = usignature[rEnd + 2] === 0 ? rEnd + 3 : rEnd + 2;
|
|
127
|
+
const r = starknet_1.number.toBN("0x" + Buffer.from(usignature.slice(rStart, rEnd)).toString("hex"));
|
|
128
|
+
const s = starknet_1.number.toBN("0x" + Buffer.from(usignature.slice(sStart)).toString("hex"));
|
|
129
|
+
const { x: r0, y: r1, z: r2 } = (0, _1.split)(r);
|
|
130
|
+
const { x: s0, y: s1, z: s2 } = (0, _1.split)(s);
|
|
131
|
+
return [
|
|
132
|
+
"0",
|
|
133
|
+
r0.toString(),
|
|
134
|
+
r1.toString(),
|
|
135
|
+
r2.toString(),
|
|
136
|
+
s0.toString(),
|
|
137
|
+
s1.toString(),
|
|
138
|
+
s2.toString(),
|
|
139
|
+
"9",
|
|
140
|
+
"0",
|
|
141
|
+
`${clientDataWords.length}`,
|
|
142
|
+
`${clientDataJSONRem}`,
|
|
143
|
+
...clientDataWords.map((word) => `${word}`),
|
|
144
|
+
`${authenticatorDataWords.length}`,
|
|
145
|
+
`${authenticatorDataRem}`,
|
|
146
|
+
...authenticatorDataWords.map((word) => `${word}`),
|
|
147
|
+
];
|
|
136
148
|
}
|
|
149
|
+
exports.formatAssertion = formatAssertion;
|
|
137
150
|
exports.default = WebauthnAccount;
|
|
138
151
|
//# sourceMappingURL=webauthn.js.map
|
package/lib/webauthn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webauthn.js","sourceRoot":"","sources":["../src/webauthn.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"webauthn.js","sourceRoot":"","sources":["../src/webauthn.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cartridge/controller",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.64",
|
|
4
4
|
"description": "Cartridge Controller",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -26,6 +26,6 @@
|
|
|
26
26
|
"base64url": "^3.0.1",
|
|
27
27
|
"fast-deep-equal": "^3.1.3",
|
|
28
28
|
"query-string": "^7.1.1",
|
|
29
|
-
"starknet": "
|
|
29
|
+
"starknet": "https://github.com/0xs34n/starknet.js#develop"
|
|
30
30
|
}
|
|
31
31
|
}
|