@welshman/signer 0.0.1 → 0.0.3
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/build/src/index.cjs +22 -0
- package/build/src/index.cjs.map +1 -0
- package/build/src/index.d.ts +4 -4
- package/build/src/index.mjs +4 -4
- package/build/src/nip59.cjs +76 -0
- package/build/src/nip59.cjs.map +1 -0
- package/build/src/nip59.d.ts +26 -0
- package/build/src/nip59.mjs +66 -0
- package/build/src/nip59.mjs.map +1 -0
- package/build/src/signers/nip01.cjs +24 -0
- package/build/src/signers/nip01.cjs.map +1 -0
- package/build/src/signers/{secret.d.ts → nip01.d.ts} +6 -5
- package/build/src/signers/{secret.mjs → nip01.mjs} +6 -5
- package/build/src/signers/nip01.mjs.map +1 -0
- package/build/src/signers/nip07.cjs +50 -0
- package/build/src/signers/nip07.cjs.map +1 -0
- package/build/src/signers/{extension.d.ts → nip07.d.ts} +6 -6
- package/build/src/signers/nip07.mjs +45 -0
- package/build/src/signers/nip07.mjs.map +1 -0
- package/build/src/signers/nip46.cjs +157 -0
- package/build/src/signers/nip46.cjs.map +1 -0
- package/build/src/signers/nip46.d.ts +48 -0
- package/build/src/signers/nip46.mjs +152 -0
- package/build/src/signers/nip46.mjs.map +1 -0
- package/build/src/util.cjs +42 -0
- package/build/src/util.cjs.map +1 -0
- package/build/src/util.d.ts +20 -8
- package/build/src/util.mjs +4 -3
- package/build/src/util.mjs.map +1 -1
- package/package.json +5 -4
- package/build/src/signers/connect.d.ts +0 -47
- package/build/src/signers/connect.mjs +0 -152
- package/build/src/signers/connect.mjs.map +0 -1
- package/build/src/signers/extension.mjs +0 -48
- package/build/src/signers/extension.mjs.map +0 -1
- package/build/src/signers/secret.mjs.map +0 -1
- package/build/src/wrapper.d.ts +0 -21
- package/build/src/wrapper.mjs +0 -56
- package/build/src/wrapper.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"secret.mjs","sourceRoot":"","sources":["../../../src/signers/secret.ts"],"names":[],"mappings":"OACO,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAU;AAE1D,MAAM,OAAO,YAAY;IAGvB,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAIlC,cAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;QAEtB,cAAS,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAA;QAEnC,SAAI,GAAG,KAAK,EAAE,KAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAEvF,UAAK,GAAG;YACN,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;YAC7C,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;SAC9C,CAAA;QAED,UAAK,GAAG;YACN,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;YAC7C,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;SAC9C,CAAA;QArBC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtC,CAAC;CAqBF"}
|
package/build/src/wrapper.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { UnwrappedEvent, SignedEvent, HashedEvent, EventTemplate } from '@welshman/util';
|
|
2
|
-
import { ISigner } from './util';
|
|
3
|
-
export type WrapperParams = {
|
|
4
|
-
author?: string;
|
|
5
|
-
wrap?: {
|
|
6
|
-
author: string;
|
|
7
|
-
recipient: string;
|
|
8
|
-
tags?: string[][];
|
|
9
|
-
};
|
|
10
|
-
};
|
|
11
|
-
export declare class Wrapper {
|
|
12
|
-
readonly userSigner: ISigner;
|
|
13
|
-
readonly wrapSigner: ISigner;
|
|
14
|
-
seen: Map<string, UnwrappedEvent | Error>;
|
|
15
|
-
constructor(userSigner: ISigner, wrapSigner: ISigner);
|
|
16
|
-
now: (drift?: number) => number;
|
|
17
|
-
getSeal: (pk: string, rumor: HashedEvent) => Promise<SignedEvent>;
|
|
18
|
-
getWrap: (pk: string, seal: SignedEvent) => Promise<SignedEvent>;
|
|
19
|
-
wrap: (pk: string, template: EventTemplate) => Promise<SignedEvent>;
|
|
20
|
-
unwrap: (wrap: SignedEvent) => Promise<any>;
|
|
21
|
-
}
|
package/build/src/wrapper.mjs
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { WRAP, SEAL } from '@welshman/util';
|
|
2
|
-
import { own, hash, decrypt } from "./util.mjs";
|
|
3
|
-
export class Wrapper {
|
|
4
|
-
constructor(userSigner, wrapSigner) {
|
|
5
|
-
this.userSigner = userSigner;
|
|
6
|
-
this.wrapSigner = wrapSigner;
|
|
7
|
-
this.seen = new Map();
|
|
8
|
-
this.now = (drift = 0) => Math.round(Date.now() / 1000 - Math.random() * Math.pow(10, drift));
|
|
9
|
-
this.getSeal = async (pk, rumor) => this.userSigner.sign(hash({
|
|
10
|
-
kind: SEAL,
|
|
11
|
-
pubkey: await this.userSigner.getPubkey(),
|
|
12
|
-
content: await this.userSigner.nip44.encrypt(pk, JSON.stringify(rumor)),
|
|
13
|
-
created_at: this.now(5),
|
|
14
|
-
tags: [],
|
|
15
|
-
}));
|
|
16
|
-
this.getWrap = async (pk, seal) => this.wrapSigner.sign(hash({
|
|
17
|
-
kind: WRAP,
|
|
18
|
-
pubkey: await this.wrapSigner.getPubkey(),
|
|
19
|
-
content: await this.wrapSigner.nip44.encrypt(pk, JSON.stringify(seal)),
|
|
20
|
-
created_at: this.now(5),
|
|
21
|
-
tags: [["p", pk]],
|
|
22
|
-
}));
|
|
23
|
-
this.wrap = async (pk, template) => {
|
|
24
|
-
const pubkey = await this.userSigner.getPubkey();
|
|
25
|
-
const rumor = hash(own(pubkey, template));
|
|
26
|
-
const seal = await this.getSeal(pk, rumor);
|
|
27
|
-
const wrap = await this.getWrap(pk, seal);
|
|
28
|
-
return wrap;
|
|
29
|
-
};
|
|
30
|
-
this.unwrap = async (wrap) => {
|
|
31
|
-
// Avoid decrypting the same event multiple times
|
|
32
|
-
if (this.seen.has(wrap.id)) {
|
|
33
|
-
const rumorOrError = this.seen.get(wrap.id);
|
|
34
|
-
if (rumorOrError instanceof Error) {
|
|
35
|
-
throw rumorOrError;
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
return rumorOrError;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
try {
|
|
42
|
-
const seal = JSON.parse(await decrypt(this.wrapSigner, wrap.pubkey, wrap.content));
|
|
43
|
-
const rumor = JSON.parse(await decrypt(this.wrapSigner, seal.pubkey, seal.content));
|
|
44
|
-
if (seal.pubkey !== rumor.pubkey)
|
|
45
|
-
throw new Error("Seal pubkey does not match rumor pubkey");
|
|
46
|
-
this.seen.set(wrap.id, rumor);
|
|
47
|
-
return rumor;
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
this.seen.set(wrap.id, error);
|
|
51
|
-
throw error;
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=wrapper.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wrapper.mjs","sourceRoot":"","sources":["../../src/wrapper.ts"],"names":[],"mappings":"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"}
|