양자 대비 노트 구성 변경안
노트 구성을 바꿔 양자 컴퓨터 이후에도 쓸 수 있게 하는 안이 소개됐다
안건별 요약 11
Zebra 업데이트
Zcash Foundation · Marek, Arya
- CI와 Docker를 크게 재구성하고 Zebra Docker 설정 방식을 바꿨으며, RPC 엔드포인트가 기본으로 켜지지 않아 사용자가 직접 켜야 하는 breaking change가 있다.
- getblock, getrawtransaction, getpeerinfo RPC를 확장하고 invalidateblock과 reconsiderblock RPC를 추가했다.
- zcashd가 지원하던 RPC에 음수 높이 지원을 추가했고, Zaino 팀을 괴롭히던 trusted chain sync 버그를 고쳤다.
- testnet과 regtest 블록 생성에 쓰는 내부 miner를 복원했고, zcashd와 반대였던 코인베이스 트랜잭션 출력 순서를 바로잡아 블록 탐색기 혼선을 없앴다.
- 네트워크 업그레이드를 쉽게 유지하도록 내부 데이터베이스 처리 방식을 리팩터링했다.
- Arya는 Equihash PR을 마무리하고 내부 miner 복원을 도운 Str4d와 teor에게 감사를 전했다.
ECC 업데이트: crate 스택 릴리스와 Zallet
ECC · Kris
- librustzcash crate 전체 스택의 새 릴리스를 냈고, 핵심은 비트코인식 투명 gap limit 기반 지갑 복구이다.
- Zallet은 Zingo 쪽 서비스를 데이터 소스로 체인을 동기화하는 브랜치가 있고 z_send를 작업 중이다.
- 개발자들과 논의해 zcashd 지갑을 Zallet으로 가져오는 임포터를 구현하고 있다.
포스트양자 대비 노트 구성 변경 제안
ECC · Daira Emma, Kris
- 현재 노트 커밋먼트는 양자 바인딩이 아니어서 양자 공격자가 잔액 균형을 위반할 수 있다.
- 노트를 만드는 방식만 바꾸는 비교적 단순한 변경으로, 합의 프로토콜 자체는 바꾸지 않지만 노트 암호화와 복호화에는 영향을 준다.
- 이 변경을 지원하는 지갑이 만든 새 Orchard 노트는 나중에 포스트양자 프로토콜로 쓸 수 있어, 기존 프로토콜을 전부 끄고 노트를 쓸 수 없게 되는 상황을 피할 수 있다.
- 분석을 마무리하는 중이며 메모 번들이나 노트 암호화 변경과 함께 도입할 수 있을 것으로 본다.
- Kris는 이 변경이 FROST 키 생성에도 영향이 있어 명세가 확정되기 전에 반영해야 한다고 했다.
QEDIT 소식(대리 보고)
QEDIT · Arya
- Zingo Labs와 QEDIT 쪽 발표자가 없어 Arya가 대신 전했다.
- QEDIT은 ZIP 에디터 의견에 따른 ZIP 수정에 주로 집중하고 있다.
NSM 업데이트
Shielded Labs · Jason McGee, Arya
- Zebra의 PR 9300과 9256 병합을 기다리고 있으며, ZF가 이번 주 안에 처리하길 희망한다고 Discord에서 답했다.
- PR 9300은 Zebra 의존성을 최신 librustzcash로 올려 librustzcash PR을 최신 main에 리베이스할 수 있게 한다.
- Arya가 ZIP 233 구현은 PR 9256이 병합된 뒤에 보겠다고 했는데, 이 PR이 이날 아침 병합돼 이번 주 안에 검토를 시작할 수 있게 됐다.
Zingo Labs: Zaino 업데이트
Zingo Labs · Arlo
- Zallet에 필요한 해시별 compact block 조회를 구현해 동작하게 됐다.
- Zcash history의 entry kind 버그 수정 PR이 리뷰 준비를 마쳤고, 이것이 병합되면 원격 read state service PR도 거의 준비된다.
- 포럼에 후속 그랜트의 필요 인력과 이유를 자세히 올렸고 피드백을 구했다.
Crosslink 마일스톤 2 진행: Malachite 연동과 시각화 도구
Shielded Labs · Nate, Andrew
- 마일스톤 2는 Tendermint BFT의 Rust 구현인 Malachite로 PoW 블록에 합의하는 네트워크를 구성하고, BFT 블록 형식과 검증에 대한 초기 문서를 쓰는 것이다.
- Andrew는 마일스톤 1 결과로 Zebra 메인넷 노드가 확정된 블록을 터미널에 출력하며, 해시는 고유하게 식별되는 최소 글자만 강조된다고 보여줬다.
- PoW와 PoS 체인을 나란히 보여주는 GUI 시각화 도구를 만들었고, 원은 블록, 선은 부모 연결, 크기는 트랜잭션 수, 거리는 작업량을 나타낸다.
- 마일스톤 1에서 추가한 RPC로 파이널리티를 임의 지점으로 옮겨 확정 블록과 미확정 블록이 다르게 표시되는 것을 시연했다.
- 병렬 BFT 체인에 임의 노드를 만들고 PoW 체인으로 연결을 넣는 크로스링크 연결도 보여줬다.
Crosslink 마일스톤 로드맵과 테스트 논의
Shielded Labs, ECC · Nate, Daira Emma, Arya
- 마일스톤 2는 메인넷에 읽기 전용으로 연결해 참가자끼리 같은 블록을 확정하는지 보는 메인넷 섀도잉 모드를 목표로 하며, BFT 쪽은 PoA로 둔다.
- 마일스톤 3에서 PoW 헤더를 수정하되 트랜잭션 의미는 바꾸지 않아 첫 완전한 Crosslink 프로토타입을 만들고, 어떤 블록이 확정되는지 정하는 합의 변경도 이때 들어간다.
- 마일스톤 4에서 실제 스테이킹 규칙을 구현한다.
- Daira Emma는 완전한 프로토콜에서 각 노드의 확정 상태가 되돌아가지 않아야 하고 BFT 체인에도 아직 확정되지 않은 병렬 블록이 있을 수 있다고 짚었다.
- Nate는 BFT 파이널리티와 Zebra의 기존 롤백 한도가 상호작용하므로 롤백 테스트를 신중히 작성하겠다고 했고, Arya는 새 invalidateblock RPC를 쓰라고 권했다.
FROST 감사 후속과 포스트양자 키 생성 변경
Zcash Foundation, ECC · Natalie, Kris, Daira Emma
- Natalie는 FROST 데모에 대한 Least Authority 감사 결과에 대응 중이며 조금 더 처리해 회신할 예정이다.
- ZF는 FROST 작업에서 점차 손을 떼는 중이어서 추가 작업 여부는 별도로 논의하고, 외부 PR은 환영한다고 했다.
- Daira Emma는 포스트양자 대비를 위해 키 생성에서 rcm 값을 계산하는 방식이 바뀌어, 노트가 g_d, pk_d, 값, 자산 기반을 커밋하도록 해야 한다고 설명했다.
- 이는 특정 키 생성 알고리즘을 강제하지 않으며, 필요하면 Daira Emma가 FROST 명세에 해당 변경을 직접 반영하기로 했다.
공개 토론: Zenith 그랜트 검토 요청
ZCG · Jason McGee, Marek, Arya
- Jason McGee는 Zenith의 FROST 다중서명과 Keystone 통합 그랜트 제안에 대해 생태계 개발팀이 Zenith를 쓰는지 의견을 구했다.
- 한 참석자는 Zenith를 써 본 적이 없다고 했고, Marek은 Zebra에서도 직접 쓰지 않지만 Zenith 팀이 연 이슈들은 유용했다고 했다.
- Arya는 ZCG가 의견이 필요하면 ZF가 더 자세히 살펴보겠다고 했고, Jason McGee가 링크를 보내기로 했다.
공개 토론: 포스트양자 프로토콜과 확장성
ECC, Shielded Labs · Arya, Daira Emma, Nate
- Daira Emma는 포스트양자 프로토콜의 핵심 알고리즘은 대칭 암호만 쓰고 노트를 점대점으로 전달하는 상호작용 방식을 쓸 수 있어, 다양화 주소가 필요 없을 수 있다고 했다.
- 이 방식은 노트 스캔이 필요 없어 확장성에도 이점이 있다.
- Nate는 Sean Bowe가 결제 상호작용 프로토콜 변경을 포함한 새 확장성 아키텍처를 블로그에 올렸다고 전했다.
- Daira Emma는 이 변경들이 서로 호환되며 확장성과 포스트양자 둘 다가 동기라고 답했다.
한국어 요약은 원문을 바탕으로 정리한 것으로, 정확한 내용은 원문을 확인하세요.