# AuthorizationTempo.hash

Computes the hash for an [`AuthorizationTempo.AuthorizationTempo`](/tempo/reference/AuthorizationTempo/types#authorizationtempo) in [EIP-7702 format](https://eips.ethereum.org/EIPS/eip-7702): `keccak256('0x05' || rlp([chain_id, address, nonce]))`.

## Imports

:::code-group
```ts [Named]
import { AuthorizationTempo } from 'ox/tempo'
```

```ts [Entrypoint]
import * as AuthorizationTempo from 'ox/tempo/AuthorizationTempo'
```
:::

## Examples

```ts twoslash
import { AuthorizationTempo } from 'ox/tempo'

const authorization = AuthorizationTempo.from({
  address: '0x1234567890abcdef1234567890abcdef12345678',
  chainId: 1,
  nonce: 69n
})

const hash = AuthorizationTempo.hash(authorization) // [!code focus]
```

## Definition

```ts
function hash(
  authorization: AuthorizationTempo.AuthorizationTempo,
  options?: hash.Options,
): Hex.Hex
```

**Source:** [src/tempo/AuthorizationTempo.ts](https://github.com/wevm/ox/blob/main/src/tempo/AuthorizationTempo.ts#L954)

## Parameters

### authorization

* **Type:** `AuthorizationTempo.AuthorizationTempo`

The [`AuthorizationTempo.AuthorizationTempo`](/tempo/reference/AuthorizationTempo/types#authorizationtempo).

#### authorization.address

* **Type:** `abitype_Address`

Address of the contract to set as code for the Authority.

#### authorization.chainId

* **Type:** `numberType`

Chain ID to authorize.

#### authorization.nonce

* **Type:** `bigintType`

Nonce of the Authority to authorize.

#### authorization.signature

* **Type:** `SignatureEnvelope`
* **Optional**

### options

* **Type:** `hash.Options`
* **Optional**

#### options.presign

* **Type:** `boolean`
* **Optional**

Whether to hash this authorization for signing.

## Return Type

The hash.

`Hex.Hex`
