> ## Documentation Index
> Fetch the complete documentation index at: https://voltaire.tevm.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# primitives/Siwe

> Auto-generated API documentation

[**@tevm/voltaire**](../index.mdx)

***

[@tevm/voltaire](../index.mdx) / primitives/Siwe

# primitives/Siwe

## Classes

### InvalidFieldError

Defined in: [src/primitives/Siwe/errors.js:59](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L59)

SIWE message field has invalid value

#### Throws

#### Extends

* [`InvalidFormatError`](../index/index.mdx#invalidformaterror)

#### Constructors

##### Constructor

> **new InvalidFieldError**(`field`, `reason`, `options?`): [`InvalidFieldError`](#invalidfielderror)

Defined in: [src/primitives/Siwe/errors.js:67](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L67)

###### Parameters

###### field

`string`

Name of the invalid field

###### reason

`string`

Why the field is invalid

###### options?

###### cause?

`Error`

###### value?

`unknown`

###### Returns

[`InvalidFieldError`](#invalidfielderror)

###### Overrides

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`constructor`](../index/index.mdx#constructor-7)

#### Properties

##### cause?

> `optional` **cause**: `Error`

Defined in: [src/primitives/errors/AbstractError.ts:56](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L56)

Root cause of this error (for error chaining)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`cause`](../index/index.mdx#cause-7)

##### code

> **code**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L39)

Machine-readable error code for programmatic handling

###### Example

```ts theme={null}
'INVALID_FORMAT', 'INVALID_LENGTH'
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`code`](../index/index.mdx#code-7)

##### context?

> `optional` **context**: `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:45](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L45)

Additional context metadata for debugging

###### Example

```ts theme={null}
{ value: '0x123', expected: '20 bytes' }
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`context`](../index/index.mdx#context-7)

##### docsPath?

> `optional` **docsPath**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:51](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L51)

Path to documentation for this error

###### Example

```ts theme={null}
'/primitives/address/from-hex#error-handling'
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`docsPath`](../index/index.mdx#docspath-7)

##### expected

> **expected**: `string`

Defined in: [src/primitives/errors/ValidationError.ts:19](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L19)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`expected`](../index/index.mdx#expected-3)

##### name

> **name**: `string`

Defined in: [src/primitives/Siwe/errors.js:75](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L75)

###### Inherited from

`InvalidFormatError.name`

##### value

> **value**: `unknown`

Defined in: [src/primitives/errors/ValidationError.ts:18](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L18)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`value`](../index/index.mdx#value-3)

#### Methods

##### getErrorChain()

> **getErrorChain**(): `string`

Defined in: [src/primitives/errors/AbstractError.ts:94](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L94)

Get full error chain as string for logging

###### Returns

`string`

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`getErrorChain`](../index/index.mdx#geterrorchain-14)

##### toJSON()

> **toJSON**(): `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:110](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L110)

Serialize error to JSON for logging/telemetry

###### Returns

`Record`\<`string`, `unknown`>

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`toJSON`](../index/index.mdx#tojson-14)

***

### InvalidNonceLengthError

Defined in: [src/primitives/Siwe/errors.js:84](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L84)

SIWE nonce length is invalid

#### Throws

#### Extends

* [`InvalidLengthError`](../index/index.mdx#invalidlengtherror)

#### Constructors

##### Constructor

> **new InvalidNonceLengthError**(`length`, `options?`): [`InvalidNonceLengthError`](#invalidnoncelengtherror)

Defined in: [src/primitives/Siwe/errors.js:90](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L90)

###### Parameters

###### length

`number`

Requested nonce length

###### options?

###### cause?

`Error`

###### Returns

[`InvalidNonceLengthError`](#invalidnoncelengtherror)

###### Overrides

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`constructor`](../index/index.mdx#constructor-8)

#### Properties

##### cause?

> `optional` **cause**: `Error`

Defined in: [src/primitives/errors/AbstractError.ts:56](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L56)

Root cause of this error (for error chaining)

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`cause`](../index/index.mdx#cause-8)

##### code

> **code**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L39)

Machine-readable error code for programmatic handling

###### Example

```ts theme={null}
'INVALID_FORMAT', 'INVALID_LENGTH'
```

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`code`](../index/index.mdx#code-8)

##### context?

> `optional` **context**: `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:45](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L45)

Additional context metadata for debugging

###### Example

```ts theme={null}
{ value: '0x123', expected: '20 bytes' }
```

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`context`](../index/index.mdx#context-8)

##### docsPath?

> `optional` **docsPath**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:51](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L51)

Path to documentation for this error

###### Example

```ts theme={null}
'/primitives/address/from-hex#error-handling'
```

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`docsPath`](../index/index.mdx#docspath-8)

##### expected

> **expected**: `string`

Defined in: [src/primitives/errors/ValidationError.ts:19](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L19)

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`expected`](../index/index.mdx#expected-4)

##### name

> **name**: `string`

Defined in: [src/primitives/Siwe/errors.js:98](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L98)

###### Inherited from

`InvalidLengthError.name`

##### value

> **value**: `unknown`

Defined in: [src/primitives/errors/ValidationError.ts:18](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L18)

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`value`](../index/index.mdx#value-4)

#### Methods

##### getErrorChain()

> **getErrorChain**(): `string`

Defined in: [src/primitives/errors/AbstractError.ts:94](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L94)

Get full error chain as string for logging

###### Returns

`string`

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`getErrorChain`](../index/index.mdx#geterrorchain-16)

##### toJSON()

> **toJSON**(): `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:110](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L110)

Serialize error to JSON for logging/telemetry

###### Returns

`Record`\<`string`, `unknown`>

###### Inherited from

[`InvalidLengthError`](../index/index.mdx#invalidlengtherror).[`toJSON`](../index/index.mdx#tojson-16)

***

### InvalidSiweMessageError

Defined in: [src/primitives/Siwe/errors.js:12](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L12)

SIWE message format is invalid

#### Throws

#### Extends

* [`InvalidFormatError`](../index/index.mdx#invalidformaterror)

#### Constructors

##### Constructor

> **new InvalidSiweMessageError**(`message`, `options?`): [`InvalidSiweMessageError`](#invalidsiwemessageerror)

Defined in: [src/primitives/Siwe/errors.js:19](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L19)

###### Parameters

###### message

`string`

Description of the format issue

###### options?

###### cause?

`Error`

###### value?

`unknown`

###### Returns

[`InvalidSiweMessageError`](#invalidsiwemessageerror)

###### Overrides

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`constructor`](../index/index.mdx#constructor-7)

#### Properties

##### cause?

> `optional` **cause**: `Error`

Defined in: [src/primitives/errors/AbstractError.ts:56](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L56)

Root cause of this error (for error chaining)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`cause`](../index/index.mdx#cause-7)

##### code

> **code**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L39)

Machine-readable error code for programmatic handling

###### Example

```ts theme={null}
'INVALID_FORMAT', 'INVALID_LENGTH'
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`code`](../index/index.mdx#code-7)

##### context?

> `optional` **context**: `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:45](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L45)

Additional context metadata for debugging

###### Example

```ts theme={null}
{ value: '0x123', expected: '20 bytes' }
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`context`](../index/index.mdx#context-7)

##### docsPath?

> `optional` **docsPath**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:51](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L51)

Path to documentation for this error

###### Example

```ts theme={null}
'/primitives/address/from-hex#error-handling'
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`docsPath`](../index/index.mdx#docspath-7)

##### expected

> **expected**: `string`

Defined in: [src/primitives/errors/ValidationError.ts:19](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L19)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`expected`](../index/index.mdx#expected-3)

##### name

> **name**: `string`

Defined in: [src/primitives/Siwe/errors.js:27](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L27)

###### Inherited from

`InvalidFormatError.name`

##### value

> **value**: `unknown`

Defined in: [src/primitives/errors/ValidationError.ts:18](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L18)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`value`](../index/index.mdx#value-3)

#### Methods

##### getErrorChain()

> **getErrorChain**(): `string`

Defined in: [src/primitives/errors/AbstractError.ts:94](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L94)

Get full error chain as string for logging

###### Returns

`string`

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`getErrorChain`](../index/index.mdx#geterrorchain-14)

##### toJSON()

> **toJSON**(): `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:110](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L110)

Serialize error to JSON for logging/telemetry

###### Returns

`Record`\<`string`, `unknown`>

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`toJSON`](../index/index.mdx#tojson-14)

***

### MissingFieldError

Defined in: [src/primitives/Siwe/errors.js:36](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L36)

SIWE message missing required field

#### Throws

#### Extends

* [`InvalidFormatError`](../index/index.mdx#invalidformaterror)

#### Constructors

##### Constructor

> **new MissingFieldError**(`field`, `options?`): [`MissingFieldError`](#missingfielderror)

Defined in: [src/primitives/Siwe/errors.js:42](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L42)

###### Parameters

###### field

`string`

Name of the missing field

###### options?

###### cause?

`Error`

###### Returns

[`MissingFieldError`](#missingfielderror)

###### Overrides

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`constructor`](../index/index.mdx#constructor-7)

#### Properties

##### cause?

> `optional` **cause**: `Error`

Defined in: [src/primitives/errors/AbstractError.ts:56](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L56)

Root cause of this error (for error chaining)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`cause`](../index/index.mdx#cause-7)

##### code

> **code**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L39)

Machine-readable error code for programmatic handling

###### Example

```ts theme={null}
'INVALID_FORMAT', 'INVALID_LENGTH'
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`code`](../index/index.mdx#code-7)

##### context?

> `optional` **context**: `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:45](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L45)

Additional context metadata for debugging

###### Example

```ts theme={null}
{ value: '0x123', expected: '20 bytes' }
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`context`](../index/index.mdx#context-7)

##### docsPath?

> `optional` **docsPath**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:51](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L51)

Path to documentation for this error

###### Example

```ts theme={null}
'/primitives/address/from-hex#error-handling'
```

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`docsPath`](../index/index.mdx#docspath-7)

##### expected

> **expected**: `string`

Defined in: [src/primitives/errors/ValidationError.ts:19](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L19)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`expected`](../index/index.mdx#expected-3)

##### name

> **name**: `string`

Defined in: [src/primitives/Siwe/errors.js:50](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L50)

###### Inherited from

`InvalidFormatError.name`

##### value

> **value**: `unknown`

Defined in: [src/primitives/errors/ValidationError.ts:18](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/ValidationError.ts#L18)

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`value`](../index/index.mdx#value-3)

#### Methods

##### getErrorChain()

> **getErrorChain**(): `string`

Defined in: [src/primitives/errors/AbstractError.ts:94](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L94)

Get full error chain as string for logging

###### Returns

`string`

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`getErrorChain`](../index/index.mdx#geterrorchain-14)

##### toJSON()

> **toJSON**(): `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:110](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L110)

Serialize error to JSON for logging/telemetry

###### Returns

`Record`\<`string`, `unknown`>

###### Inherited from

[`InvalidFormatError`](../index/index.mdx#invalidformaterror).[`toJSON`](../index/index.mdx#tojson-14)

***

### SiweParseError

Defined in: [src/primitives/Siwe/errors.js:107](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L107)

SIWE message parsing failed

#### Throws

#### Extends

* [`DecodingError`](../index/index.mdx#decodingerror)

#### Constructors

##### Constructor

> **new SiweParseError**(`message`, `options?`): [`SiweParseError`](#siweparseerror)

Defined in: [src/primitives/Siwe/errors.js:114](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L114)

###### Parameters

###### message

`string`

Description of the parse error

###### options?

###### cause?

`Error`

###### value?

`unknown`

###### Returns

[`SiweParseError`](#siweparseerror)

###### Overrides

[`DecodingError`](../index/index.mdx#decodingerror).[`constructor`](../index/index.mdx#constructor-2)

#### Properties

##### cause?

> `optional` **cause**: `Error`

Defined in: [src/primitives/errors/AbstractError.ts:56](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L56)

Root cause of this error (for error chaining)

###### Inherited from

[`DecodingError`](../index/index.mdx#decodingerror).[`cause`](../index/index.mdx#cause-2)

##### code

> **code**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L39)

Machine-readable error code for programmatic handling

###### Example

```ts theme={null}
'INVALID_FORMAT', 'INVALID_LENGTH'
```

###### Inherited from

[`DecodingError`](../index/index.mdx#decodingerror).[`code`](../index/index.mdx#code-2)

##### context?

> `optional` **context**: `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:45](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L45)

Additional context metadata for debugging

###### Example

```ts theme={null}
{ value: '0x123', expected: '20 bytes' }
```

###### Inherited from

[`DecodingError`](../index/index.mdx#decodingerror).[`context`](../index/index.mdx#context-2)

##### docsPath?

> `optional` **docsPath**: `string`

Defined in: [src/primitives/errors/AbstractError.ts:51](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L51)

Path to documentation for this error

###### Example

```ts theme={null}
'/primitives/address/from-hex#error-handling'
```

###### Inherited from

[`DecodingError`](../index/index.mdx#decodingerror).[`docsPath`](../index/index.mdx#docspath-2)

##### name

> **name**: `string`

Defined in: [src/primitives/Siwe/errors.js:121](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/errors.js#L121)

###### Inherited from

`DecodingError.name`

#### Methods

##### getErrorChain()

> **getErrorChain**(): `string`

Defined in: [src/primitives/errors/AbstractError.ts:94](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L94)

Get full error chain as string for logging

###### Returns

`string`

###### Inherited from

[`DecodingError`](../index/index.mdx#decodingerror).[`getErrorChain`](../index/index.mdx#geterrorchain-4)

##### toJSON()

> **toJSON**(): `Record`\<`string`, `unknown`>

Defined in: [src/primitives/errors/AbstractError.ts:110](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/errors/AbstractError.ts#L110)

Serialize error to JSON for logging/telemetry

###### Returns

`Record`\<`string`, `unknown`>

###### Inherited from

[`DecodingError`](../index/index.mdx#decodingerror).[`toJSON`](../index/index.mdx#tojson-4)

## Type Aliases

### ~~BrandedMessage~~

> **BrandedMessage**\<`TDomain`, `TAddress`, `TUri`, `TVersion`, `TChainId`> = [`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `TVersion`, `TChainId`>

Defined in: [src/primitives/Siwe/SiweMessageType.ts:74](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L74)

Branded SIWE Message type (for backwards compatibility)

#### Type Parameters

##### TDomain

`TDomain` *extends* `string` = `string`

##### TAddress

`TAddress` *extends* [`AddressType`](Address.mdx#addresstype) = [`AddressType`](Address.mdx#addresstype)

##### TUri

`TUri` *extends* `string` = `string`

##### TVersion

`TVersion` *extends* `string` = `string`

##### TChainId

`TChainId` *extends* `number` = `number`

#### Deprecated

Use SiweMessageType instead

***

### Signature

> **Signature** = `Uint8Array`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:46](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L46)

Signature type for SIWE verification
65 bytes: r (32) + s (32) + v (1)

***

### SiweMessageType

> **SiweMessageType**\<`TDomain`, `TAddress`, `TUri`, `TVersion`, `TChainId`> = `object`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:9](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L9)

Sign-In with Ethereum Message (EIP-4361)

A structured message format for authentication using Ethereum accounts.
Supports domains, URIs, nonces, timestamps, and optional resources.

#### Type Parameters

##### TDomain

`TDomain` *extends* `string` = `string`

##### TAddress

`TAddress` *extends* [`AddressType`](Address.mdx#addresstype) = [`AddressType`](Address.mdx#addresstype)

##### TUri

`TUri` *extends* `string` = `string`

##### TVersion

`TVersion` *extends* `string` = `string`

##### TChainId

`TChainId` *extends* `number` = `number`

#### Properties

##### address

> **address**: `TAddress`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:19](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L19)

Ethereum address performing the signing

##### chainId

> **chainId**: `TChainId`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:27](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L27)

EIP-155 Chain ID to which the session is bound

##### domain

> **domain**: `TDomain`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:17](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L17)

RFC 4501 dns authority that is requesting the signing

##### expirationTime?

> `optional` **expirationTime**: `string`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:33](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L33)

ISO 8601 datetime string after which the message is no longer valid (optional)

##### issuedAt

> **issuedAt**: `string`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:31](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L31)

ISO 8601 datetime string of the current time

##### nonce

> **nonce**: `string`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:29](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L29)

Randomized token to prevent replay attacks, at least 8 alphanumeric characters

##### notBefore?

> `optional` **notBefore**: `string`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:35](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L35)

ISO 8601 datetime string before which the message is invalid (optional)

##### requestId?

> `optional` **requestId**: `string`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:37](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L37)

System-specific identifier that may be used to uniquely refer to the sign-in request (optional)

##### resources?

> `optional` **resources**: `string`\[]

Defined in: [src/primitives/Siwe/SiweMessageType.ts:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L39)

List of information or references to information the user wishes to have resolved (optional)

##### statement?

> `optional` **statement**: `string`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:21](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L21)

Human-readable ASCII assertion that the user will sign (optional)

##### uri

> **uri**: `TUri`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:23](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L23)

RFC 3986 URI referring to the resource that is the subject of the signing

##### version

> **version**: `TVersion`

Defined in: [src/primitives/Siwe/SiweMessageType.ts:25](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L25)

Current version of the message (must be "1")

***

### ValidationError

> **ValidationError** = \{ `message`: `string`; `type`: `"invalid_domain"`; } | \{ `message`: `string`; `type`: `"invalid_address"`; } | \{ `message`: `string`; `type`: `"invalid_uri"`; } | \{ `message`: `string`; `type`: `"invalid_version"`; } | \{ `message`: `string`; `type`: `"invalid_chain_id"`; } | \{ `message`: `string`; `type`: `"invalid_nonce"`; } | \{ `message`: `string`; `type`: `"invalid_timestamp"`; } | \{ `message`: `string`; `type`: `"expired"`; } | \{ `message`: `string`; `type`: `"not_yet_valid"`; } | \{ `message`: `string`; `type`: `"signature_mismatch"`; }

Defined in: [src/primitives/Siwe/SiweMessageType.ts:58](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L58)

Validation error types

***

### ValidationResult

> **ValidationResult** = \{ `valid`: `true`; } | \{ `error`: [`ValidationError`](#validationerror); `valid`: `false`; }

Defined in: [src/primitives/Siwe/SiweMessageType.ts:51](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/SiweMessageType.ts#L51)

Validation result with detailed error information

## Variables

### \_getMessageHash

> `const` **\_getMessageHash**: `GetMessageHashFn`

Defined in: [src/primitives/Siwe/index.ts:78](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L78)

***

### \_verify

> `const` **\_verify**: `VerifyFn`

Defined in: [src/primitives/Siwe/index.ts:79](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L79)

***

### \_verifyMessage

> `const` **\_verifyMessage**: `VerifyMessageFn`

Defined in: [src/primitives/Siwe/index.ts:84](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L84)

***

### BrandedSiwe

> `const` **BrandedSiwe**: `object`

Defined in: [src/primitives/Siwe/index.ts:156](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L156)

#### Type Declaration

##### create()

> **create**: \<`TDomain`, `TAddress`, `TUri`, `TChainId`>(`params`) => [`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

###### Type Parameters

###### TDomain

`TDomain` *extends* `string` = `string`

###### TAddress

`TAddress` *extends* [`AddressType`](Address.mdx#addresstype) = [`AddressType`](Address.mdx#addresstype)

###### TUri

`TUri` *extends* `string` = `string`

###### TChainId

`TChainId` *extends* `number` = `number`

###### Parameters

###### params

`CreateParams`\<`TDomain`, `TAddress`, `TUri`, `TChainId`>

###### Returns

[`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

##### format()

> **format**: (`message`) => `string`

###### Parameters

###### message

[`SiweMessageType`](#siwemessagetype)

###### Returns

`string`

##### generateNonce()

> **generateNonce**: (`length?`) => `string`

###### Parameters

###### length?

`number`

###### Returns

`string`

##### getMessageHash

> **getMessageHash**: `GetMessageHashFn`

##### parse()

> **parse**: (`text`) => [`SiweMessageType`](#siwemessagetype)

###### Parameters

###### text

`string`

###### Returns

[`SiweMessageType`](#siwemessagetype)

##### validate()

> **validate**: (`message`, `options?`) => [`ValidationResult`](#validationresult)

###### Parameters

###### message

[`SiweMessageType`](#siwemessagetype)

###### options?

###### now?

`Date`

###### Returns

[`ValidationResult`](#validationresult)

##### verify

> **verify**: `VerifyFn`

##### verifyMessage

> **verifyMessage**: `VerifyMessageFn`

***

### GetMessageHash()

> `const` **GetMessageHash**: (`deps`) => `GetMessageHashFn`

Defined in: [src/primitives/Siwe/index.ts:46](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L46)

#### Parameters

##### deps

###### keccak256

(`data`) => `Uint8Array`

#### Returns

`GetMessageHashFn`

***

### Verify()

> `const` **Verify**: (`deps`) => `VerifyFn`

Defined in: [src/primitives/Siwe/index.ts:50](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L50)

#### Parameters

##### deps

###### addressFromPublicKey

(`x`, `y`) => [`AddressType`](Address.mdx#addresstype)

###### keccak256

(`data`) => `Uint8Array`

###### secp256k1RecoverPublicKey

(`signature`, `hash`) => [`Secp256k1PublicKeyType`](../crypto/Secp256k1.mdx#secp256k1publickeytype)

#### Returns

`VerifyFn`

***

### VerifyMessage()

> `const` **VerifyMessage**: (`deps`) => `VerifyMessageFn`

Defined in: [src/primitives/Siwe/index.ts:59](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L59)

#### Parameters

##### deps

###### addressFromPublicKey

(`x`, `y`) => [`AddressType`](Address.mdx#addresstype)

###### keccak256

(`data`) => `Uint8Array`

###### secp256k1RecoverPublicKey

(`signature`, `hash`) => [`Secp256k1PublicKeyType`](../crypto/Secp256k1.mdx#secp256k1publickeytype)

#### Returns

`VerifyMessageFn`

## Functions

### \_create()

> **\_create**\<`TDomain`, `TAddress`, `TUri`, `TChainId`>(`params`): [`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

Defined in: [src/primitives/Siwe/create.js:40](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/create.js#L40)

Create a new SIWE message with default values

#### Type Parameters

##### TDomain

`TDomain` *extends* `string`

##### TAddress

`TAddress` *extends* [`AddressType`](Address.mdx#addresstype)

##### TUri

`TUri` *extends* `string`

##### TChainId

`TChainId` *extends* `number`

#### Parameters

##### params

Message parameters (domain, address, uri, chainId are required)

###### address

`TAddress`

Ethereum address performing the signing

###### chainId

`TChainId`

EIP-155 Chain ID

###### domain

`TDomain`

RFC 4501 dns authority requesting the signing

###### expirationTime?

`string`

ISO 8601 datetime string for expiration

###### issuedAt?

`string`

Custom issued at (current time if not provided)

###### nonce?

`string`

Custom nonce (auto-generated if not provided)

###### notBefore?

`string`

ISO 8601 datetime string for not before

###### requestId?

`string`

System-specific identifier

###### resources?

`string`\[]

List of resources

###### statement?

`string`

Human-readable ASCII assertion

###### uri

`TUri`

RFC 3986 URI referring to the subject of signing

#### Returns

[`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

New SIWE message with defaults

#### See

[https://voltaire.tevm.sh/primitives/siwe](https://voltaire.tevm.sh/primitives/siwe) for SIWE documentation

#### Since

0.0.0

#### Throws

#### Example

```javascript theme={null}
import * as Siwe from './primitives/Siwe/index.js';
import * as Address from './primitives/Address/index.js';
const message = Siwe.create({
  domain: "example.com",
  address: Address.fromHex("0x..."),
  uri: "https://example.com",
  chainId: 1,
});
// Automatically generates nonce, issuedAt, and sets version to "1"
```

***

### \_format()

> **\_format**(`message`): `string`

Defined in: [src/primitives/Siwe/format.js:26](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/format.js#L26)

Format a SIWE message into a string for signing (EIP-4361)

#### Parameters

##### message

[`SiweMessageType`](#siwemessagetype)\<`string`, [`AddressType`](Address.mdx#addresstype), `string`, `string`, `number`>

Message to format

#### Returns

`string`

Formatted string according to EIP-4361 specification

#### See

[https://voltaire.tevm.sh/primitives/siwe](https://voltaire.tevm.sh/primitives/siwe) for SIWE documentation

#### Since

0.0.0

#### Throws

#### Example

```javascript theme={null}
import * as Siwe from './primitives/Siwe/index.js';
import * as Address from './primitives/Address/index.js';
const message = {
  domain: "example.com",
  address: Address.fromHex("0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"),
  uri: "https://example.com",
  version: "1",
  chainId: 1,
  nonce: "32891756",
  issuedAt: "2021-09-30T16:25:24Z",
};

const text = Siwe.format(message);
```

***

### \_generateNonce()

> **\_generateNonce**(`length?`): `string`

Defined in: [src/primitives/Siwe/generateNonce.js:22](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/generateNonce.js#L22)

Generate a cryptographically secure random nonce for SIWE messages

#### Parameters

##### length?

`number` = `11`

Length of nonce (minimum 8)

#### Returns

`string`

Random alphanumeric nonce string

#### See

[https://voltaire.tevm.sh/primitives/siwe](https://voltaire.tevm.sh/primitives/siwe) for SIWE documentation

#### Since

0.0.0

#### Throws

if length is less than 8

#### Example

```javascript theme={null}
import * as Siwe from './primitives/Siwe/index.js';
const nonce = Siwe.generateNonce();
// Returns something like "a7b9c2d4e6f"

const longNonce = Siwe.generateNonce(16);
// Returns something like "a7b9c2d4e6f8g0h1"
```

***

### \_parse()

> **\_parse**(`text`): [`SiweMessageType`](#siwemessagetype)\<`string`, [`AddressType`](Address.mdx#addresstype), `string`, `string`, `number`>

Defined in: [src/primitives/Siwe/parse.js:39](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/parse.js#L39)

Parse a SIWE message from a formatted string

#### Parameters

##### text

`string`

Formatted SIWE message string

#### Returns

[`SiweMessageType`](#siwemessagetype)\<`string`, [`AddressType`](Address.mdx#addresstype), `string`, `string`, `number`>

Parsed Message object

#### See

[https://voltaire.tevm.sh/primitives/siwe](https://voltaire.tevm.sh/primitives/siwe) for SIWE documentation

#### Since

0.0.0

#### Throws

if message format is invalid

#### Throws

if required field is missing

#### Throws

if field value is invalid

#### Throws

if parsing fails

#### Example

```javascript theme={null}
import * as Siwe from './primitives/Siwe/index.js';
const text = `example.com wants you to sign in with your Ethereum account:
0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2

Sign in to Example

URI: https://example.com
Version: 1
Chain ID: 1
Nonce: 32891756
Issued At: 2021-09-30T16:25:24Z`;

const message = Siwe.parse(text);
```

***

### \_validate()

> **\_validate**(`message`, `options?`): [`ValidationResult`](#validationresult)

Defined in: [src/primitives/Siwe/validate.js:20](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/validate.js#L20)

Validate a SIWE message structure and timestamps

#### Parameters

##### message

[`SiweMessageType`](#siwemessagetype)\<`string`, [`AddressType`](Address.mdx#addresstype), `string`, `string`, `number`>

Message to validate

##### options?

Validation options

###### now?

`Date`

Current time for timestamp checks (defaults to now)

#### Returns

[`ValidationResult`](#validationresult)

Validation result with error details if invalid

#### See

[https://voltaire.tevm.sh/primitives/siwe](https://voltaire.tevm.sh/primitives/siwe) for SIWE documentation

#### Since

0.0.0

#### Throws

#### Example

```javascript theme={null}
import * as Siwe from './primitives/Siwe/index.js';
const result = Siwe.validate(message);
if (!result.valid) {
  console.error(result.error.message);
}
```

***

### create()

> **create**\<`TDomain`, `TAddress`, `TUri`, `TChainId`>(`params`): [`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

Defined in: [src/primitives/Siwe/index.ts:110](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L110)

#### Type Parameters

##### TDomain

`TDomain` *extends* `string` = `string`

##### TAddress

`TAddress` *extends* [`AddressType`](Address.mdx#addresstype) = [`AddressType`](Address.mdx#addresstype)

##### TUri

`TUri` *extends* `string` = `string`

##### TChainId

`TChainId` *extends* `number` = `number`

#### Parameters

##### params

`CreateParams`\<`TDomain`, `TAddress`, `TUri`, `TChainId`>

#### Returns

[`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

***

### format()

> **format**(`message`): `string`

Defined in: [src/primitives/Siwe/index.ts:121](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L121)

#### Parameters

##### message

[`SiweMessageType`](#siwemessagetype)

#### Returns

`string`

***

### generateNonce()

> **generateNonce**(`length?`): `string`

Defined in: [src/primitives/Siwe/index.ts:125](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L125)

#### Parameters

##### length?

`number`

#### Returns

`string`

***

### parse()

> **parse**(`text`): [`SiweMessageType`](#siwemessagetype)

Defined in: [src/primitives/Siwe/index.ts:129](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L129)

#### Parameters

##### text

`string`

#### Returns

[`SiweMessageType`](#siwemessagetype)

***

### Siwe()

> **Siwe**\<`TDomain`, `TAddress`, `TUri`, `TChainId`>(`params`): [`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

Defined in: [src/primitives/Siwe/index.ts:170](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L170)

Factory function for creating SIWE Message instances

#### Type Parameters

##### TDomain

`TDomain` *extends* `string` = `string`

##### TAddress

`TAddress` *extends* [`AddressType`](Address.mdx#addresstype) = [`AddressType`](Address.mdx#addresstype)

##### TUri

`TUri` *extends* `string` = `string`

##### TChainId

`TChainId` *extends* `number` = `number`

#### Parameters

##### params

`CreateParams`\<`TDomain`, `TAddress`, `TUri`, `TChainId`>

#### Returns

[`SiweMessageType`](#siwemessagetype)\<`TDomain`, `TAddress`, `TUri`, `"1"`, `TChainId`>

***

### validate()

> **validate**(`message`, `options?`): [`ValidationResult`](#validationresult)

Defined in: [src/primitives/Siwe/index.ts:133](https://github.com/evmts/voltaire/blob/bd6ec34405c15ad8cd51d11579d495dc53813482/src/primitives/Siwe/index.ts#L133)

#### Parameters

##### message

[`SiweMessageType`](#siwemessagetype)

##### options?

###### now?

`Date`

#### Returns

[`ValidationResult`](#validationresult)

## References

### getMessageHash

Renames and re-exports [\_getMessageHash](#_getmessagehash)

***

### verify

Renames and re-exports [\_verify](#_verify)

***

### verifyMessage

Renames and re-exports [\_verifyMessage](#_verifymessage)
