본문으로 건너뛰기

BitTool Signer 개발자 문서

지갑 개발자를 위한 문서

BitTool Signer는 여분의 iPhone 또는 Android 휴대폰을 오프라인 서명 기기로 바꿔 줍니다. 키는 그 휴대폰을 절대 떠나지 않습니다. 지갑과 주고받는 것은 QR 코드뿐이며, 네트워크 통신은 전혀 없습니다. 이 문서는 그 교환을 바이트 단위로, 그 뒤의 보안 설계와 함께 설명해 여러분의 지갑에 BitTool Signer를 추가할 수 있게 합니다.

작동 방식​

지갑은 온라인 상태로 잔액, 수수료, nonce 조회, 트랜잭션 생성, 브로드캐스트처럼 네트워크가 필요한 모든 일을 담당합니다. BitTool Signer는 오프라인 상태로 개인 키가 필요한 단 한 가지 일, 즉 요청을 확인하고 서명하는 일만 합니다.

내 지갑온라인, 보기 전용
BitTool Signer오프라인, 키 보관
  1. 1공개 키만 담긴 페어링 QR 코드를 표시합니다.
  2. ◀ ur:bytes · ur:crypto-account · ur:crypto-hdkey …
  3. 2계정을 보기 전용 지갑으로 가져오고 잔액을 표시합니다.
  4. 3서명되지 않은 트랜잭션이나 메시지를 만들어 QR 코드로 표시합니다.
  5. ur:crypto-psbt · ur:eth-sign-request · ur:tron-sign-request · ur:sol-sign-request ▶
  6. 4요청을 디코딩해 모든 필드를 보여 주고, 지갑 비밀번호를 입력받아 서명합니다.
  7. ◀ ur:crypto-psbt · ur:eth-signature · ur:tron-signature · ur:sol-signature
  8. 5서명을 검증하고 트랜잭션을 조립해 브로드캐스트합니다.

주고받는 데이터는 모두 공개 데이터입니다. 확장 공개 키, 주소, 서명되지 않은 트랜잭션, 서명이 전부입니다. 페어링 QR 코드에는 복구 문구, 시드, 개인 키가 절대 포함되지 않습니다.

연동할 수 있는 기능​

지원 체인과 형식​

체인페어링(코인 레벨)서명 요청 → 응답서명 대상
Bitcoinur:crypto-account (계정 xpub)ur:crypto-psbt → ur:crypto-psbt (ur:psbt, BBQr, Base64도 지원)PSBT v0/v2: P2WPKH, P2TR, P2SH-P2WPKH, P2PKH, 멀티시그
EVMur:crypto-hdkey (계정 xpub)ur:eth-sign-request → ur:eth-signatureLegacy, EIP-2930, EIP-1559 트랜잭션, personal_sign, EIP-712
TRON일반 주소ur:tron-sign-request → ur:tron-signatureraw_data 트랜잭션, TIP-191 메시지
Solanaur:crypto-multi-accountsur:sol-sign-request → ur:sol-signatureLegacy 및 v0 메시지(조회 테이블 제외), 텍스트 메시지

EVM 서명은 8개 네트워크를 지원합니다: Ethereum (1), BNB Chain (56), Arbitrum One (42161), Base (8453), OP Mainnet (10), Polygon PoS (137), Gnosis (100), Avalanche C-Chain (43114).

전송 방식은 BC-UR입니다. CBOR을 Bytewords로 감싸고, QR 코드 하나에 담기지 않으면 애니메이션 "파운틴(fountain)" 프레임으로 나눕니다. 요청과 응답 타입은 공개된 Keystone UR 레지스트리의 타입을 그대로 사용하므로, 이미 QR 하드웨어 서명 기기를 지원하는 지갑이라면 새로 작성할 코드가 거의 없습니다. BitTool 전용 형식은 선택 사항인 지갑 레벨 페어링 QR 하나뿐이며, 한 번의 스캔으로 네 체인을 모두 가져옵니다.

대상 독자​

hex, Base58, JSON에 익숙하고 확장 공개 키(xpub)와 파생 경로가 무엇인지 알고 있어야 합니다. 모든 페이지는 공개 테스트 문구 abandon … about으로 BitTool Signer 엔진이 생성한 실제 바이트로 완전한 예제를 보여 줍니다. 먼저 이 예제를 기준으로 구현한 다음 앱으로 테스트하세요.

테스트 전용 데이터

이 사이트의 테스트 문구, 주소, 트랜잭션은 공개되어 있습니다. 누구나 해당 자금을 사용할 수 있으므로 절대 이 주소로 자금을 보내지 마세요.

소스 코드​

BitTool Signer는 두 플랫폼 모두 오픈 소스입니다: bittool-signer-ios, bittool-signer-android. 두 앱은 같은 엔진으로 동작하므로 이 사이트의 QR 형식과 서명은 어느 쪽에도 적용됩니다. QR 프로토콜 코드는 engine/protocols.js에, 체인별 파서와 서명 코드는 engine/src/에 있습니다. 두 플랫폼의 버전 1.0.0에 대한 AI 보조 보안 검토를 전문 공개합니다. 통합 관련 문의: support@bittool.com.