
기존의 Permit(ERC-2612)은 혁신적이었으나, 치명적인 약점이 있었다. 바로 ‘토큰 자체가 Permit 기능을 지원하도록 설계되어야 한다’는 점이다. 이 문제를 해결하기 위해 등장한 것이 바로 Permit2이다.
1. Permit2의 핵심 개념: “통합 위임 창구”
기존 방식이 각 은행(토큰)마다 다른 양식의 위임장을 써야 했다면, Permit2는 모든 은행의 업무를 하나로 처리하는 ‘통합 민원 센터’와 같다.
작동 원리
- 최초 1회 승인: 사용자는 자신의 토큰에 대해 Permit2 스마트 컨트랙트에 단 한 번만 ‘무제한 승인’을 해둔다.
- 오프체인 서명: 이후부터는 어떤 서비스를 이용하든, 사용자는 가스비 없는 서명만 수행한다.
- 권한 대행: Permit2 컨트랙트가 사용자의 서명을 검증한 뒤, 미리 받은 권한을 바탕으로 토큰을 필요한 곳에 전달한다.
2. 왜 Permit2인가? (주요 차이점)
| 구분 | Permit (ERC-2612) | Permit2 (Uniswap) |
| 적용 범위 | 특정 토큰(지원하는 경우만) | 모든 ERC-20 토큰 |
| 가스비 절감 | 서명 시 0원 | 최초 1회 승인 후 계속 0원 |
| 보안성 | 개별 토큰마다 관리 | 만료 시간(Expiration) 설정 가능 |
| 편의성 | 토큰별 대응 필요 | 한 번의 승인으로 모든 토큰 대응 |
3. Permit2가 가져오는 혁신: “만료되는 권한”
전통적인 Approve의 가장 큰 공포는 한 번 승인하면 영원히 권한이 남는다는 것이었다. 하지만 Permit2는 서명 내에 유효기간을 포함한다.
- 예: “이 서명은 향후 15분 동안만 유효함”덕분에 사용자는 보안 리스크를 획기적으로 낮추면서도 극강의 편의성을 누릴 수 있다.