본문 바로가기 - [Mastering Zcash 번역 노트 02] 기원: Zcash는 어디에서 시작됐나 Zcash 디지털 현금의 기원을 데이비드 차움과 사이퍼펑크에서 출발해 비트코인의 한계, Zerocoin과 Zerocash의 설계, Zcash 제네시스 블록까지 추적한다.
- [Mastering Zcash 번역 노트 01] 왜 Zcash는 프라이버시를 선택했나 Zcash Mastering Zcash 서론을 바탕으로 비트코인의 공개 장부가 지닌 추적 가능성과 Zcash가 차폐 거래와 영지식 증명으로 프라이버시를 구현하는 이유를 설명한다.
- EIP-7702 Set Code For EOAs Ethereum EOA가 다른 주소의 코드를 위임받는 EIP-7702의 등장 배경과 새 트랜잭션 타입, 승인 목록, 논스 처리를 설명하고 스마트 계정 전환의 의미를 짚는다.
- Transient Storage 이해하기 Ethereum EVM의 영구 스토리지와 트랜지언트 스토리지의 비용과 수명 차이를 설명하고, 재진입 방지 구현의 가스 절감 효과와 사용 시 보안 위험을 짚는다.
- EIP-7212 알아보기: secp256r1 곡선을 지원하기 위한 프리컴파일과 ZKsync에서의 구현 ZKsync secp256r1 서명 검증 프리컴파일의 필요성과 계정 추상화 활용을 설명하고, ZKsync의 P256Verify 구현과 테스트 방법을 다룬다.
- [ZKsync] Privy와 ZKsync Sepolia 네트워크 연동하기 ZKsync Privy 소셜 로그인을 Next.js 앱에 구성하고 ZKsync Sepolia와 연결해, 테스트넷 NFT 민팅부터 Vercel 배포까지 구현한다.
- ERC-4337: 계정 추상화 - 간단 정리 Ethereum 계정 추상화의 필요성과 기존 이더리움 계정의 한계를 설명하고, ERC-4337의 주요 구성 요소와 처리 흐름, 장단점을 한데 묶어 설명한다.
- ERC-4337: 계정 추상화 - 테스트를 통한 Aggregator의 동작 이해 Ethereum BLS 서명의 쌍선형성과 서명 집계 원리를 짚고, BLSAccount와 Factory, Aggregator가 UserOperation을 검증하는 흐름을 테스트한다.
- ERC-4337: 계정 추상화 - 테스트를 통한 Paymaster와 LegacyTokenPaymaster의 동작 이해 Ethereum BasePaymaster를 상속한 화이트리스트형 수수료 대납과 LegacyTokenPaymaster의 토큰 결제 방식을 구현하고 Foundry 테스트로 검증한다.
- ERC-4337: 계정 추상화 - 테스트를 통한 Account Factory의 동작 이해 Ethereum SimpleAccountFactory가 create2와 salt로 스마트 계정 주소를 미리 계산하고, 직접 호출과 EntryPoint 경유로 계정을 생성하는 과정을 테스트한다.
- ERC-4337: 계정 추상화 - 테스트 수정 사항 Ethereum ERC-4337 테스트에서 발견한 UserOperation 가스 필드 패킹 순서와 한도 문제를 수정하고, vm.etch로 반복 배포를 줄인 과정을 기록한다.
- ERC-4337: 계정 추상화 - 테스트를 통한 Account와 EntryPoint의 동작 이해 Ethereum Foundry 테스트로 SimpleAccount의 작업 실행, 서명 검증, 가스비 예치와 인출, UUPS 업그레이드 및 EntryPoint 처리 흐름을 확인한다.
- ERC-4337: 계정 추상화 Ethereum ERC-4337이 합의 계층 변경 없이 계정 추상화를 구현하는 방식을 명세 중심으로 설명하고, UserOperation과 EntryPoint, Paymaster의 역할을 구분한다.
- The Graph를 사용해 온체인 이벤트 인덱싱하기 Foundry로 배포한 NFT 컨트랙트의 이벤트를 서브그래프로 정의하고, The Graph에 배포해 GraphQL로 조회하는 과정을 다룬다.
- 소셜 로그인 + 계정 추상화를 사용한 dApp 만들기 Ethereum Privy 소셜 로그인과 Biconomy 스마트 계정을 연결해 가스비 없는 ERC-20 에어드롭 앱을 만들고 UserOperation 처리 과정을 설명한다.
- Astar zkEVM & Yoki Origins 체험기 #3 Crypto Diary 요키 오리진스의 캡슐 뽑기와 개봉, 융합 과정을 직접 체험하고 보상 구조와 운영 방식, UI에서 좋았던 점과 아쉬운 점을 기록한다.
- Astar zkEVM & Yoki Origins 체험기 #2 Crypto Diary 출시 캠페인의 요키 수집 방식을 소개하고, 지갑에 네트워크를 등록한 뒤 OMA 토큰 획득과 골든 캡슐 개봉까지 체험한 과정을 기록한다.
- Astar zkEVM & Yoki Origins 체험기 #1 Crypto Diary Astar의 롤업 네트워크와 출시 캠페인을 선택한 배경부터 메인넷 이더 구매와 브리징까지 직접 진행하며 익힌 내용을 기록한다.
- 컨트랙트 ABI Ethereum 스마트 컨트랙트의 정적·동적 타입이 ABI 형식으로 배치되는 규칙을 예제로 설명한다. 함수 선택자를 포함한 호출 데이터 구성과 디코딩 방법도 다룬다.
- RLP (Recursive Length Prefix) 직렬화 이해하기 Ethereum 이더리움에서 사용하는 RLP 직렬화의 단일 바이트, 문자열, 중첩 리스트 인코딩 규칙과 길이별 접두사 계산 방식을 예제로 설명한다.
- 밑바닥부터 시작하는 비트코인 - 외전2 비트코인 백서 의식의 흐름대로 읽기 Bitcoin 비트코인 백서의 서론부터 거래, 타임스탬프 서버, 작업증명, 네트워크, 인센티브와 간소화된 결제 검증까지 핵심 논리를 따라 읽는다.
- 밑바닥부터 시작하는 비트코인 - 외전1 네트워크 요청 및 응답 개선 Bitcoin Go로 비트코인 피어 메시지를 안정적으로 읽도록 버퍼링과 응답 검증을 개선하고, 블록 헤더와 관심 트랜잭션 수신 문제를 해결한 과정을 다룬다.
- 밑바닥부터 시작하는 비트코인 - 13장 세그윗 2 Bitcoin p2wsh와 p2sh-p2wsh 스크립트의 실행 순서를 구현하고, BIP143 서명해시와 세그윗의 추가 개선 사항을 기존 코드에 반영한다.
- 밑바닥부터 시작하는 비트코인 - 13장 세그윗 1 Bitcoin 트랜잭션 가변성과 확장성 문제를 중심으로 세그윗 도입 배경을 설명하고, p2wpkh와 p2sh-p2wpkh 스크립트 실행 방식을 다룬다.
- 밑바닥부터 시작하는 비트코인 - 12장 블룸 필터 Bitcoin 라이트 노드의 관심 주소 노출을 줄이는 BIP37 블룸 필터를 구현하고, 테스트넷에서 머클블록과 관심 트랜잭션을 받는 과정을 다룬다.
- 밑바닥부터 시작하는 비트코인 - 11장 단순 지급 검증 Bitcoin 머클 부모부터 머클루트까지 트리를 구성하는 방법을 Go로 구현하고, 머클블록을 이용한 비트코인 단순 지급 검증의 원리를 설명한다.
- 밑바닥부터 시작하는 비트코인 - 10장 네트워킹 Bitcoin 비트코인 네트워크 메시지의 헤더와 페이로드 형식을 구현하고, 원격 노드와 핸드셰이크한 뒤 블록 헤더를 요청하고 검증하는 과정을 다룬다.
- 밑바닥부터 시작하는 비트코인 - 9장 블록 Bitcoin 코인베이스 트랜잭션의 구조와 블록 보상 방식을 Go로 구현한다. 블록 헤더를 이루는 버전, 이전 블록 해시, 머클 루트, 타임스탬프와 비트값을 해석한다.
- 밑바닥부터 시작하는 비트코인 - 8장 p2sh 스크립트 Bitcoin 다중서명 구조와 검증 연산의 동작 및 한계를 바탕으로 P2SH가 필요한 이유를 설명한다. 여러 스크립트 유형의 주소 생성과 서명 검증 로직도 Go로 구현한다.
- 밑바닥부터 시작하는 비트코인 - 중간정리 Bitcoin 유한체와 타원곡선부터 직렬화, 트랜잭션, 스크립트, 서명 검증과 생성까지 앞선 일곱 장의 핵심 개념과 Go 구현 흐름을 중간 점검한다.
- 밑바닥부터 시작하는 비트코인 - 7장 트랜잭션 검증과 생성 Bitcoin 비트코인 트랜잭션의 입력 금액과 서명을 검증하는 로직을 Go로 구현한다. 출력과 수수료를 설계해 테스트넷 트랜잭션을 생성하고 전파하는 과정까지 이어간다.
- 밑바닥부터 시작하는 비트코인 - 6장 스크립트 Bitcoin 비트코인 스크립트의 실행 구조와 주요 연산자를 Go로 구현한다. 스크립트 파싱과 직렬화, 잠금·해제 스크립트 결합, 표준 스크립트와 P2PK까지 다룬다.
- 밑바닥부터 시작하는 비트코인 - 5장 트랜잭션 Bitcoin 비트코인 트랜잭션의 버전, 입력, 출력, 록타임 구조와 수수료·UTXO의 관계를 설명하고 직렬화와 파싱 예제를 Go 코드로 구현한다.
- 분산 데이터베이스와 분산 원장 분산 데이터베이스의 투명성과 클러스터링·레플리케이션·샤딩 방식을 설명하고, 퍼블릭 블록체인 및 분산 원장과의 차이를 구분한다.
- 밑바닥부터 시작하는 비트코인 - 4장 직렬화 Bitcoin 비트코인 데이터의 빅엔디언과 리틀엔디언 표현부터 공개키의 SEC 형식, DER 서명, 주소와 WIF의 Base58 부호화까지 Go로 구현한다.
- 밑바닥부터 시작하는 비트코인 - 3장 타원곡선 암호 Bitcoin 유한체 위 타원곡선의 스칼라 곱셈과 군의 성질을 설명하고, 비트코인 서명에 쓰이는 secp256k1 연산을 Go 타입과 메서드로 구현한다.
- 밑바닥부터 시작하는 비트코인 - 2장 타원곡선 Bitcoin 2장에서는 비트코인에 쓰이는 타원곡선의 정의와 점 덧셈 성질, 무한원점을 설명하고 Python 예제를 Go 구조체와 메서드로 구현한다.
- 밑바닥부터 시작하는 비트코인 - 1장 유한체 Bitcoin 비트코인 암호학의 기초인 유한체의 정의와 나머지 연산, 덧셈·뺄셈·곱셈·거듭제곱을 배우고 Python 예제를 Go 구조체와 메서드로 옮긴다.