Zebra 6.4.0, 라이트클라이언트 서버 추가
실험적 lightwalletd 호환 gRPC 서버를 넣고 ZIP 317 기본 수수료를 낮췄지만, 이후 치명적 버그가 발견돼 6.4.0과 6.4.1은 회수됐습니다.
Zebra 6.4.0은 보안 수정과 함께 실험적 lightwalletd 호환 gRPC 서버, 낮아진 ZIP 317 기본 수수료, 채굴자용 블록 템플릿 선계산 등을 담은 릴리스다. 같은 날 나온 6.4.1은 체인 팁 근처에서 동기화가 멈출 수 있는 문제를 고쳤다. 다만 게시글 맨 위에는 6.4.0과 6.4.1이 모두 회수됐으니 실행하지 말라는 갱신 공지가 붙어 있다. 피어 한 명이 메시지 하나로 노드를 중단시킬 수 있는 고위험 버그가 있었고, 6.4.2가 이를 고친다.
보안 권고는 세 건이다. 정당한 해시를 가진 위조 블록 본문이 동기화 라운드를 취소시켜 악의적 피어가 반복적으로 동기화를 지연시킬 수 있던 문제(GHSA-3c94-hf7p-g5mf)를 고쳐, 이제 다른 피어에서 본문을 다시 요청한다. 인바운드 경로에서 coinbase scriptSig를 바꾼 피어에 불이익을 주지 않던 문제도 수정했다. 또 연결 제한과 차단이 IPv6 /64 서브넷 단위로 적용된다. 차단은 재시작 때까지가 아니라 24시간 뒤 만료되고, 중복 거래가 든 블록을 알린 피어도 점수를 깎는다.
새 기능으로 rpc.lightwalletd_listen_addr를 설정하면 lightwalletd CompactTxStreamer 인터페이스를 구현한 실험적 gRPC 서버를 켜 라이트 클라이언트를 직접 지원한다. zcash/zips#1352에 따라 멤풀은 ZIP 317 논리 action당 1,000 zatoshis 이상을 받으며(기존 5,000), 최소 거래는 2,000 zatoshis다. Orchard, Ironwood, Sapling 번들 검증 결과를 캐시하고, 채굴자 주소가 설정되면 블록 템플릿을 미리 계산해 getblocktemplate가 즉시 응답한다.
NU7이 11월 5일로 잠정 예정되어, 지원 종료 정지 기간이 15주에서 12주로 줄어 6.4.x는 11월 2일경 멈춘다. 글쓴이는 이 단축이 이상적이지 않고 일상화할 생각이 없다고 밝혔다. 노드는 getdeprecationinfo RPC로 정확한 정지 높이를 확인할 수 있다. 이 밖에 동일 작업량 체인 선택은 먼저 받은 팁을 우선하도록 고쳤고, zcashd-compat 사이드카의 리오그 한도를 99에서 1,000블록으로 높였다.
권고는 이렇다. 원문은 원래 6.4.1로 바로 올리고 다음 주 나올 NU7 지원 릴리스를 준비하라고 했으나, 현재는 6.4.0과 6.4.1을 쓰지 말고 6.4.2로 즉시 업그레이드해야 한다. 6.3.0 이하는 영향이 없다. 6.4.2는 두 회수된 릴리스의 모든 변경 사항을 포함한다. 라이브러리 사용자는 zebra-rpc와 zebra-state에 호환성을 깨는 API 변경이 있음을 유의해야 한다.
한국어 요약은 원문을 바탕으로 정리한 것으로, 정확한 내용은 원문을 확인하세요.