> For the complete documentation index, see [llms.txt](https://nft-standards.gitbook.io/nft-standards-wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://nft-standards.gitbook.io/nft-standards-wiki/nft-security/eip2612-signed-token-approvals.md).

# EIP2612 Signed token approvals

**This doc is a sum up of EIP 2612 and an overview of Permits**

### Intro

Approve the message to allow dApp to spend a token. This is a human-readable signature instead of normal signatures, which are just a bunch of binary data (readable by computers).

> 712 can be used without 2612\
> 712 defines a format for signatures\
> 2612 defines a smart contract interface

## Simple explanation

ELI5 explanation:\
Permits are permissions that send the approved TX to allow dApp to use/spend your tokens.\
Example: Uniswap asks you to use DAI in order to swap DAI for some other token.

## Functions

This ERC proposes an alternative solution that is designed to be as minimal as possible and to only address *one problem*: the lack of abstraction in the ERC-20 `approve` method.

While it may be tempting to introduce `*_by_signature` counterparts for every ERC-20 function, they are intentionally left out of this ERC-20 for two reasons:

* the desired specifics of such functions, such as decision regarding fees for `transfer_by_signature`, possible batching algorithms, varies depending on the use case, and,
* they can be implemented using a combination of `permit` and additional helper contracts without loss of generality.

Discussion regarding this standard: <https://github.com/ethereum/EIPs/issues/2613\\>
Full implementation: <https://eips.ethereum.org/EIPS/eip-2612>
