
import { curve } from '../variables'
import { CRYPTOGRAPHY_KEY_ALGORITHM } from '../constants/asymmetric-cryptography'

function verifyMessage (message: Buffer, signature: any, publicKey: string): boolean {

  if (publicKey.indexOf(CRYPTOGRAPHY_KEY_ALGORITHM) >= 0) {
    publicKey = publicKey.split(`${CRYPTOGRAPHY_KEY_ALGORITHM}:`)[1]
  }

  const keyPair = curve.keyFromPublic(publicKey, 'hex')
  return curve.verify(message, signature, keyPair)
}

export {
  verifyMessage
}