> For the complete documentation index, see [llms.txt](https://docs.volary.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.volary.io/sdks-guide/blockchain-sdks/wallet-sdk/isprivatekey/sol.md).

# sol

## Description

The `isPrivateKey` function is an asynchronous function used to validate whether a given string is a valid private key for Solana.&#x20;

It utilizes the Solana JavaScript SDK and the bs58 library to decode the private key and create a Keypair instance. It then checks if the derived public key is a valid Solana address.

## Parameters

| Parameter    | Data Type | Description                      |
| ------------ | --------- | -------------------------------- |
| `privateKey` | string    | The private key to be validated. |

## Response

| Field          | Data Type | Description                                                       |
| -------------- | --------- | ----------------------------------------------------------------- |
| `return value` | boolean   | Indicates whether the private key is valid (true) or not (false). |

## Example Request and Response

### Prerequisites

Before making requests with Volary SDK, you must have it installed.

You can install Volary SDK using either **`npm`** or **`yarn`**. Use the following commands to install Volary SDK:

```sh
npm install @nest25/wallet-lib
OR
yarn add @nest25/wallet-lib
```

### Request

Here is an example of how to make a `isPrivateKey`request using the Volary SDK:

```javascript
const { Wallet } = require('@nest25/wallet-lib');

const wallet = new Wallet('');

async function main() {
    const response = await wallet.isPrivateKey(
        'sol',
        'your-private-key',
      );
      console.log("response --> ", response);
}

main();

```

### Response

{% code overflow="wrap" %}

```sh
  response --> true
```

{% endcode %}

## Use Cases

* **Validating a private key:** By invoking this function with a private key, you can check if the provided private key is valid for Solana.
* **Checking address validity:** The function uses the derived public key (encoded as a base58 string) to determine the validity of the private key.
* **Handling errors:** If any error occurs during the decoding of the private key or address validation, the function will catch the error and return `false`, indicating that the private key is not valid.

###
