From b3f4686da196299c006851da1c4c844f649be8f4 Mon Sep 17 00:00:00 2001 From: Franck Royer Date: Fri, 20 May 2022 10:57:38 +1000 Subject: [PATCH] Use Uint8Array instead of hex string for hash --- src/lib/waku_message/version_1.ts | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/lib/waku_message/version_1.ts b/src/lib/waku_message/version_1.ts index 0b410db4e6..6903e2b935 100644 --- a/src/lib/waku_message/version_1.ts +++ b/src/lib/waku_message/version_1.ts @@ -1,8 +1,7 @@ import * as secp from "@noble/secp256k1"; -import { keccak256 } from "js-sha3"; import { concat } from "uint8arrays/concat"; -import { randomBytes } from "../crypto"; +import { keccak256, randomBytes } from "../crypto"; import { hexToBytes } from "../utils"; import * as ecies from "./ecies"; @@ -239,7 +238,7 @@ function getSignature(message: Uint8Array): Uint8Array { return message.slice(message.length - SignatureLength, message.length); } -function getHash(message: Uint8Array, isSigned: boolean): string { +function getHash(message: Uint8Array, isSigned: boolean): Uint8Array { if (isSigned) { return keccak256(message.slice(0, message.length - SignatureLength)); } @@ -247,7 +246,7 @@ function getHash(message: Uint8Array, isSigned: boolean): string { } function ecRecoverPubKey( - messageHash: string, + messageHash: Uint8Array, signature: Uint8Array ): Uint8Array | undefined { const recoveryDataView = new DataView(signature.slice(64).buffer); @@ -255,7 +254,7 @@ function ecRecoverPubKey( const _signature = secp.Signature.fromCompact(signature.slice(0, 64)); return secp.recoverPublicKey( - hexToBytes(messageHash), + messageHash, _signature, recovery, // eslint-disable-next-line @typescript-eslint/ban-ts-comment