# getDerivedPublicKey

Derives a public key from a predecessor ID and derivation path.

## Usage

```ts twoslash
// [!include ~/snippets/code/contract.ts]
// ---cut---
const publicKey = await evmChainSigContract.getDerivedPublicKey({
  path: 'my_derivation_path',
  predecessor: '0x8626f6940E2eb28930eFb4CeF49B2d1F2C9C1199',
  keyVersion: 1,
})
```

## Parameters

| Parameter          | Type     | Description                                          |
| ------------------ | -------- | ---------------------------------------------------- |
| `args`             | `object` | Arguments for deriving the public key                |
| `args.path`        | `string` | The derivation path to use                           |
| `args.predecessor` | `string` | The wallet/contract address requesting the signature |
| `args.keyVersion`  | `number` | The version of the MPC key to use                    |

## Returns

| Type                              | Description                                        |
| --------------------------------- | -------------------------------------------------- |
| `Promise<UncompressedPubKeySEC1>` | The derived public key in SEC1 uncompressed format |
