EIP-1153은 이더리움 개선 제안(EIP)으로, 이더리움의 트랜잭션 데이터 관리를 개선하여 스마트 계약 효율성을 향상시키고 가스 비용을 줄이는 기능을 도입합니다. 이 제안은 스마트 계약 실행 중 저장소 작업과 관련된 효율성을 개선하고 비용을 절감하는 것을 목표로 하는 임시 저장소 opcode의 개념을 도입합니다.[1][4]
이더리움 개선 제안(EIP) 1153은 이더리움 (ETH) 블록체인이 데이터를 처리하는 방식을 변경하도록 설정되었습니다. EIP-1153은 블록체인이 계정 간에 발생하는 트랜잭션에 대한 데이터를 쓰고 지우는 방식을 변경하도록 설계되었습니다. 스마트 계약은 트랜잭션이 끝나기 전에 저장소에 쓰고 지우는 대신 완전히 새로운 데이터 메커니즘인 "임시 저장소"를 활용할 수 있게 되었습니다. 이는 몇 가지 새로운 opcode가 추가되면서 활성화되었습니다.
임시 저장소는 데이터 관리를 위한 더 저렴하고 간소화된 도구입니다. 또한 이더리움 (ETH) 및 EVM 생태계 dApp에 대한 몇 가지 새로운 사용 사례를 가능하게 합니다. 예를 들어, Uniswap v4에서는 모든 유동성 풀이 하나의 스마트 계약에 보관됩니다. 이를 통해 다양한 풀 간의 유동성 물류가 더 빠르고 저렴해집니다. 시스템은 풀 간에 자산을 전송하는 대신 교차 자산 스왑으로 순 잔액만 변경합니다.[2]
EIP-1153을 구현하려면 하드 포크가 필요하며, EIP-1153은 기존 opcode의 동작을 변경하지 않으므로 기존의 모든 스마트 계약과 이전 버전과 호환됩니다.
EIP-1153은 2018년 6월에 처음 제안되었으며, 그 이후로 가스 가격 책정 및 환불 방식과 opcode 설계 방식이 진화하고 변경되었습니다. EIP-1153 기능에는 장단점이 있습니다. 한편으로는 올바르게 사용하면 가스 비용을 줄이는 데 도움이 될 수 있습니다. 다른 한편으로는 복잡성을 더하고 새로운 컨텍스트를 도입하며 추가 EVM 메커니즘을 만들어 공격 표면을 늘리고 감사 프로세스를 더 복잡하게 만들 수 있습니다.[1]
이더리움에서 저장소는 스마트 계약의 상태를 유지하는 데 중요한 역할을 합니다. 그러나 저장소에 액세스하고 수정하는 것은 리소스 집약적일 수 있으며 높은 가스 비용으로 이어질 수 있습니다. 임시 저장소는 트랜잭션 실행 컨텍스트 내에서 임시 저장 영역을 제공합니다. 영구 저장소와 달리 임시 저장소는 트랜잭션이 완료된 후 계약 상태에 유지되지 않습니다.[4]
Opcode는 "operation code"의 약자입니다. 이는 컴퓨터의 중앙 처리 장치 (CPU)가 수행할 명령이 포함된 숫자 코드입니다. opcode는 개별 바이트 또는 단어일 수도 있고 더 큰 명령 단어 내에 포함될 수도 있습니다. opcode는 이진수 또는 16진수일 수 있습니다. 예를 들어 opcode 0001은 두 숫자를 더하는 것을 의미할 수 있고 opcode 0010은 두 숫자를 빼는 것을 의미할 수 있습니다.[3]