chore: update "generateSignalPubKey" function

This commit is contained in:
Adhiraj Singh
2022-04-18 08:23:32 +05:30
parent 5200bf6477
commit 2720879545
2 changed files with 7 additions and 11 deletions

View File

@@ -1,6 +1,7 @@
import { createCipheriv, createDecipheriv, createHash, createHmac, randomBytes } from 'crypto'
import * as curveJs from 'curve25519-js'
import HKDF from 'futoin-hkdf'
import { KEY_BUNDLE_TYPE } from '../Defaults'
import { KeyPair } from '../Types'
export const Curve = {
@@ -22,12 +23,14 @@ export const Curve = {
return curveJs.verify(pubKey, message, signature)
}
}
/** prefix version byte to the pub keys, required for some curve crypto functions */
export const generateSignalPubKey = (pubKey: Uint8Array | Buffer) => (
Buffer.concat([ KEY_BUNDLE_TYPE, pubKey ])
)
export const signedKeyPair = (keyPair: KeyPair, keyId: number) => {
const signKeys = Curve.generateKeyPair()
const pubKey = new Uint8Array(33)
pubKey.set([5], 0)
pubKey.set(signKeys.public, 1)
const pubKey = generateSignalPubKey(keyPair.public)
const signature = Curve.sign(keyPair.private, pubKey)