ZIP 보안·프라이버시 절 논의
NU7 후보 ZIP 대부분에 보안·프라이버시 절이 없다는 점이 논의됐다
안건별 요약 9
Crosslink 배포 마일스톤 1 완료
Shielded Labs · Nate
- 로드맵에 정한 첫 마일스톤을 마쳤고, 기반을 다지는 단계로 Zebra, Zaino, zcash devtool을 함께 동작하도록 수정했다.
- 파이널리티 관련 새 RPC 인터페이스를 만들기 시작했고, 경량 클라이언트가 regtest 방식으로 Zebra 노드의 파이널리티 개념을 특정 블록 해시로 바꾸는 데모를 선보였다.
- 스택 각 부분에서 얇게라도 결과물을 내는 수직 슬라이스 방식으로 마일스톤을 진행해 문서 갱신과 ZIP 자리표시도 포함됐다.
- Zebra에 올릴 NSM PR은 트랜잭션 포맷 변경만 담은 PR과 ZIP 233 필드 추가 PR로 나눴다.
- 이를 통해 업스트림에 기여하고, 앞으로 새 트랜잭션 포맷을 더 일찍 조율해 배포하는 방식을 고민하고 있다.
Crosslink 마일스톤 2 계획과 협업 요청
Shielded Labs · Nate
- 마일스톤 2는 분리된 BFT로, Tendermint의 Rust 구현인 Malachite SDK를 Zebra에 통합하되 PoW 합의는 수정하지 않는다.
- BFT 구성요소가 노드 간에 PoW 블록의 순서에 합의하며, 누구나 이를 메인넷에 읽기 전용으로 연결해 돌려보는 메인넷 섀도잉 모드를 목표로 한다.
- 마일스톤 2의 목표 날짜는 6월 1일이다.
- Zebra 팀을 비롯해 Zaino, zcash devtool, librustzcash와 RPC 연결 같은 아키텍처 결정을 조기에 조율해야 한다.
- 지갑 벤더와 개발팀 등 이해관계자 목록에 적극 연락해 마일스톤에 대한 초기 피드백을 받을 계획이다.
- 자세한 로드맵은 shieldedlabs.net의 블로그에서 볼 수 있다.
ECC 업데이트: Zallet·Zaino 통합과 crate 릴리스
ECC · Kris
- Str4d가 Zaino를 라이브러리로 Zallet에 통합해 동기화가 동작하게 됐고, 앞으로 필요한 사항들을 Zaino 저장소에 이슈로 올리고 있다.
- Zcash keys, client backend, client SQLite crate와 ECC 지갑 SDK의 새 릴리스를 곧 낸다.
- 이 릴리스에는 비트코인식 주소 순환 복구를 위한 투명 gap limit 처리가 들어가며 다음 주 Zashi 릴리스에 포함된다.
- Zcash client SQLite의 노트 커밋먼트 트리 손상 가능성 버그 수정도 함께 나간다.
- Josh가 곧 발표할 향후 커뮤니티 거버넌스 모델 관련 ZIP 명세 작업도 진행했다.
NSM 업데이트
Shielded Labs, Eiger · Jason McGee, Kris
- 지난 한 달간 더 진전하지 못했고, Zebra 의존성을 최신 librustzcash로 올리는 PR 9300 병합을 기다리고 있다.
- Arya가 ZIP 233 구현 리뷰는 ZSA와 맞춘 NU7 제약을 도입하는 PR 9256이 병합된 뒤로 보류한다고 해서 두 PR의 병합 시점을 물었다.
- Kris는 최근 몇 주 이 PR들을 살필 시간이 없었으나 우선순위를 두겠다고 답했다.
- Kris는 이런 사안은 Discord나 Signal로 계속 알려 달라고 요청했다.
공개 발표: 커뮤니티 노트테이커 교체
ZCG · Jason McGee, Nate, Dan
- 이날이 2년간 Arborist 콜 기록을 맡은 Jason Rogers의 마지막 날이었고 ZCG가 후임을 찾고 있다.
- 후임이 정해질 때까지 Artkor가 임시로 맡는다.
- Nate는 휴직 중 노트 스레드가 Zcash와의 유일한 연결 고리였다며 감사를 전했다.
Zenith FROST 통합 그랜트 제안 검토
Zenith, ZCG · Jason McGee, Rene, Nate, Dan
- Zebra 풀 노드 지갑 Zenith의 Rene가 FROST 지원과 Keystone 통합 그랜트를 제안했고, ZCG는 핵심 개발팀의 Zenith 사용 여부와 자금 지원의 가치를 물었다.
- Rene는 FROST 다중서명 절차를 서버 없이 탈중앙화된 종단 간 암호화 P2P로 Tor를 거쳐 수행하는 방식이 FROST book의 방송 채널 기준에 맞는지 FROST 팀의 의견을 구했다.
- 이 방식은 Cwtch 프로토콜을 Haskell로 이식해 각 지갑에 노드를 내장하고, 양방향 인증으로 상대의 신원도 검증한다.
- Nate는 흥미롭다며 알파 또는 베타 테스터가 되고 싶다고 했다.
- Dodger의 제안에 따라 Rene가 상세 내용을 포럼에 올리고 Conrado를 태그하기로 했다.
공개 토론: ZIP 프로세스 개선과 보안·프라이버시 섹션
Shielded Labs, ECC · Jason McGee, Kris, Str4d, Nate
- Jason McGee는 NSM ZIP이 예상보다 오래 걸린 경험에 비춰 Crosslink ZIP을 위해 Shielded Labs의 엔지니어 3명을 ZIP 회의에 참석시켜 ZIP 에디터로 키우겠다고 했다.
- ZIP 0이 요구하는 보안·프라이버시 고려 섹션이 NU7 후보 10개 중 2개에만 있고, 누가 평가할 책임을 지는지도 불분명하다고 지적했다.
- ZIP 231이 가변 길이 메모로 크기 유출 위험을 만들고 지갑 위협 모델 문서와 충돌할 수 있는데 분석 기록이 없다고 예시를 들었다.
- Kris는 ECC 엔지니어들이 ZIP 231을 두고 광범위하게 논의했으나 ZIP에 충분히 기록하지 못했음을 인정하고 보완하겠다고 했다.
- Str4d는 ZIP 0의 should는 필수가 아니며 보안·프라이버시 근거 상당수는 Rationale에 있다고 설명했고, 책임은 결국 저자에게 있다고 했다.
- Nate는 섹션을 필수로 하고 해당 없으면 이유를 한두 문장 적자고 제안했다.
공개 토론: 보안 분석 시점과 ZIP 226 사례
ECC, Shielded Labs · Jason McGee, Str4d, Nate
- Jason McGee는 ZIP 234 같은 합의 변경의 보안 분석이 제출 시, 구현 시, 아니면 둘 다에서 이뤄져야 하는지 물었다.
- Str4d는 합의 수준 변경은 규범상 메인넷 활성화 높이를 정하기 전까지 끝나야 하며, 실제로는 명세 감사 전이나 구현 초기에 하는 것이 낫다고 했다.
- Nate는 커뮤니티 ZIP 선정 전에 보안·프라이버시 근거를 갖추면 팀이 오래 만든 뒤 거절당하는 일을 줄일 수 있다고 했고, 선정 절차가 불명확하다고 짚었다.
- Str4d는 QEDIT이 제안한 액션 그룹과 ZSA 소각 변경에서 ZIP 에디터가 프라이버시 트레이드오프를 발견했고, 발행자가 프로토콜 밖에서 이를 완화하는 방안을 제시했다고 소개했다.
- 이 사안은 PR 991에서 논의 중이며 ZIP 226과 관련된다.
공개 토론: ZIP 0 개정, 요약 문서, 거버넌스
ZIP 에디터, Shielded Labs · Nate, Str4d, Zooko, Kris, Jason McGee, Dan, Mark
- Str4d는 ZIP 0 변경도 다른 ZIP처럼 구체적인 diff PR로 제안하면 논의하기 쉽다고 했고, Jason McGee는 변경안을 다음 콜까지 준비하겠다고 했다.
- Jason McGee는 대부분의 커뮤니티 구성원이 ZIP을 읽지 않고 투표하므로 요약과 트레이드오프, 영향받는 이해관계자를 정리한 자료가 필요하다고 했다.
- Str4d는 정확한 명세와 이해하기 쉬운 글은 서로 긴장 관계이며, 동기 섹션을 가장 읽기 쉽게 다듬어 왔다고 설명했다.
- Kris는 모든 ZIP에 abstract가 있으니 별도 요약 문서보다 abstract를 개선해야 한다고 했고, Shielded Labs의 Mark가 쉬운 설명을 돕겠다고 자원했다.
- Zooko는 ZIP 226은 보안 근거가 보이는데 다른 ZIP은 분석 여부를 알 수 없다며, 의사결정과 정보 수집을 분리해 공개 문서로 추적하고 싶다고 했다.
- Kris는 ZIP 에디터가 분석 섹션의 존재를 확인하되 분석은 저자 책임이라고 했고, 이제 정식 거버넌스 절차가 필요하다고 인정했다.
한국어 요약은 원문을 바탕으로 정리한 것으로, 정확한 내용은 원문을 확인하세요.