반응형

tmux 를 처음 키게 되면 이 재미없는 하단 바를 볼 수 있다. 이 것을 우리는 커스텀을 할 것 이다.

1. Catpuccin 설치

https://tmuxcheatsheet.com/theming-and-customizing/

 

Theming and Customizing Tmux with Catppuccin and Additional Plugins

Are you tired of the plain, default look of Tmux? In this guide, we'll explore how to transform the appearance of Tmux using the beautiful Catppuccin theme (also known as Catppuccin flavor), along with essential plugins that will make your terminal more vi

tmuxcheatsheet.com

 

# Install the Catppuccin port for tmux
mkdir -p ~/.config/tmux/plugins/catppuccin
git clone -b v2.1.0 https://github.com/catppuccin/tmux.git ~/.config/tmux/plugins/catppuccin/tmux
echo "run ~/.config/tmux/plugins/catppuccin/tmux/catppuccin.tmux" >> ~/.tmux.conf

 

이렇게 설치하게되면 ~/.tmux.conf 는 다음과 같아진다.

run ~/.config/tmux/plugins/catppuccin/tmux/catppuccin.tmux

 

해당 tmux 파일을 실행하라 ~ 가 된다.

위의 링크를 더 읽어보면 ~/.tmux.conf 를 이렇게 작성하기를 추천한단다.

# Options to make tmux more pleasant
set -g mouse on
set -g default-terminal "tmux-256color"

# Configure the catppuccin plugin
set -g @catppuccin_flavor "mocha" # latte, frappe, macchiato, or mocha
set -g @catppuccin_window_status_style "rounded" # basic, rounded, slanted, custom, or none

# Load catppuccin
run ~/.config/tmux/plugins/catppuccin/tmux/catppuccin.tmux
# For TPM, instead use `run ~/.config/tmux/plugins/tmux/catppuccin.tmux`

# Make the status line pretty and add some modules
set -g status-right-length 100
set -g status-left-length 100
set -g status-left ""
set -g status-right "#{E:@catppuccin_status_application}"
set -agF status-right "#{E:@catppuccin_status_cpu}"
set -ag status-right "#{E:@catppuccin_status_session}"
set -ag status-right "#{E:@catppuccin_status_uptime}"
set -agF status-right "#{E:@catppuccin_status_battery}"

run ~/.config/tmux/plugins/tmux-plugins/tmux-cpu/cpu.tmux
run ~/.config/tmux/plugins/tmux-plugins/tmux-battery/battery.tmux

 

하지만 이렇게 했을 때 문제가 3가지 있다.

  1. 윈도우 이름이 호스트로 고정이 되어버린다.
  2. cpu 가 안나온다.
  3. battery 가 안나온다.

하나씩 고쳐보도록 하자.

2. 호스트 이름이 고정되지 않게 하자.

클로드 왈 catpuccin.tmux 를 실행하기 전에 다음과 같은 코드를 넣으라고 한다.

set -g @catppuccin_window_text " #W"
set -g @catppuccin_window_current_text " #W"

catpuccin.tmux 가 해당 이름을 덮어써서 그렇다고 한다. 아님말고~

3. TPM 을 설치한다.

현재 우리는 plugins 폴더에 tmux-plugins 가 없을 것이다. 만들고 tpm 을 설치한다.

mkdir ~/.config/tmux/plugins/tmux-plugins
git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tmux-plugins

이후에 다른 플러그인도 불러온다.

git clone https://github.com/tmux-plugins/tmux-battery ~/.config/tmux/plugins/tmux-plugins
git clone https://github.com/tmux-plugins/tmux-cpu ~/.config/tmux/plugins/tmux-plugins

4. 파일 저장 후 실행

# ~/.tmux.conf
# # # Options to make tmux more pleasant
set -g mouse on
set -g default-terminal "tmux-256color"

# # # Configure the catppuccin plugin
set -g @catppuccin_flavor "mocha" # latte, frappe, macchiato, or mocha
set -g @catppuccin_window_status_style "rounded" # basic, rounded, slanted, custom, or none

set -g @catppuccin_window_text " #W"
set -g @catppuccin_window_current_text " #W"

# # # Make the status line pretty and add some modules
set -g status-right-length 100
set -g status-left-length 100
set -g status-left ""
set -g status-right "#{E:@catppuccin_status_application}"
set -agF status-right "#{E:@catppuccin_status_cpu}"
set -ag status-right "#{E:@catppuccin_status_session}"
set -ag status-right "#{E:@catppuccin_status_uptime}"
set -agF status-right "#{E:@catppuccin_status_battery}"

set -g @plugin 'tmux-plugins/tpm'

run ~/.config/tmux/plugins/tmux-plugins/tmux-cpu/cpu.tmux
run ~/.config/tmux/plugins/tmux-plugins/tmux-battery/battery.tmux
run ~/.config/tmux/plugins/catppuccin/tmux/catppuccin.tmux

tmux source ~/.tmux.conf

 

실행하면 끝

 

반응형
반응형

최근 이더리움 코어 개발자들과 비탈릭 부테린이 제안한 EIP-8141은 스마트 계정(Smart Account)을 이더리움 프로토콜의 '1등 시민'으로 격상시키려는 시도이다. 기존 ERC-4337의 한계를 넘어 프로토콜 레벨에서 계정 추상화를 구현하는 이 제안의 핵심 내용을 정리한다.

🔗 관련 링크

 

EIPs/EIPS/eip-8141.md at master · ethereum/EIPs

The Ethereum Improvement Proposal repository. Contribute to ethereum/EIPs development by creating an account on GitHub.

github.com

 


1. 개요: 왜 Frame인가?

기존 트랜잭션은 단일 실행 구조를 가지나, EIP-8141은 '프레임(Frame)'이라는 단위를 도입하여 하나의 트랜잭션 내에서 검증, 실행, 가스 지불 로직을 독립적으로 분리한다. 이는 스마트 계정이 별도의 번들러(Bundler) 없이도 공식 메모리풀에 직접 트랜잭션을 제출할 수 있게 함을 의미한다.

2. ERC-4337과의 기술적 차이점

ERC-4337이 기존 이더리움을 수정하지 않고 앱 레이어에서 구현한 '우회로'였다면, EIP-8141은 이더리움 엔진 자체를 개조하는 '정공법'이다.

비교 항목 ERC-4337 EIP-8141
구현 계층 스마트 컨트랙트 (앱 레이어) 이더리움 프로토콜 (코어 레이어)
중개자 번들러 (Bundler) 필수 없음 (노드가 직접 처리)
핵심 로직 EntryPoint 컨트랙트 의존 네이티브 프레임 실행
가스 효율 중간 단계 오버헤드 발생 프로토콜 최적화로 비용 절감

3. 트랜잭션 및 프레임 상세 구조

EIP-8141은 새로운 트랜잭션 타입 0x06을 정의한다. 구조는 다음과 같다.

3.1 트랜잭션 구조 (RLP Serialization)

[
  chain_id, 
  nonce, 
  sender,               # 스마트 계정 주소
  frames,               # 프레임 배열 (최대 1000개)
  max_priority_fee, 
  max_fee, 
  max_blob_fee, 
  blob_hashes
]

3.2 프레임 내부 구조

frames 배열에 담기는 각 프레임은 아래 4개 필드로 구성된다.

  • mode: 프레임의 역할 (0: DEFAULT, 1: VERIFY, 2: SENDER)
  • target: 호출 대상 주소 (null일 경우 sender 호출)
  • gas_limit: 해당 프레임에 할당된 가스
  • data: 입력 데이터 (Calldata)

4. 핵심 메커니즘: 모드(Mode)와 APPROVE

EIP-8141의 핵심은 검증과 실행의 엄격한 분리다.

  1. VERIFY Mode (1): 트랜잭션의 유효성을 검사한다. 이 모드에서 실행되는 컨트랙트는 반드시 APPROVE Opcode를 호출해야 한다. 호출하지 않으면 트랜잭션 전체가 무효화된다.
    • APPROVE(0x01): 가스비 지불 승인 (Payer)
    • APPROVE(0x02): 실행 및 가스비 지불 승인 (Sender & Payer)
  2. SENDER Mode (2): 실제 비즈니스 로직을 수행한다. 이 프레임이 실행될 때 msg.sender는 트랜잭션의 sender 주소가 된다.

5. 미래 전망 및 시사점

EIP-8141은 Web3 사용자 경험에 혁신적인 변화를 가져올 것으로 예상된다.

  • 스폰서십의 네이티브화: 가스비를 대신 내주는 '스폰서' 프레임을 자유롭게 추가할 수 있어, 사용자는 ETH 없이도 토큰 전송이 가능하다.
  • 포스트 양자 암호화 대응: VERIFY 프레임 내의 검증 로직을 교체하는 것만으로 새로운 암호 알고리즘을 즉시 적용할 수 있다.
  • 인프라 변화: 번들러 중심의 AA 비즈니스 모델은 보안 모듈 및 정책 관리 솔루션(SaaS) 중심으로 재편될 것이다.

💡 마치며

EIP-8141은 이더리움이 단순한 네트워크를 넘어 사용자 친화적인 운영체제(OS)로 진화하기 위한 필수적인 단계이다. 프론트엔드 개발자로서 이러한 표준의 변화를 주시한다면, 향후 더욱 매끄러운 지갑 연동과 사용자 경험을 설계할 수 있을 것이다.

반응형

'BlockChain > Web3' 카테고리의 다른 글

[Blockchain] Glamsterdam  (1) 2026.02.22
[Blockchain] L1-zkEVM  (0) 2026.02.15
[Blockchain] A2A  (0) 2026.02.09
[Blockchain] ERC-8004  (0) 2026.01.30
[Blockchain] Zero-Knowledge Proof (ZK)  (0) 2026.01.25
반응형

2026년 예정된 이더리움의 ‘글램스터담(Glamsterdam)’ 업그레이드는 네트워크의 장기적 생존과 보안성 강화를 목적으로 가스(Gas) 가격 체계를 전면 재편한다. 본 개편의 핵심은 저평가된 연산 비용의 현실화, 공격 벡터 차단, 그리고 상태(State) 증가량의 체계적 관리로 요약된다.


주요 EIP별 기술적 변경 사항

1. 트랜잭션 비용 효율화 및 상태 제어 (EIP-2780)

  • 내용: 기본 트랜잭션 비용을 21,000에서 4,500가스로 인하. 일반 ETH 전송 비용은 약 6,000가스 수준으로 조정됨.
  • 제약 사항: 신규 계정 생성 시 25,000가스의 추가 비용 부과. 이는 저렴해진 전송 비용을 악용한 무분별한 상태 생성을 억제하기 위함임.
  • 영향: 일반 사용자 비용은 감소하나, 개발자는 트랜잭션 비용 하드코딩 유무를 확인해야 함.

2. 네트워크 보안 및 연산 가격 현실화 (EIP-7778, EIP-7904)

  • EIP-7778: 블록 가스 리밋 계산 시 환불 가스 제외. 가스 환불을 악용한 DoS(서비스 거부) 공격 가능성을 원천 차단하고 블록 빌딩의 보수성을 강화함.
  • EIP-7904: 벤치마크 기반 연산 비용 인상. KECCAK(30→45), DIV(5→15) 등 CPU 부하가 큰 산술 및 암호 연산의 가스 가격을 현실화함.

3. 블록 크기 관리 및 데이터 비용 조정 (EIP-7976, EIP-7981)

  • EIP-7976: 데이터 위주 트랜잭션의 콜데이터(Calldata) 비용을 바이트당 최대 64가스로 인상. 블록 크기 비대화에 따른 P2P 네트워크 부담을 경감함.
  • EIP-7981: 액세스 리스트(Access List)에도 콜데이터와 동일한 최소 비용(Floor Cost) 적용. 이를 통해 데이터 비용 인상을 우회하려는 시도를 차단함.

4. 상태(State) 관리 체계 혁신 (EIP-8037, EIP-8038)

  • EIP-8037 (다차원 가스 도입): 연간 상태 증가량을 100GB로 제한하기 위해 '일반 가스'와 '상태 가스'를 분리 측정함. 상태 생성(SSTORE 등) 비용은 가스 리밋과 연동되어 동적으로 결정됨. '저수지(Reservoir) 모델'을 통해 기존 트랜잭션 규격을 유지하면서도 내부적인 자원 할당을 최적화함.
  • EIP-8038: 상태 데이터 규모 확대에 따른 지연 시간(Latency)을 반영하여 SLOAD 등 상태 접근 연산 비용을 조정함.

결론 및 대응 방안

금번 업그레이드는 이더리움 L1의 자원 소비 기준을 물리적 리소스 투입량에 근거하여 재설정하는 과정이다.

  1. 애플리케이션 개발자: 다차원 가스 도입으로 인해 상태 생성 비용의 변동성이 증대될 것이므로, SSTORE 및 SLOAD 최적화 로직을 검토해야 함.
  2. L2 프로토콜: 콜데이터 비용 인상에 대비하여 블롭(Blob) 활용을 극대화해야 하며, 데이터 저장 비용 상승에 따른 수익성 모델 재검토가 필요함.
  3. 노드 운영자: 상태 증가량 제한을 통해 하드웨어 요구 사양의 급격한 상승은 억제될 것이나, 개편된 가스 산정 로직이 적용된 클라이언트 업데이트가 필수적임.
반응형

'BlockChain > Web3' 카테고리의 다른 글

[Blockchain] EIP-8141  (0) 2026.03.01
[Blockchain] L1-zkEVM  (0) 2026.02.15
[Blockchain] A2A  (0) 2026.02.09
[Blockchain] ERC-8004  (0) 2026.01.30
[Blockchain] Zero-Knowledge Proof (ZK)  (0) 2026.01.25
반응형

https://x.com/r2Jamong/status/2022177483932700876?s=20

 

X의 Rejamong.eth님(@r2Jamong)

2월 11일, 이더리움 역사에서 조용하지만 중요한 전환점이 있었습니다.

x.com

 

블록체인 셀럽 리자몽님의 기사를 보았다. 현재 zkVM 이 큰 화두로 올라오면서 L1-zkEVM 에 대한 얘기들이 들려온다. L1-zkEVM은 단순한 성능 향상을 넘어 이더리움 메인넷의 구조를 근본적으로 혁신하는 기술이다.


1. L1-zkEVM의 정의

L1-zkEVM은 현재 zkSync, Scroll 등 레이어 2(L2) 롤업들이 사용하는 영지식 증명 기술을 이더리움 메인넷 프로토콜 자체에 내장하는 것을 의미한다. 기존에는 각 L2가 각자의 방식으로 증명을 생성했다면, L1-zkEVM 환경에서는 이더리움 네트워크 자체가 모든 블록의 실행 결과에 대해 수학적 증명을 요구한다.

2. 기술적 필요성 및 동기

  • 검증의 비대칭성 극대화: 현재 이더리움은 전 세계 100만 개 이상의 밸리데이터 노드가 모든 트랜잭션을 일일이 재실행하며 검증한다. 이는 노드 사양의 상향을 초래해 탈중앙성을 저해한다. L1-zkEVM은 연산 결과에 대한 '수학적 보증서(Proof)'를 발행하여, 노드가 복잡한 계산 없이 증명의 유효성만 확인하게 한다. 이는 모바일 기기에서도 노드를 돌릴 수 있는 '무신뢰 초경량 노드(Statelessness)' 구현의 핵심이다.
  • L2 생태계의 표준화: 각 L2가 독자적인 증명 인프라를 유지하는 비용을 절감할 수 있다. 메인넷이 공식적인 zkEVM 기능을 제공하면 L2 간 상호운용성이 높아지고 전체 생태계의 보안 수준이 이더리움 본체 수준으로 상향 평준화된다.

3. 기술적 진보 현황 (2026년 기준)

최근 개최된 L1-zkEVM Breakout Call을 통해 확인된 주요 지표는 다음과 같다.

  • 16초 미만의 증명 속도: 블록 하나를 증명하는 데 걸리는 시간이 16초 미만으로 단축되었다. 이더리움 블록 타임(약 12초)에 근접하며 실시간 증명이 가능한 'Alpha Stage'에 진입했다.
  • 7개 전담 팀의 협업: Execution Witness 생성, 증명 인프라, 보안 검증 등 각 분야 전문 팀이 구성되어 연구 단계를 넘어 실제 엔지니어링 병목 현상을 해결 중이다.

4. 로드맵 및 미래 전망

L1-zkEVM은 이더리움의 다른 대규모 업그레이드와 연계되어 단계적으로 적용된다.

  1. 기반 구축 (2026년 하반기): PeerDAS와 ePBS를 통해 데이터 전송 효율을 높이고 블록 생성/검증을 분리하는 인프라를 먼저 구축한다.
  2. 완전 통합 (2027년 이후): 구축된 인프라 위에 메인넷 수준의 zkEVM이 적용된다. 이때부터 이더리움은 '재실행 기반 체인'에서 '증명 기반 체인'으로 완전히 탈바꿈한다.

5. 결론

L1-zkEVM 구현을 가능하게 하는 핵심 엔진은 zkVM 기술이다. 일반 프로그래밍 언어로 작성된 로직을 증명 가능한 형태로 변환해 주기 때문이다. 이는 이더리움이 탈중앙성을 유지하면서도 속도와 수수료 문제를 해결해 '글로벌 결제 레이어'로서의 지위를 확고히 하려는 최종 승부수라 할 수 있다.

반응형

'BlockChain > Web3' 카테고리의 다른 글

[Blockchain] EIP-8141  (0) 2026.03.01
[Blockchain] Glamsterdam  (1) 2026.02.22
[Blockchain] A2A  (0) 2026.02.09
[Blockchain] ERC-8004  (0) 2026.01.30
[Blockchain] Zero-Knowledge Proof (ZK)  (0) 2026.01.25

+ Recent posts