> For the complete documentation index, see [llms.txt](https://read.cryptograb.wiki/cryptograb-automatic-affiliate/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://read.cryptograb.wiki/cryptograb-automatic-affiliate/cryptograb-automatic-affiliate/nova-drainer-docs/readme/chto-takoe-apruvy-tokenov-token-approvals/chto-takoe-permit-signatures.md).

# Что такое Permit Signatures?

Из-за необходимости платить за газ многие приложения предпочитают запрашивать неограниченные разрешения (апрувы), что означает, что вам нужно заплатить за газ только один раз. Это может быть риском для безопасности, поскольку приложение сохраняет этот неограниченный доступ на неопределенный срок. В идеале вы должны выдавать только ограниченный апрув, который покрывает конкретное количество токенов, необходимое для определенной транзакции. Но тогда вам придется платить за газ за каждый апрув.

[EIP2612](https://eips.ethereum.org/EIPS/eip-2612) пытается решить эту проблему, позволяя подписывать сообщение об одобрении offchain. Таким образом, вам не нужно будет отправлять onchain-транзакцию и вы сможете предоставить ограниченный апрув без оплаты за газ.

### Как работают Permit Signatures?

EIP2612 является дополнением стандарта ERC20, что означает, что токены ERC20 могут реализовать эту дополнительную функциональность, но большинство токенов ее не поддерживают. Permit Signatures основаны на стандарте [EIP712](https://eips.ethereum.org/EIPS/eip-712), который определяет стандартизированный способ подписи структурированных данных. Данные, которые необходимо подписать для Permit signatures, содержат ту же информацию, что и при выдаче апрувов onchain: authorised spender address (ASA) и количество токенов.

![Permit Approve USDC on Etherscan](https://revoke.cash/assets/images/learn/approvals/what-are-eip2612-permit-signatures/permit.png)

Затем эти данные и соответствующую подпись можно передать в функцию токена `permit()`, которая проверяет подпись и "активирует" апрув onchain, после чего он становится таким же, как и обычный onchain апрув. Хотя этот вид подписи необходимо "активировать" onchain, onchain активация может быть совмещена с транзакцией, для которой вам нужен апрув, так что вам не нужно отправлять отдельную транзакцию.

### Преимущества Permit Signatures

Как уже говорилось выше, основная проблема, которую решают Permit Signatures, заключается в том, что вы можете выдавать апрувы без необходимости отправлять отдельную транзакцию по утверждению. Это дает два важных преимущества:

* Уменьшение проблем для пользователей, поскольку им не нужно платить за газ или ждать, пока транзакция будет добыта.
* Снижение риска безопасности, так как можно выдавать ограниченное количество апрувов, которые покрывают только необходимое количество токенов для конкретных транзакций.

### Недостатки Permit Signatures

Хотя Permit Signatures обладают рядом важных преимуществ, у них есть и недостатки. Один из них заключается в том, что они не поддерживаются большинством токенов, поэтому вы не можете рассчитывать на их доступность. Из-за ограниченной поддержки в токенах ERC20 они также не поддерживаются многими приложениями. Для того чтобы смарт-контракты поддерживали Permit Signatures, им необходимо специально реализовать эту поддержку, что создает дополнительные трудности для разработчиков.

![Permit Approve USDC MetaMask Popup](https://revoke.cash/assets/images/learn/approvals/what-are-eip2612-permit-signatures/permit-request.png)

Поскольку Permit Signatures - это offchain подписи, они также часто используются скамерами, чтобы обмануть пользователей и заставить их дать апрув. Многие кошельки, такие как MetaMask, теперь отображают предупреждение, когда вы подписываете onchain апрув, но для Permit Signatures такие предупреждения отсутствуют. Таким образом, может показаться, что вы просто подлючаете кошелёк на сайте, но на самом деле вы даете апрув.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://read.cryptograb.wiki/cryptograb-automatic-affiliate/cryptograb-automatic-affiliate/nova-drainer-docs/readme/chto-takoe-apruvy-tokenov-token-approvals/chto-takoe-permit-signatures.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
