비트코인 코어 17번째 업그레이드: 암호키 기능 개선
이 기사를 공유합니다
Alyssa Hertig
Alyssa Hertig 2018년 9월23일 15:00
업데이트, 업그레이드
이미지=gettyimages


 

아무리 이용자가 쓰기 쉬운 툴을 제공한다 해도 비트코인은 이용자가 쉽게 쓰기 어려운 기술이다. 비트코인의 핵심적인 인프라 기능을 이용하기는 더욱 어렵다. 그래도 개발자들은 이런 어려움을 해소하고 사람들이 좀 더 쉽게 비트코인을 쓸 수 있게 하려는 노력을 멈추지 않고 있다.

비트코인 관련 소프트웨어 개발을 주도해온 세계적인 개발자들의 자발적 모임 비트코인 코어(Bitcoin Core)가 곧 17번째 소프트웨어를 공개한다. 이번에 선보이는 소프트웨어에 적용될 변화에도 많은 기대와 관심이 쏠리고 있는데, 개발자들은 특히 이용자들이 비트코인의 개인 암호인 프라이빗키를 저장하는 소프트웨어인 기본 지갑의 기능을 개선하는 데 많은 공을 들인 것으로 알려졌다.

특히 그중에서도 가장 기대를 모으는 업데이트는 새롭게 선보이는 언어(language)일 것이다. 새로운 언어를 처음 제안한 사람은 저명한 비트코인 개발자 피터 바일라(Pieter Wuille)다. 바일라는 지난해 비트코인 확장성 문제 해결의 실마리를 제공한 세그윗(SegWit)을 포함해 지금까지 여러 차례 급진적인 변화를 이끈 개발자다.

새로운 언어란 기본적으로 프라이빗키에 중요한 추가 정보를 더하는 것이다. 비트코인 코어 개발자인 앤드루 초우(Andrew Chow)의 설명을 빌리면 "최근 여러 가지 문제가 드러나 비트코인 소프트웨어에서 제거된 기존 '계정 시스템'을 대체할 합리적인 대안"이기도 하다. 간단히 말해 이용자들이 직접 각각의 계정에 '기부용 계좌' 혹은 '저축용 계좌' 같은 식으로 표식을 붙일 수 있게 해주는 것이다.

한 지갑에서 다른 지갑으로 프라이빗키를 옮기기 쉬워진 것도 새로 도입하는 언어의 중요한 활용 사례다. 현재는 이용자가 한 지갑에서 다른 지갑으로 프라이빗키를 옮기다 보면 지갑에서 코인을 인출하는 법이나 누구에게 얼마를 보냈는지 등에 관한 정보 일부를 분실할 수도 있다.

대부분 트랜잭션에서 정보를 일부 분실하는 건 사실 큰 문제가 되지 않는다. 결국에는 지갑의 주인이 지금 보내는 암호화폐가 자기 것임을 증명할 수 있는 비밀 키를 이용해 서명해야만 트랜잭션이 성사되기 때문이다. 다만 모든 트랜잭션의 서명 방식이 다 같지는 않다. 예를 들어 한 명 이상이 서명해야만 지출이 승인되고 트랜잭션이 일어나는 다중 서명 방식도 있다.

아직 걸음마 단계에 있지만, 거래 속도가 빠르고 확장성이 뛰어나 더 많은 거래를 처리할 수 있는 라이트닝 트랜잭션은 아마도 가장 많은 이들이 기대하는 기술일 것이다. 블록체인이 이용자를 수백만 명으로 늘리는 데 중요한 역할을 할 것으로 기대되는 라이트닝 트랜잭션과 같은 방식의 거래가 많아지면서 새롭게 선보이는 언어는 무엇보다 주요 정보를 분실하지 않게 하는 데 주안점을 뒀다.

바일라가 제안한 새로운 언어는 비트코인의 모든 퍼블릭, 프라이빗 키에 무엇을 열 수 있는 키인지 별도로 설명을 달아놓는다. 체인코드(Chaincode)의 엔지니어 존 뉴버리는 새로운 소프트웨어가 "(암호화폐) 지갑에 대한 기존의 통념을 바꿀 것"이라고 설명했다.

그렇지만 뉴버리는 이제 막 코드 변경에 필요한 첫발을 내디딘 정도라며 아직 넘어야 할 산이 많다고 말했다. 개발자들은 새 언어가 앞으로 있을 소프트웨어 출시에 맞춰 코드 베이스에 포함될 것으로 전망했다.

 

부분 서명 거래와 모바일 비트코인 코어


이번 업데이트에서 또 바뀌는 건 새로운 언어 말고도 여러 가지가 있는데, 일단 첫걸음을 내디뎌 보고 결과가 좋으면 더 큰 변화를 시도해볼 심산인 코드 변경도 있다.

많은 기대를 모으는 변화 가운데 하나로 앤드루 초우가 코드를 짠 부분 서명 비트코인 거래(PSBT, Partially Signed Bitcoin Transactions)가 있다. 부분 서명 비트코인 거래란 아직 서명해야 하는 거래 당사자들이 다 서명을 하지 않은 상태로 네트워크에 브로드캐스트하기 전에 거래 계약서를 돌려보는 것을 뜻한다. 얼핏 듣기엔 대단히 기술적인 문제로 들리지만, 부분 서명 거래는 상당히 많은 이용자에게 영향을 미칠 수 있는 근본적인 변혁이 될 수도 있다.

다양한 하드웨어 지갑들이 이미 시장에 나와 있다. 예를 들어 인터넷에 접속된다고 바로 비트코인을 다른 사람이 훔쳐 갈 수 없도록 지갑을 열 수 있는 보안 키를 내장한 소형기기는 비트코인을 안전하게 저장할 수 있는 수단으로 주목받고 있다. 그런데 트레저(Trezor), 레저(Ledger)를 비롯한 수많은 소위 잘 나가는 하드웨어 지갑들은 보안이 뛰어나다는 목적에 갇힌 나머지 정작 소프트웨어와 연동하는 데 취약한 단점이 있다. 한마디로 소프트웨어 지갑과 호환해서 쓸 수 없다 보니 지갑의 유용성이 크게 떨어지는 것이다.

하드웨어 지갑을 사용하는 가장 쉬운 방법 가운데 하나는 평소에는 네트워크에 연결하지 않고 오프라인 상태로 뒀다가 거래하기 편리한 모바일 기기에 연결할 때만 소프트웨어 지갑과 연결하는 것이다. 이렇게 하면 하드웨어 지갑의 보안과 소프트웨어 지갑의 편리함을 동시에 누릴 수 있다는 점에서 일거양득이다. 다만 보통 하드웨어 지갑이 지원하는 소프트웨어 지갑이 한두 개밖에 안 된다는 점이 문제다. 예를 들어 트레저는 소프트웨어 지갑 가운데 일렉트럼(Electrum)하고만 연동이 된다. 비트코인 코어를 비롯해 다른 어떤 소프트웨어도 트레저 하드웨어 지갑을 지원하지 않는다. 보안 때문에 이렇게 된 일이라지만, 가용성이 너무 떨어지다 보니 이용자들도 오랫동안 불만을 토로해왔다. 비트코인 개선제안서 174는 모든 지갑이 공통으로 사용하는 표준을 만들어 이 문제를 해결하자고 제안한다.

물론 표준을 만들어놓아도 지갑들이 이를 채택해야 효력을 발휘할 텐데, 일단 전망은 밝다. 아직 코드가 공개되기 전이지만, 이미 많은 업체가 관심을 보이고 있고, 하드웨어 지갑 한 곳과 콜드카드 지갑 한 곳은 이미 비트코인 개선제안서 174를 먼저 도입해 서명을 진행하는 실험을 하고 있다. 점점 더 많은 지갑이 표준을 채택하면 하드웨어 지갑을 소프트웨어와 연동하기 쉬워지므로 비트코인 코어를 쓰기도 더 쉬워질 것이다. 앤드루 초우는 다른 소프트웨어 지갑과 비교하면 여전히 비트코인 코어가 훨씬 더 안전한 소프트웨어라는 점을 강조하며 이렇게 말했다.

"부분 서명 비트코인 거래 덕분에 비트코인 코어가 하드웨어 지갑과 오프라인 지갑을 지원하기가 더 쉬워질 것으로 보인다. 당장 지금 비트코인 코어를 하드웨어 지갑이 지원할 수 있도록 하는 작업을 하고 있는데, 여기에 부분 서명 비트코인 거래 방식을 쓰고 있다. 간이 결제 확인 방식(SPV, Simplified Payment Verification)을 쓰는 지갑은 블록체인 검증 작업을 제삼자에게 위임하므로 개인정보 유출 위험은 물론 거래 자체의 보안도 문제가 될 수 있다. 비트코인 코어가 하드웨어 지갑을 지원하기 시작하면 그때 이용자들은 비트코인 코어로 완전히 집결하면 된다. 비트코인 코어는 전체 노드를 모두 다루기 때문에 이용자들은 모든 거래 내용이 사실인지 검증하기 위해 제삼자에게 거래를 들여다보도록 하지 않아도 된다."

코드를 바꾸면 동시에 다양한 가능성이 열리기도 한다. 비트코인 스마트 계약이나 개인정보 강화에 관한 이야기도 나온다. 초우도 "부분 서명 비트코인 거래 덕분에 다중 서명이나 코인조인스(CoinJoins)가 더 쉬워지는 것도 사실"이라고 말했다. 한 트위터 이용자는 "비트코인 개선제안서 174의 내용이 모두 현실에서 구현되면 어떤 일이 일어날지 정말 기대된다"라고 표현했다.

 

더 많은 기능과 효과


지금까지 소개한 부분은 개발자들이 가장 기대하는 변화들이다. 이 외에도 여러 가지 변화가 새로운 코드에 담길 예정인데, 그 가운데 하나는 이른바 동적 지갑 생성(dynamic wallet creation) 기능이다. 초우의 설명을 빌리면 다음과 같다.

앞서 한 차례 비트코인 코어에서 여러 지갑을 동시에 사용할 수 있게 했던 적이 있다. 그런데 그러려면 비트코인 코어가 먼저 여러 지갑을 동시에 인식할 수 있어야 했다. 이제 그 기능을 개발해 추가한 것인데, 이제는 소프트웨어가 돌아가는 상태에서도 지갑을 등록했다가 해제하고 또 새로 만들어 등록할 수 있다."

코인선택(coin selection) 기술에 관해서는 들어본 적 있는 독자들이 많을 것이다. 코인선택은 확장성 문제를 해결하는 기술의 하나로 특정 트랜잭션에 사용될 코인을 가장 효과적으로 선택하는 기술이다. 이전 알고리듬보다 여러모로 효율성이 뛰어나 거래 수수료를 낮추는 데도 도움이 된다.

코인선택을 적용한 기본 코드는 이미 여섯 달 전 업그레이드 때 추가됐지만, 비트코인 코어의 이번 17번째 소프트웨어에서는 코인선택 기술에 프라이버시 강화 기능을 더했다.

이게 다가 아니다. 새로 추가되는 더 많은 기능과 코드 변경 사항은 최종 출시와 함께 더 자세히 소개될 예정이다. 최종 코드의 마지막 시험이 완성되면 출시 일시도 결정될 것이다.

사실 그리 대단한 변화가 아닌 것처럼 보일 수도 있다. 비트코인을 소프트웨어로 사용하는 사람은 거의 없고, 비트코인 코어 이용자는 그보다도 더 적기 때문이다. 원인도 간단하다. 비트코인 소프트웨어는 용량만 200GB에 이른다. 웬만한 노트북 컴퓨터 전체 하드웨어를 다 써도 모자란다. 벤모(Venmo) 같은 소프트웨어를 몇 초 만에 다운로드받아서 바로 쓸 수 있는 것과는 그 편리함을 비교할 수조차 없다.

그래도 비트코인 코어 개발자들은 계속해서 코드를 다듬고 개선하는 작업을 멈추지 않고 있다. 언젠가는 누구나 비트코인 코어를 좀 더 쉽게 설치하고 사용할 수 있도록 하기 위해서고, 언젠가는 비트코인으로만 할 수 있는 것들을 누구나 다 이용하고 싶어 하는 날이 올 것이라고 믿기 때문이다.

번역: 뉴스페퍼민트
· This story originally appeared on CoinDesk, the global leader in blockchain news and publisher of the Bitcoin Price Index. view BPI.
· Translated by NewsPeppermint.

제보, 보도자료는 contact@coindeskkorea.com



댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.