피드로 돌아가기
Dev.toInfrastructure
원문 읽기
ALT 도입을 통한 Solana 트랜잭션 1232바이트 제한 극복 설계
Day 20 of 100-Days-of-Solana: Solana transactions look complicated? Here's a breakdown.
AI 요약
Context
Solana 트랜잭션은 네트워크 효율성을 위해 1232바이트라는 엄격한 크기 제한을 적용함. 계정당 32바이트의 Public Key를 그대로 포함하는 Legacy 방식은 다수 계정 참조 시 크기 제한 초과로 인한 확장성 한계 발생.
Technical Solution
- Signatures와 Message라는 두 가지 핵심 요소로 트랜잭션 구조를 단순화한 설계
- Message 내 Header를 통한 Signer 및 Read-only 계정의 유효성 검증 프로세스 구축
- Recent Blockhash를 활용하여 150개 블록 이내의 최신성 검증 및 중복 처리 방지
- v0 버전의 Address Lookup Tables(ALTs) 도입을 통한 계정 참조 방식 혁신
- 32바이트 전체 주소 대신 1바이트 Index 참조 방식을 적용하여 데이터 페이로드 최적화
- ALT 내 주소의 Signer 기능 제한을 통한 보안성과 효율성의 Trade-off 적용
실천 포인트
1. 트랜잭션 페이로드 크기 제한 확인 및 Address Lookup Tables 적용 여부 검토
2. 150개 블록 기준의 Blockhash 만료 시간에 따른 재전송 로직 설계
3. Signer 계정과 Read-only 계정의 명확한 구분으로 Runtime 검증 비용 최적화