Skip to content

Commit bdf8920

Browse files
Merge pull request #69 from LIT-Protocol/wyatt/wrapped-keys-eip-712
Add test for EIP-191 signing
2 parents 37ff35f + f5d59e0 commit bdf8920

File tree

3 files changed

+27
-5
lines changed

3 files changed

+27
-5
lines changed

wrapped-keys/eip-712/nodejs/src/index.ts

+6-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ const CAPACITY_CREDIT_TOKEN_ID =
2626
const LIT_NETWORK =
2727
(process.env.LIT_NETWORK as LitNetwork) || LitNetwork.DatilTest;
2828

29-
export const runExample = async (serializedEip712Message: string) => {
29+
export const runExample = async (
30+
messageToSign: string,
31+
useEip712Signing: boolean
32+
) => {
3033
let litNodeClient: LitNodeClient;
3134

3235
try {
@@ -102,8 +105,8 @@ export const runExample = async (serializedEip712Message: string) => {
102105
],
103106
ciphertext: wrappedKeyMetadata.ciphertext,
104107
dataToEncryptHash: wrappedKeyMetadata.dataToEncryptHash,
105-
messageToSign: serializedEip712Message,
106-
useEip712Signing: true,
108+
messageToSign,
109+
useEip712Signing,
107110
},
108111
});
109112
console.log("✅ Signed EIP-712 message");

wrapped-keys/eip-712/nodejs/src/wrappedKeyLitAction.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ async function signMessageEthereumKey({ privateKey, messageToSign }) {
4646
const wallet = new ethers.Wallet(privateKey);
4747
4848
let signature;
49-
if (useEip712Signing ?? false) {
49+
if (useEip712Signing) {
5050
const { domain, types, message } = JSON.parse(messageToSign);
5151
5252
signature = await wallet._signTypedData(domain, types, message);

wrapped-keys/eip-712/nodejs/test/index.spec.ts

+20-1
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,13 @@ describe("Signing an EIP-712 message using a Wrapped Key", () => {
4949
);
5050

5151
const { signedMessage, wrappedKeyEthAddress } = (await runExample(
52-
serializedEip712Message
52+
serializedEip712Message,
53+
true
5354
)) ?? { signedMessage: "", wrappedKeyEthAddress: "" };
5455
expect(signedMessage).to.not.equal("");
5556
expect(wrappedKeyEthAddress).to.not.equal("");
5657

58+
// Verify the signature using EIP-712
5759
const recoveredAddress = ethers.utils.verifyTypedData(
5860
domain,
5961
types,
@@ -63,3 +65,20 @@ describe("Signing an EIP-712 message using a Wrapped Key", () => {
6365
expect(recoveredAddress).to.equal(wrappedKeyEthAddress);
6466
}).timeout(120_000);
6567
});
68+
69+
describe("Signing a EIP-191 message using a Wrapped Key", () => {
70+
it("should return signed EIP-191 message", async () => {
71+
const message = "Hello, World!";
72+
73+
const { signedMessage, wrappedKeyEthAddress } = (await runExample(
74+
message,
75+
false
76+
)) ?? { signedMessage: "", wrappedKeyEthAddress: "" };
77+
expect(signedMessage).to.not.equal("");
78+
expect(wrappedKeyEthAddress).to.not.equal("");
79+
80+
// Verify the signature using EIP-191
81+
const recoveredAddress = ethers.utils.verifyMessage(message, signedMessage);
82+
expect(recoveredAddress).to.equal(wrappedKeyEthAddress);
83+
}).timeout(120_000);
84+
});

0 commit comments

Comments
 (0)