Zebra·ZcashD 보안 패치 연달아
Zebra 4.3이 CVE 2건을 고쳤고 ZcashD도 Sprout 증명 취약점을 패치했다
안건별 요약 10
Zebra 업데이트
Zcash Foundation · Marek
- 지난주 CVE 두 건을 고친 Zebra 4.3을 릴리스했다.
- 하나는 취약한 Zebra 노드에서 체인 분할을 일으킬 수 있고, 다른 하나는 취약한 노드를 다운시킬 수 있는 문제이다.
- 이번 릴리스에는 ZIP 235 구현과 regtest에서 블록이 제대로 전파되도록 하는 수정이 포함됐다.
- getblocksubsidy RPC의 Canopy 이전 founders reward 계산과, 테스트넷에서 CPU 스레드 하나를 100% 점유하던 문제도 고쳤다.
- 테스트넷 동기화가 느리다는 점을 확인했고 이를 개선하는 작업이 진행 중이다.
- 메인넷에도 적용돼 다음 릴리스에서 더 빨라질 전망이다.
ZODL 업데이트
ZODL · Kris Nuttycombe
- Str4d가 어제부터 3개월 안식휴가에 들어갔다.
- Str4d가 하던 Zaino chain index 통합 작업을 위해 Zcash primitives 0.27 릴리스를 Zaino에 반영하는 브랜치를 Kris가 이어받아 진행한다.
- Zingo Labs의 Zaino PR 853도 병합이 필요해 커뮤니티의 도움을 요청했다.
- Zallet 위의 전체 블록 스캔 변경이 거의 끝났고, zcashd 지갑 호환에 필요한 P2SH 주소 가져오기를 지원하게 됐다.
- 과거 zcashd 버전을 Docker로 띄워 Sprout, Overwinter, Sapling 시기의 다양한 트랜잭션을 담은 regtest 지갑 파일을 만들어 Zallet 통합 테스트에 쓸 계획이다.
- Unified Address 표준 ZIP 316의 개정 2 초안을 완료했다.
- Unified 뷰잉 키가 P2SH 디스크립터를 표현하도록 고치고, 투명 요소가 없는 ZU 접두사와 투명 요소와 주소 만료 메타데이터를 허용하는 TU 접두사를 도입했다.
- 피드백을 요청했다.
- NU 7에 포함될 확장형 트랜잭션 포맷 ZIP 248도 zips 저장소의 열린 PR에서 의견을 받고 있다.
zcashd 취약점 수정과 양자 컴퓨팅 논의
ZODL, Zcash Foundation · Kris Nuttycombe, Daira Emma, Zooko, Arya
- ZODL은 악의적 채굴자가 유효하지 않은 Sprout 증명을 체인에 넣을 수 있는 zcashd 취약점을 수정해 zcashd 6.12를 냈다.
- Shielded Labs가 공개를 조율했고 패치는 공개 전 주요 채굴 풀에 배포돼 완화됐다.
- 패치는 주로 Str4d가 작성하고 Daira Emma와 Kris가 리뷰했다.
- Zooko는 Zebra는 해당 버그에 취약하지 않아 악용 범위를 추론하는 데 도움이 됐다며 Zebra가 zcashd보다 안전하다고 했다.
- 취약점을 보고한 AI 활용 보안 연구원이 Zebra는 잘 강화돼 있다고 평했고, Bootstrap, Shielded Labs, ZODL, ZF가 50 ZEC를 기부해 보상했다.
- Arya는 Zebra에도 v5 트랜잭션의 auth digest를 확인하지 않아 증명 필드가 변조 가능했던 버그가 있었다고 밝혔다.
- Zooko는 Sprout 버그는 약 25,000 ZEC를 훔칠 수 있었던 반면 Zebra 버그는 영향이 훨씬 낮았다고 비교했다.
- Daira Emma는 Google의 포스트 양자 일정 논문을 언급하며 완전한 포스트 양자 Zcash 설계와 양자 복구성 배포를 서둘러야 한다고 했다.
- 이산로그 한 번 계산만으로 가능한 공격이 논문에서 빠졌다며 블로그 글을 쓰고 있다.
Zaino 업데이트
Zingo Labs · Hazel
- 지난 콜 이후 라이브러리와 zainod를 릴리스했고, 다음 릴리스를 더 규칙적으로 내는 것을 목표로 한다.
- Zallet이 필요로 하는 메서드 하나가 아직 릴리스 위의 기능 브랜치에 있어 병합해야 한다.
- Canopy 이전 색인 개선 등이 있는 Zebra 4.3으로 업그레이드하고 있으며, 한동안 기술 부채 정리와 pass-through 문서 개선에 집중한다.
- 블록 익스플로러용 RPC 작업도 남아 있고 다음 릴리스는 1~2주 뒤로 기대한다.
zcashd 폐기 업데이트
Electric Coin Company, Zcash Foundation, Zingo Labs · Pacu, Zooko, Daira Emma
- Str4d의 안식휴가에 대응해 조율하고 있으며, light client 워킹 그룹에서 lightwalletd와 Zaino의 gRPC API 동등성을 비교하는 통합 테스트를 만든다.
- Zaino는 0.20을 릴리스했고 다음 0.21에는 Zebra 4.3 지원과, 비선형 동기화 문제를 일으키던 get block range gRPC API를 lightwalletd와 같게 하는 수정이 들어간다.
- Daira Emma는 이번 버그가 2020년 이후 손대지 않은 C++로 짠 Sprout 코드에서 나온 만큼 프로토콜에서 공격 표면을 제거하는 것이 중요하다고 했다.
- Pacu는 shielded pool 폐기에 대한 커뮤니티의 우려를 알며 논의와 ZIP 제안을 환영한다고 했다.
- Daira Emma는 더 보수적인 암호를 쓰는 장기 보관 풀을 장기적으로 지원하는 방안의 아이디어를 정리해 글로 쓰겠다고 했다.
ZSA 업데이트
Qedit · Vivek, Daira Emma
- Orchard ZSA PR 471의 리뷰에 모두 답하고 상류를 브랜치에 병합했다.
- 발행 처리를 개선하고 Zebra에서 필요한 가시성을 추가했으며 거의 끝나 리뷰가 계속되길 바란다.
- 여러 크기의 노트를 암호화하도록 바뀐 zcash_note_encryption 인터페이스에 맞춰 sapling-crypto를 업데이트하는 PR을 냈다.
- Daira Emma는 막힌 작업을 풀기 위해 병합하자고 했지만 memo bundle에는 부족해 추가 리팩터링이 필요하다고 했다.
- librustzcash 상류 PR 1931을 준비해 두었고, Orchard 리뷰가 끝나면 다음에 리뷰될 순서이다.
- Zebra는 발행 자산 state 관리를 거의 마쳤고 4.2.0 기준 동기화를 내부 검토 중이다.
- Daira Emma는 ZIP 2005가 이미 ZSA를 고려하고 있고 ZIP 248(확장형 포맷)과 memo bundle ZIP 231과의 상호작용을 확인해야 한다고 했다.
- ZSA ZIP 자체는 변경이 없었다.
Network Sustainability Mechanism(NSM) 업데이트
Shielded Labs · Judah
- ZIP 235가 병합돼 설정 플래그(컴파일 타임 플래그) 뒤에서 릴리스됐다.
- 남은 것은 ZIP 234와 리팩터링 PR이다.
- 234 PR은 리팩터링 PR에 막혀 있어 리뷰를 요청했다.
Crosslink 업데이트 (Trailing Finality Layer)
Shielded Labs, ZODL · Mark, Daira Emma, Zooko
- 4월 15일 워크숍으로 첫 인센티브 테스트넷을 시작한다.
- 안정성, 특히 동기화용 새 네트워킹 구성요소를 다듬고 있으며 ZF와 협업하고 Tachyon 팀의 피드백도 받고 있다.
- Crosslink용 ZIP은 스텁 수준으로 시작했으며 제대로 된 스텁은 워크숍 전후에 제출한다.
- Daira Emma가 ZIP 수를 묻자 Mark는 최소 3개 이상이며 하나의 모놀리식 ZIP은 아닐 것이라고 답했다.
- Daira Emma는 단계적 배포 경로가 분명하므로 폴링 질문을 ZIP 경계가 아니라 1단계, 2단계처럼 배포 단계 기준으로 구성하자고 했다.
동적 수수료(Dynamic Fees) 업데이트
Shielded Labs · Mark, Daira Emma, Arya
- NU 7 폴링용으로 냈던 예비 ZIP을 철회하고 UX 중심으로 동적 수수료의 설계와 탐색을 다시 시작했다.
- 코인 홀더 투표에서 NU 7에 채택되지 않았으므로 탐색할 시간이 생겼다.
- Unstoppable 팀과 월렛 아웃리치를 시작했고, ZODL, Zingo, Edge 등도 수수료 경험을 들을 계획이다.
- 메인넷 데이터가 수수료에서 가장 중요하다는 원칙에서 메인넷 수수료 데이터를 얻을 방법을 찾고 있다.
- Mark가 최근 가격 변동과 안정성을 고려해 한계 수수료를 5000에서 1000으로 낮추는 안을 물었다.
- Daira Emma는 너무 큰 폭이라 샌드블라스팅 재발 시 빠르게 되돌릴 수단이 없으면 곤란하다고 했다.
- Arya는 법정화폐 기준 수수료뿐 아니라 체인의 전체 가치 대비 수수료를 봐야 한다고 했다.
- Daira Emma는 수수료가 지나치게 높아지거나 지나치게 낮아져 dust가 되는 양쪽 모두 공격 수단이 될 수 있다고 했다.
공개 토론: DAG BFT와 Google 양자 컴퓨팅 논문
Arya, Daira Emma, Mark, Zooko
- Arya가 Avalanche 같은 DAG BFT를 Crosslink에 검토했는지 묻자 Daira Emma는 더 나은 보안 특성을 주는 가젯에 임의의 BFT를 꽂을 수 있게 모듈성을 유지하는 방식을 구상한다고 했다.
- Mark는 Avalanche가 Tendermint 같은 확정성을 갖지 않는다고 했다.
- Daira Emma는 Google의 양자 컴퓨터 논문의 두 가지 핵심(이산로그 양자 회로의 게이트 수 감소와 암호화폐별 양자 공격 분석)을 짚었다.
- 논문은 Zcash를 깊이 분석했지만, Halo 2는 신뢰 설정이 없어 더 낫다고 한 점을 반박했다.
- 이산로그 하나만 계산해도 증명 시스템과 값 커밋먼트와 노트 커밋먼트가 모두 깨지므로 구조화/비구조화 참조 문자열 여부는 중요하지 않다고 했다.
- 논문의 정정을 제출하고 블로그 글로 설명하겠다고 했다.
한국어 요약은 원문을 바탕으로 정리한 것으로, 정확한 내용은 원문을 확인하세요.