검수요청.png검수요청.png

Bech32

해시넷
Asadal (토론 | 기여)님의 2021년 10월 23일 (토) 15:47 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
이동: 둘러보기, 검색

Bech32피터 윌러(Pieter Wuille)와 그레그 맥스웰(Greg Maxwell)이 제안한 BIP173에 명시된 비트코인(Bitcoin) 주소 형식이다. QR코드음성대화에 더 잘 적응하고 오류 감지를 개선한다는 장점이 있다. 이 라이브러리는 Bech32를 일반화하여 모든 바이트 버퍼를 인코딩한다.

주요 인물[편집]

장점[편집]

  • 입력 시 더 나은 보호가 가능하다.
  • 대소문자를 구분하지 않는다.
  • QR코드가 더 작다.
  • 세그윗(Segwit)의 전체 성능을 사용할 수 있다.

문자열[편집]

Bech32 문자열은 최대 90자이며, 다음과 같이 구성된다.

  • HRP(Human-Readable Part) : 자료의 종류나 독자와 관련된 그 밖의 모든 것을 전달하기 위한 것이다. 이 부분에는 반드시 1~83자의 US-ASCII 문자가 포함되어야 하며, 각 문자는 [33~126] 범위의 값을 가져야 한다. HRP 유효성은 특정 용도에 의해 더욱 제한될 수 있다.
  • 세퍼레이터(Separator) : 사람이 읽을 수 있는 부분 안에 "1"이 허용되는 경우 문자열의 마지막 부분은 구분 기호 "1"이다.
  • 데이터 부분 : 길이가 최소 6자이고 "1", "b", "i" 및 "o"를 제외한 영숫자로만 구성된다.
0 1 2 3 4 5 6 7
+0 q p z r y 9 x 8
+8 g f 2 t v d w 0
+16 s 3 j n 5 4 k h
+24 c e 6 m u a 7 l

주소 형식[편집]

Bech32 주소는 P2 스타일 주소와 확실히 다르다. 주소는 bc1로 시작하며, 이 접두사 때문에 기존 주소나 P2SH 주소보다 길다. Bech32는 기본 세그윗 주소 형식이며, 소프트웨어하드웨어 월렛의 대다수지만, 소수의 교환을 하고 있다.[3]

Bech32 기반 다른 주소 형식[편집]

  • LN 인보이스(LN invoices) : Bech32의 일반적인 90자 제한 없이 확장된 HRP와 함께 bech32 형식을 사용한다.
  • 비트코인 캐시(Bitcoin Cash) 새로운 스타일 주소 : bech32 형식을 HRP 비트코인 캐시 및 구분 기호와 함께 사용한다. 비트코인에서와같이 세그윗 감시 버전을 인코딩하는 버전 바이트 대신, 주소로 인코딩된 해시를 P2PKH 또는 P2SH와 함께 사용해야 하는지 여부를 나타낸다.
  • 백업 시드(Backup seeds) : 2018년 6월 조나스 슈넬리(Jonas Schnelli)는 오류 수정을 위해 Bech32를 사용하여 비트코인 개인키, 확장 개인키(Xprivs) 및 확장 공개키(Xpubs)를 인코딩하는 방식인 Bech32X를 제안했다.
  • 요소 기반의 사이드체인(Sidechains) : 블록스트림 리퀴드(Blockstream Liquid)와 같은 ElementsProject.org를 기반으로 하는 사이드체인에서는 Bech32 주소와 "Bich32"주소라고 하는 변화를 모두 사용한다. Bech32 주소는 그 플랫폼의 기밀 자산과 함께 사용하기 위한 것이며, 곧 리퀴드 사이드체인용 에스플로라(Esplora) 블록 탐색기에 지원될 예정이다.
  • 출력 스크립트 디스크립터(Output Script Descriptors) : Bech32와 직접 관련되지는 않지만, Bech32에서 사용된 것과 동일한 BCH(Bose-Chaudhuri-Hocquenghem) 코드에 기초한 체크섬(Checksums)이 비트코인 코어가 지원하는 출력 스크립트 디스크립터에 추가되었다.

Bech32 수신만 지원하는 월렛[편집]

  • 와사비 월렛(Wasabi Wallet) : 프라이버시 강화 코인조인(Coinjoin) 모드와 코인 제어 의무화로 알려진 와사비 월렛은 Bech32 주소에 대해서만 지불을 허용한다. 비교적 새로운 이 월렛은 BIP158에서 설명한 것과 유사한 소형 블록 필터를 중심으로 설계되었다. 그러나 모든 필터는 와사비의 인프라에서 제공되기 때문에, P2WPKH 출력만 포함해 필터 크기를 최소화하기로 했다. 이것은 월렛이 P2SH로 포장된 세그윗 주소에 대한 P2SH를 포함하여 다른 출력 유형에 대한 지불을 볼 수 없음을 의미한다.
  • 트러스트 월렛(Trust Wallet) : 바이낸스(Binance) 암호화 거래소가 소유하고 있는 상당히 새로운 특허권 월렛이며 안드로이드IOS와 호환된다. 새로운 월렛으로서, 지원을 받는 레거시 주소를 구현할 필요가 없었기 때문에, 세그윗만 구현했다. 그렇게 되면 Bech32는 이 월렛에 비트코인을 보낼 수 있는 유일한 지원 방법이 된다.
  • 일렉트럼(Electrum) : 데스크탑모바일을 위한 인기 있는 월렛이다. 새 월렛 시드를 만들 때, 세그윗 월렛과 레거시 월렛 중 하나를 선택할 수 있다. 현재 기본값은 세그윗이다. 세그윗 월렛 시드를 선택한 사용자들은 수신하기 위한 Bech32 주소만 생성할 수 있다.

각주[편집]

  1. Pieter Wuille - Bitcoin Core Developer〉, 《Weusecoins》
  2. Gregory Maxwell - CTO, Blockstream〉, 《Weusecoins》
  3. Kai Sedgwick, 〈Everything You Should Know About Bitcoin Address Formats〉, 《비트코인.COM》, 2019-02-18

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 Bech32 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.