여러분의 Blockstream 블록 익스플로러(11월 릴리즈)에 대한 관심에 힘 입어, 이번에는 그 배경에 있는 무료 오픈소스 소프트웨어인 Esplora를 릴리즈 하여 소개드립니다. 본 소프트웨어는, 누구나 프로젝트에 공헌할 수 있으며, 확장기능을 만들거나 독립적인 블록체인 익스플로러도 만들 수 있도록 개발되었습니다. Esplora는 몇 가지 오픈소스 컴포넌트를 활용하여 개발되었습니다.
Roman Zeyde씨에 의해 Rust언어로 개발된 Electrum 서버의 구현체의 수정된 Electrs를 활용하여, Bitcoin코어와 Liquid풀노드의 블록체인 데이터를 손 쉽고 빠르게 인덱스하여 보여줍니다.
Esplora는 이하 기능을 지원합니다:
- 비트코인 메인넷, 테스트넷, Liquid
- Bech32 주소
- Confidential addresses (Liquid)
- 비트코인과 Liquid의 peg-in과 peg-outs 연결
- 가벼운 버전인 라이트모드 제공
Liquid 지원을 위해 Electrs가 수정되었습니다. Blockstream의 리서치팀을 담당하는 Andrew Roelstra씨에 의해 Elements를 위해 개발된 Rust 라이브러리인 rust-elements를 사용하여 Liquid 지원이 가능해졌습니다. 다른 수정 사항으로는, Rust가 도입된 HTTP 서버인 hyper가 있습니다. 최종적으로 Esplora의 프론트엔드는 nginx로 개발되었습니다.
Esplora의 기초 디자인은 Electrs를 Liquid를 위해 사용하여 HTTP REST를 통해 데이터를 읽어들이는 것입니다. 백엔드 구현은 Riccardo Casatta씨에 의해 개발되었으며, Nadav Ivgi(shesek)씨가 검토 및 보완하였습니다. 클라이언트는 Nadav씨에 의해 rxjs와 cyclejs를 활용해여 개발되었습니다. Blockstream의 Selene Jin씨와 Matthias Ruhland씨는 프론트엔드의 UI를 담당하여 사용하기 편하게 만들어졌습니다. Chase Sillevis씨, Martin Izdimirski씨, 그리고 저(Lawrence)는 인프라와 디플로이먼트를 담당하였습니다.
퍼블릭 코드 리포지토리 공표와 함께, 사용자가 각자 하드웨어에서 실행할 수 있는 Docker이미지도 준비하였습니다. (다만, 스스로 만드는 것을 추천드립니다) 기능추가, 또는 의견 등이 있으실 경우 Github리포지토리에 이슈 등록 부탁드립니다. 또, r/bitcoinexplorers、#bitcoin-explorers 또는 이메일 로도 많은 의견 부탁드리겠습니다.