> **Can't find what you're looking for?** Use `search_docs` on the docs MCP server at `https://v3.viem.sh/api/mcp` to find what you need.

# MlDsa44.verify

:::info
`MlDsa44.verify` is a re-export of ox's [`MlDsa44.verify`](https://oxlib.sh/api/MlDsa44/verify). Refer to the ox documentation for the full reference.
:::

Verifies a payload was signed by the provided public key.

## Imports

```ts
import { MlDsa44 } from 'viem/utils'
```

## Examples

```ts twoslash
// @noErrors
import { MlDsa44 } from 'viem/utils'

const { privateKey, publicKey } = MlDsa44.createKeyPair()
const signature = MlDsa44.sign({
  payload: '0xdeadbeef',
  privateKey
})

const verified = MlDsa44.verify({
  // [!code focus]
  publicKey, // [!code focus]
  payload: '0xdeadbeef', // [!code focus]
  signature // [!code focus]
}) // [!code focus]
```

## Definition

```ts
function verify(
  options: verify.Options,
): boolean
```

## Parameters

### options

* **Type:** `verify.Options`

The verification options.

#### options.context

* **Type:** `0x${string} | Uint8Array`
* **Optional**

Context string for domain separation, at most 255 bytes.

#### options.payload

* **Type:** `0x${string} | Uint8Array`

Payload that was signed.

#### options.publicKey

* **Type:** `0x${string} | Uint8Array`

Public key that signed the payload.

#### options.signature

* **Type:** `0x${string} | Uint8Array`

Signature of the payload.

## Return Type

Whether the payload was signed by the provided public key.

`boolean`
