forked from Irys-xyz/bundles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconstants.ts
59 lines (57 loc) · 1.3 KB
/
constants.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
export enum SignatureConfig {
ARWEAVE = 1,
ED25519,
ETHEREUM,
SOLANA,
INJECTEDAPTOS = 5,
MULTIAPTOS = 6,
TYPEDETHEREUM = 7,
STARKNET = 8,
}
export interface SignatureMeta {
sigLength: number;
pubLength: number;
sigName: string;
}
export const SIG_CONFIG: Record<SignatureConfig, SignatureMeta> = {
[SignatureConfig.ARWEAVE]: {
sigLength: 512,
pubLength: 512,
sigName: "arweave",
},
[SignatureConfig.ED25519]: {
sigLength: 64,
pubLength: 32,
sigName: "ed25519",
},
[SignatureConfig.ETHEREUM]: {
sigLength: 65,
pubLength: 65,
sigName: "ethereum",
},
[SignatureConfig.SOLANA]: {
sigLength: 64,
pubLength: 32,
sigName: "solana",
},
[SignatureConfig.INJECTEDAPTOS]: {
sigLength: 64,
pubLength: 32,
sigName: "injectedAptos",
},
[SignatureConfig.MULTIAPTOS]: {
sigLength: 64 * 32 + 4, // max 32 64 byte signatures, +4 for 32-bit bitmap
pubLength: 32 * 32 + 1, // max 64 32 byte keys, +1 for 8-bit threshold value
sigName: "multiAptos",
},
[SignatureConfig.TYPEDETHEREUM]: {
sigLength: 65,
pubLength: 42,
sigName: "typedEthereum",
},
[SignatureConfig.STARKNET]: {
sigLength: 128, // 64 bytes signature, + 32 bytes address + 32 bytes chainId
pubLength: 33,
sigName: "starknet",
},
};