@prosopo/scripts 0.2.41 → 0.3.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.
@@ -1 +1 @@
1
- {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,eAAO,MAAM,IAAI,YACJ,MAAM,YACL;IACN,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB,KACF,QAAQ,UAAU,CA6CpB,CAAA"}
1
+ {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,eAAO,MAAM,IAAI,YACJ,MAAM,YACL;IACN,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB,KACF,QAAQ,UAAU,CAmDpB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAQ/B,MAAM,CAAC,MAAM,IAAI,GAAG,CAChB,OAAe,EACf,OAGC,EACkB,EAAE;IACrB,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IACtC,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAA;IACjC,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAA;IAE7C,IAAI,QAAQ,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAA;KACnC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE;QACvB,KAAK,EAAE,IAAI;KACd,CAAC,CAAA;IAEF,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QAC5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC/B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;KAClC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAErB,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IACF,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,IAAI;YAC1B,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;gBAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;aAClB;YACD,MAAM,MAAM,GAAe;gBACvB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,IAAI;aACP,CAAA;YACD,IAAI,IAAI,KAAK,CAAC,EAAE;gBACZ,OAAO,CAAC,MAAM,CAAC,CAAA;aAClB;iBAAM;gBACH,MAAM,CAAC,MAAM,CAAC,CAAA;aACjB;QACL,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAQ/B,MAAM,CAAC,MAAM,IAAI,GAAG,CAChB,OAAe,EACf,OAGC,EACkB,EAAE;IACrB,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IACtC,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAA;IACjC,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAA;IAE7C,IAAI,QAAQ,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAA;KACnC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE;QACvB,KAAK,EAAE,IAAI;KACd,CAAC,CAAA;IAEF,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QAK5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAG/B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;KAClC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAErB,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IACF,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,IAAI;YAC1B,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;gBAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;aAClB;YACD,MAAM,MAAM,GAAe;gBACvB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,IAAI;aACP,CAAA;YACD,IAAI,IAAI,KAAK,CAAC,EAAE;gBACZ,OAAO,CAAC,MAAM,CAAC,CAAA;aAClB;iBAAM;gBACH,MAAM,CAAC,MAAM,CAAC,CAAA;aACjB;QACL,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/scripts",
3
- "version": "0.2.41",
3
+ "version": "0.3.1",
4
4
  "description": "Dev scripts for working with prosopo packages",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -11,7 +11,7 @@
11
11
  "scripts": {
12
12
  "clean": "tsc --build --clean",
13
13
  "build": "tsc --build --verbose",
14
- "test": "NODE_OPTIONS=--max-old-space-size=4096 npx vitest run --config ./src/vite.config.ts",
14
+ "test": "npx vitest run --config ./src/vite.config.ts",
15
15
  "deploy": "node dist/deploy/protocol.js",
16
16
  "cli": "node dist/cli/index.js",
17
17
  "setup": "node dist/cli/index.js setup",
@@ -26,30 +26,30 @@
26
26
  "license": "Apache-2.0",
27
27
  "dependencies": {
28
28
  "@iarna/toml": "^2.2.5",
29
- "@polkadot/api": "10.11.1",
30
- "@polkadot/api-contract": "10.11.1",
31
- "@polkadot/types": "10.11.1",
32
- "@polkadot/util-crypto": "12.6.1",
33
- "@prosopo/api": "0.2.41",
34
- "@prosopo/cli": "0.2.41",
35
- "@prosopo/common": "0.2.41",
36
- "@prosopo/config": "0.2.41",
37
- "@prosopo/contract": "0.2.41",
38
- "@prosopo/database": "0.2.41",
39
- "@prosopo/datasets": "0.2.41",
40
- "@prosopo/datasets-fs": "0.2.41",
41
- "@prosopo/env": "0.2.41",
42
- "@prosopo/file-server": "0.2.41",
43
- "@prosopo/procaptcha": "0.2.41",
44
- "@prosopo/procaptcha-bundle": "0.2.41",
45
- "@prosopo/procaptcha-react": "0.2.41",
46
- "@prosopo/provider": "0.2.41",
47
- "@prosopo/server": "0.2.41",
48
- "@prosopo/types": "0.2.41",
49
- "@prosopo/types-database": "0.2.41",
50
- "@prosopo/types-env": "0.2.41",
51
- "@prosopo/captcha-contract": "0.2.41",
52
- "@prosopo/util": "0.2.41",
29
+ "@polkadot/api": "10.11.2",
30
+ "@polkadot/api-contract": "10.11.2",
31
+ "@polkadot/types": "10.11.2",
32
+ "@polkadot/util-crypto": "12.6.2",
33
+ "@prosopo/api": "0.3.1",
34
+ "@prosopo/cli": "0.3.1",
35
+ "@prosopo/common": "0.3.1",
36
+ "@prosopo/config": "0.3.1",
37
+ "@prosopo/contract": "0.3.1",
38
+ "@prosopo/database": "0.3.1",
39
+ "@prosopo/datasets": "0.3.1",
40
+ "@prosopo/datasets-fs": "0.3.1",
41
+ "@prosopo/env": "0.3.1",
42
+ "@prosopo/file-server": "0.3.1",
43
+ "@prosopo/procaptcha": "0.3.1",
44
+ "@prosopo/procaptcha-bundle": "0.3.1",
45
+ "@prosopo/procaptcha-react": "0.3.1",
46
+ "@prosopo/provider": "0.3.1",
47
+ "@prosopo/server": "0.3.1",
48
+ "@prosopo/types": "0.3.1",
49
+ "@prosopo/types-database": "0.3.1",
50
+ "@prosopo/types-env": "0.3.1",
51
+ "@prosopo/captcha-contract": "0.3.1",
52
+ "@prosopo/util": "0.3.1",
53
53
  "consola": "^3.2.3",
54
54
  "dotenv": "^16.0.3",
55
55
  "glob": "^10.0.0",
@@ -59,13 +59,13 @@
59
59
  "yargs-parser": "^21.0.1"
60
60
  },
61
61
  "overrides": {
62
- "@polkadot/keyring": "12.6.1"
62
+ "@polkadot/keyring": "12.6.2"
63
63
  },
64
64
  "devDependencies": {
65
65
  "@esm-bundle/chai": "^4.3.4-fix.0",
66
66
  "ts-node": "^10.9.1",
67
67
  "tslib": "2.6.2",
68
68
  "typescript": "5.1.6",
69
- "vitest": "^0.34.2"
69
+ "vitest": "^1.3.1"
70
70
  }
71
71
  }
@@ -0,0 +1,6 @@
1
+ export default {
2
+ entryPoints: ['src/**/*.ts', 'src/**/*.tsx', 'src/**/*.js', 'src/**/*.jsx', 'src/**/*.json'],
3
+ includes: 'src',
4
+ extends: '../../typedoc.base.config.js',
5
+ readme: 'README.md',
6
+ }
@@ -1,2 +0,0 @@
1
- export declare function streamToJson(stream: ReadableStream<Uint8Array>): Promise<Record<any, any>>;
2
- //# sourceMappingURL=fluxDeploy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fluxDeploy.d.ts","sourceRoot":"","sources":["../../src/scripts/fluxDeploy.ts"],"names":[],"mappings":"AAqGA,wBAAsB,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAEhG"}
@@ -1,140 +0,0 @@
1
- import { ProsopoApiError, ProsopoEnvError, ProsopoError, getLogger } from '@prosopo/common';
2
- import { at } from '@prosopo/util';
3
- import { base64Encode } from '@polkadot/util-crypto';
4
- import { loadEnv } from '@prosopo/cli';
5
- import { sign, wifToPrivateKey } from './sep256k1Sign.js';
6
- import qs from 'qs';
7
- const log = getLogger(`Info`, `fluxDeploy.js`);
8
- export async function streamToJson(stream) {
9
- return await new Response(stream).json();
10
- }
11
- const errorHandler = async (response) => {
12
- if (!response.ok) {
13
- throw new ProsopoApiError('API.BAD_REQUEST', { context: { error: `HTTP error! status: ${response.status}` } });
14
- }
15
- if (response.body && !response.bodyUsed) {
16
- const data = await streamToJson(response.body);
17
- if (data.status === 'error') {
18
- throw new ProsopoApiError('API.BAD_REQUEST', {
19
- context: { error: `HTTP error! status: ${data.data.message} ` },
20
- });
21
- }
22
- return data;
23
- }
24
- return {};
25
- };
26
- const getLoginPhrase = async (url) => {
27
- const apiURL = new URL(`${url || 'https://api.runonflux.io/'}id/loginphrase`);
28
- log.info('Calling:', apiURL.href);
29
- const response = await fetch(apiURL.toString());
30
- return (await errorHandler(response)).data;
31
- };
32
- const getFluxAppsDetails = async (zelId, signature, loginPhrase) => {
33
- const apiUrl = `https://jetpackbridge.runonflux.io/api/v1/dapps.php?filter=&zelid=${zelId}&signature=${signature}&loginPhrase=${loginPhrase}`;
34
- const response = await fetch(apiUrl);
35
- return await errorHandler(response);
36
- };
37
- const getIndividualFluxAppDetails = async (dappName, zelId, signature, loginPhrase) => {
38
- const apiUrl = `https://jetpackbridge.runonflux.io/api/v1/dapps.php?dapp=${dappName}&zelid=${zelId}&signature=${signature}&loginPhrase=${loginPhrase}`;
39
- const response = await fetch(apiUrl);
40
- return await errorHandler(response);
41
- };
42
- const getFluxOSURLs = async (dappName, zelId, signature, loginPhrase) => {
43
- const data = await getIndividualFluxAppDetails(dappName, zelId, signature, loginPhrase);
44
- return Object.values(data.nodes).map((node) => node.fluxos);
45
- };
46
- const verifyLogin = async (zelid, signature, loginPhrase, url) => {
47
- const apiUrl = new URL(`${url || 'api.runonflux.io/'}id/verifylogin`).toString();
48
- const data = qs.stringify({
49
- zelid,
50
- signature,
51
- loginPhrase,
52
- });
53
- log.info('Data:', data);
54
- log.info('apiUrl:', apiUrl);
55
- const response = await fetch(apiUrl, {
56
- method: 'POST',
57
- body: data,
58
- headers: { 'Content-Type': `application/x-www-form-urlencoded` },
59
- });
60
- return await errorHandler(response);
61
- };
62
- const softRedeploy = async (zelid, signature, loginPhrase, url, appName) => {
63
- const apiUrl = new URL(`${url}apps/redeploy/${appName}/false/true`).toString();
64
- const Zelidauth = qs.stringify({
65
- zelid,
66
- signature,
67
- loginPhrase,
68
- });
69
- const response = await fetch(apiUrl, {
70
- method: 'GET',
71
- headers: {
72
- Zelidauth: Zelidauth,
73
- },
74
- });
75
- return await errorHandler(response);
76
- };
77
- const setupArgs = () => {
78
- const appName = process.argv.slice(2)[0];
79
- if (!appName) {
80
- throw new ProsopoError(Error('Please provide an app name'));
81
- }
82
- const secretWIFKey = process.env.PROSOPO_ZELCORE_PRIVATE_KEY;
83
- if (!secretWIFKey) {
84
- throw new ProsopoEnvError('DEVELOPER.MISSING_ENV_VARIABLE', {
85
- context: { missingEnvVars: ['PROSOPO_ZELCORE_PRIVATE_KEY'] },
86
- });
87
- }
88
- const zelId = process.env.PROSOPO_ZELCORE_PUBLIC_KEY;
89
- if (!zelId) {
90
- throw new ProsopoEnvError('DEVELOPER.MISSING_ENV_VARIABLE', {
91
- context: { missingEnvVars: ['PROSOPO_ZELCORE_PUBLIC_KEY'] },
92
- });
93
- }
94
- const secretKey = wifToPrivateKey(secretWIFKey);
95
- return { appName, secretKey, zelId };
96
- };
97
- const getNodeAPIURL = (nodeUIURL) => {
98
- const port = at(nodeUIURL.split(':'), 1);
99
- const portLogin = Number(port) + 1;
100
- const nodeAPIURL = new URL(`http://${nodeUIURL.replace(port, portLogin.toString())}`);
101
- log.info('Node API URL:', nodeAPIURL);
102
- return new URL(`http://${nodeUIURL.replace(port, portLogin.toString())}`);
103
- };
104
- const getNode = async (appName, zelId, secretKey) => {
105
- const loginPhrase = await getLoginPhrase();
106
- log.info('Login Phrase:', loginPhrase);
107
- const signature = base64Encode(await sign(loginPhrase, { secretKey }));
108
- log.info('Signature:', signature);
109
- const individualNodeIPs = await getFluxOSURLs(appName, zelId, signature, loginPhrase);
110
- log.info('Individual Node IPs:', individualNodeIPs);
111
- const node = individualNodeIPs[Math.floor(Math.random() * individualNodeIPs.length)];
112
- if (!node) {
113
- throw new ProsopoError('DEVELOPER.GENERAL', {
114
- context: { error: 'Failed to randomly select node', appName, zelId, individualNodeIPs },
115
- });
116
- }
117
- log.info('Node:', node);
118
- return node;
119
- };
120
- (async () => {
121
- try {
122
- loadEnv();
123
- const { appName, secretKey, zelId } = setupArgs();
124
- const nodeUIURL = await getNode(appName, zelId, secretKey);
125
- const nodeAPIURL = getNodeAPIURL(nodeUIURL);
126
- const nodeLoginPhrase = await getLoginPhrase(nodeAPIURL);
127
- log.info('Node Login Phrase:', nodeLoginPhrase);
128
- const nodeSignature = base64Encode(await sign(nodeLoginPhrase, { secretKey }));
129
- log.info('Node Signature:', nodeSignature);
130
- await verifyLogin(zelId, nodeSignature, nodeLoginPhrase, nodeAPIURL);
131
- const redeployResponse = await softRedeploy(zelId, nodeSignature, nodeLoginPhrase, nodeAPIURL, appName);
132
- log.info(redeployResponse);
133
- process.exit(0);
134
- }
135
- catch (error) {
136
- log.error('An error occurred:', error);
137
- process.exit(1);
138
- }
139
- })();
140
- //# sourceMappingURL=fluxDeploy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fluxDeploy.js","sourceRoot":"","sources":["../../src/scripts/fluxDeploy.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { Keypair } from '@polkadot/util-crypto/types';
2
- export declare function sign(message: string, { secretKey }: Partial<Keypair>): Promise<Uint8Array>;
3
- export declare function wifToPrivateKey(wif: string): Uint8Array;
4
- //# sourceMappingURL=sep256k1Sign.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sep256k1Sign.d.ts","sourceRoot":"","sources":["../../src/scripts/sep256k1Sign.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AA6BrD,wBAAsB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,uBAc1E;AAMD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAmBvD"}
@@ -1,75 +0,0 @@
1
- import { BN_BE_256_OPTS } from '@polkadot/util-crypto/bn';
2
- import { ProsopoEnvError } from '@prosopo/common';
3
- import { at } from '@prosopo/util';
4
- import { base58Decode, base64Encode, cryptoWaitReady, sha256AsU8a } from '@polkadot/util-crypto';
5
- import { bnToU8a, hexToU8a, u8aConcat, u8aToHex } from '@polkadot/util';
6
- import { isMain } from '@prosopo/util';
7
- import { loadEnv } from '@prosopo/cli';
8
- import { secp256k1 } from '@noble/curves/secp256k1';
9
- import varuint from 'varuint-bitcoin';
10
- loadEnv();
11
- const MESSAGE_MAGIC = '\u0018Bitcoin Signed Message:\n';
12
- function hash256(buffer) {
13
- return Buffer.from(sha256AsU8a(sha256AsU8a(buffer)));
14
- }
15
- function hasher(message, messagePrefix) {
16
- messagePrefix = messagePrefix || '\u0018Bitcoin Signed Message:\n';
17
- const messagePrefixBuffer = Buffer.from(messagePrefix, 'utf8');
18
- const messageBuffer = Buffer.from(message, 'utf8');
19
- const messageVISize = varuint.encodingLength(messageBuffer.length);
20
- const buffer = Buffer.allocUnsafe(messagePrefix.length + messageVISize + messageBuffer.length);
21
- messagePrefixBuffer.copy(buffer, 0);
22
- varuint.encode(messageBuffer.length, buffer, messagePrefixBuffer.length);
23
- messageBuffer.copy(buffer, messagePrefixBuffer.length + messageVISize);
24
- return hash256(buffer);
25
- }
26
- export async function sign(message, { secretKey }) {
27
- if (!secretKey)
28
- throw new ProsopoEnvError('DEVELOPER.MISSING_SECRET_KEY', {
29
- context: { error: 'No secret key provided', failedFuncName: sign.name },
30
- });
31
- await cryptoWaitReady();
32
- const data = hasher(message, MESSAGE_MAGIC);
33
- const signature = secp256k1.sign(data, secretKey);
34
- return u8aConcat(Buffer.alloc(1, signature.recovery + 4 + 27), bnToU8a(signature.r, BN_BE_256_OPTS), bnToU8a(signature.s, BN_BE_256_OPTS));
35
- }
36
- export function wifToPrivateKey(wif) {
37
- let substractLength;
38
- if (wif.length === 51) {
39
- substractLength = 8;
40
- }
41
- else if (wif.length === 52) {
42
- substractLength = 10;
43
- }
44
- else {
45
- throw new ProsopoEnvError('DEVELOPER.GENERAL', {
46
- context: { error: 'Invalid WIF', failedFuncName: wifToPrivateKey.name },
47
- });
48
- }
49
- const secretKeyHexLong = u8aToHex(base58Decode(wif));
50
- const secretKeyHex = `0x${secretKeyHexLong.substring(4, secretKeyHexLong.length - substractLength)}`;
51
- return hexToU8a(secretKeyHex);
52
- }
53
- if (isMain(import.meta.url)) {
54
- const secretKey = wifToPrivateKey(process.env.PROSOPO_ZELCORE_PRIVATE_KEY || '');
55
- const publicKey = base58Decode(process.env.PROSOPO_ZELCORE_PUBLIC_KEY || '');
56
- const keypair = { secretKey, publicKey };
57
- const message = at(process.argv.slice(2), 0).trim();
58
- if (message.length === 0) {
59
- console.error('No message provided');
60
- process.exit();
61
- }
62
- sign(message, keypair)
63
- .then((sig) => {
64
- const hexSig = u8aToHex(sig);
65
- console.log(`Hex Signature : ${hexSig}`);
66
- console.log(`Public Key: ${publicKey}`);
67
- console.log(`Base64 Signature: ${base64Encode(hexSig)}`);
68
- process.exit();
69
- })
70
- .catch((error) => {
71
- console.error(error);
72
- process.exit();
73
- });
74
- }
75
- //# sourceMappingURL=sep256k1Sign.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sep256k1Sign.js","sourceRoot":"","sources":["../../src/scripts/sep256k1Sign.ts"],"names":[],"mappings":"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"}