통합
체인은 그것에 닿는 소프트웨어만큼만 쓸모가 있습니다. 이 분류는 그 소프트웨어를 다룹니다. 사람들이 서명하는 지갑, 계정을 통제할 수 있는 키, 개발자가 그 위에서 개발하는 도구와 API, 그리고 체인을 브라우저가 닿는 곳에 두는 공개 서비스입니다. 이 모든 것을 관통하는 원칙이 하나 있습니다. 키는 소유자에게 남습니다. 모든 트랜잭션은 사용자 자신의 기기에서 만들고 서명하며, 모든 서비스는 서명된 바이트와 공개 데이터만 전달합니다.
서명
- 웹 지갑: 브라우저에서 서명하고, 기기에 암호화된 보관함을 두며, 한 번도 온라인에 접속하지 않는 컴퓨터에서도 서명할 수 있는 단일 HTML 파일로 된 공식 지갑
- 다운로드한 파일 확인: 지갑이나 노드 파일의 SHA-256 해시를 체인에 기록된 해시와 비교해 파일이 진짜인지 확인하는 방법
- 키와 계정 유형: 계정은 네이티브 ZooBC 키나 Bitcoin, Ethereum, Solana, Polkadot, Cardano, Ripple, Tron, Tezos 키로 통제할 수 있으며, 각각 원래 체인의 서명 방식으로 검사됩니다.
- MetaMask와 Ethereum 방식 접근: MetaMask는 모든 노드에 내장된 Ethereum 방식 어댑터를 통해 0x 계정 사이에서 ZBC를 보냅니다.
- 서명된 메시지와 암호화된 메시지: 트랜잭션 없이 주소에 대한 통제권을 증명하고, 수신자에게 메시지를 암호화해 보내기
- 하드웨어 지갑: 기기 제조사를 위한 서명 명세. 예정된 설계입니다.
개발
- 노드 API: 모든 노드가 제공하는 HTTP API로,
/api/v1/아래에 백 개가 넘는 경로가 있으며 어떤 웹 페이지에도 열려 있습니다. - 명령줄 도구: 열 가지 프로그래밍 언어로 된
zbc-cli와 라이브러리. MIT 라이선스이며, 공유 테스트 벡터로 동일하게 유지됩니다.
공개 서비스
세 종류의 서비스가 온체인 레지스트리에 등록되어 있어, 지갑은 중앙 디렉터리 없이 이를 찾습니다.
- 게이트웨이: 지갑, 익스플로러, 파일 검증 페이지, 그리고 testnet에서는 파우셋을 제공하는 HTTPS 정문. 게이트웨이는 스테이크를 잠그고, 서명된 하트비트로 목록에 남습니다.
- 익스플로러와 아카이브 노드: 등록 노드 옆의 아카이브 서비스가 검색 가능한 이력을 보관하며, 익스플로러가 이를 보여 줍니다.
- 릴레이: 지갑들 사이에서 통화 신호와 온라인 상태를 전달하는 만남의 장소
이 서비스들 중 어느 것도 블록을 만들지 않으며(블록은 등록 노드만 만듭니다. 노드 운영 참조), 어느 것도 사용자의 키를 보관하지 않습니다.
브리지 코인
ZooBC의 코인 넷은 다른 체인의 코인을 나타냅니다. ZBTC는 비트코인, ZETH는 이더, ZUSDC와 ZUSDT는 Ethereum의 USDC와 USDT 토큰을 나타냅니다. 노드는 어떤 외부 체인도 감시하지 않습니다. 브리지는 버전 0.5.8부터 ZooBC의 일부이며, 전체 내용은 브리지와 래핑된 코인에서 다룹니다. 체인들은 브리지 서비스를 시작하지 않은 채 버전 0.5.8로 재출범합니다.
노드 옆에서 실행되는 키퍼 프로그램이 커스터디 주소를 감시하고 노드 키로 서명한 증언으로 투표하며, 집계 대상 좌석, 즉 정지되지 않은 등록 노드의 3분의 2가 동의할 때까지는 아무 일도 일어나지 않습니다.
출금하려면 보유자는 일반 TransferToken으로 래핑된 코인을 브리지의 커스터디 계정에 보내며, 메시지는 ZBW1| 뒤에 목적지 주소를 붙인 것입니다. 집계 대상 좌석의 3분의 2가 동의하면 모든 노드가 커스터디 계정에서 그 단위를 소각하고, API로 읽을 수 있는 키퍼들의 서명이 다른 체인에서 코인을 풀어 줍니다. 발행과 소각은 1 대 1이며, 브리지 수수료는 없습니다.
같이 보기
이 주제의 문서
- MetaMask와 Ethereum 방식 접근
MetaMask와 다른 Ethereum 도구가 모든 노드에 내장된 JSON-RPC 어댑터를 통해 ZooBC의 0x 계정 사이에서 ZBC를 보내는 방법과, wei가 원자 단위로 환산되는 방식을 설명합니다. - 게이트웨이
ZooBC 게이트웨이가 브라우저를 위해 하는 일, API 요청을 전달하는 방식, 체인에 등록되고 목록에 유지되는 방식, 그리고 게이트웨이가 제공하는 testnet 파우셋을 설명합니다. - 노드 API
모든 ZooBC 노드가 제공하는 HTTP API를 설명합니다. 무엇을 다루는지, 체인을 읽고 트랜잭션을 제출하는 방법, 그 한도, 그리고 노드가 제공하는 그 밖의 인터페이스입니다. - 다운로드한 파일 확인
ZooBC 지갑이나 노드 파일의 SHA-256 해시를 체인에 기록된 해시와 비교하여, 브라우저나 터미널에서 파일이 진짜인지 확인하는 방법을 설명합니다. - 릴레이
ZooBC 릴레이가 지갑을 위해 하는 일(통화 신호, 온라인 상태, 채널 게임의 수), 지갑이 릴레이에 로그인하는 방법, 그리고 릴레이가 체인에 등록되는 방식을 설명합니다. - 명령줄 도구
ZooBC 공개 도구를 소개합니다. HTTP API를 통해 트랜잭션을 만들고, 서명하고, 제출하는 zbc-cli와 열 가지 언어의 라이브러리이며, 공유 테스트 벡터로 바이트 단위까지 동일하게 유지됩니다. - 서명된 메시지와 암호화된 메시지
트랜잭션 없이 ZooBC 주소에 대한 통제권을 증명하는 방법(ZBC-MSG-v2), 수신자에게 메시지를 암호화하는 방식, 그리고 노드 API가 받아들이는 그 밖의 서명을 설명합니다. - 웹 지갑
공식 ZooBC 지갑의 작동 방식을 설명합니다. 기기에 암호화된 보관함을 두고, 브라우저에서 서명하며, 여러 형식의 계정을 담고, 오프라인에서 서명할 수 있는 HTML 파일 하나입니다. - 익스플로러와 아카이브 노드
일반 노드가 과거에 관한 모든 질문에 답할 수 없는 이유, 등록 노드 옆의 아카이브 서비스가 검색 가능한 이력을 보관하는 방식, 그리고 익스플로러가 이를 쓰는 방식을 설명합니다. - 키와 계정 유형
ZooBC 주소가 계정 유형을 담는 방식, ZooBC와 다른 체인의 어떤 키가 계정을 통제할 수 있는지, 그리고 각 서명 방식이 검증되는 방식을 설명합니다. - 하드웨어 지갑
하드웨어 지갑 제조사를 위한 ZooBC의 서명 명세를 설명합니다. 기기가 ZooBC 트랜잭션에 서명하기 전에 해석하고, 보여 주고, 계산해야 하는 것과 그 이유입니다.