핀테크 시장, 공인인증 보완재 '블록체인' 주목

컴퓨팅입력 :2015/06/23 15:05    수정: 2016/06/03 14:32

손경호 기자

공인인증서와 비트코인. 언뜻 보면 상관없어 보이는 두 가지 기술을 하나로 묶는 것은 바로 '공개키기반구조(PKI)'라는 표준 암호화 기술이다.

최근 국내 비트코인 스타트업인 코인플러그가 인터넷뱅킹에 사용되는 공인인증서를 별도의 인증기관을 거치지 않고, 사용자-은행 간에서만 쓸 수 있게 하는 방법을 공개했다.

비트코인 거래내역을 기록하는 거대장부 역할을 하는 '블록체인'을 활용해 인증서를 발급하는데 드는 비용을 줄이면서도 사용자 PC나 스마트폰에 저장돼 유출위험성이 높은 인증서, 개인키를 안전하게 관리할 수 있게 하겠다는 것이다.

비트코인 생태계를 움직이는 거대한 거래장부인 블록체인을 공인인증서 시스템에 활용하는 기술이 개발됐다. (사진=코인데스크)

■공인인증서-블록체인, 같은 기술서 파생

어떻게 이런 일이 가능할까. 먼저 공인인증서와 비트코인이 가진 기술을 비교해 보자.

공인인증서는 기본적으로 PKI에 대해 국제전기통신연합(ITU-T)이 정한 표준기술인 'X.509' 표준을 따른다. 풀어서 설명하면 공개키, 개인키를 생성하고 이를 통해 상대방과 통신이 안전하다는 사실을 확인하기 위한 일련의 절차를 따른다는 것이다.

공인인증서를 처음 발급하기 위해 은행을 활용하는 경우를 생각해 보면 다음과 같다. 먼저 사용자PC, 스마트폰으로 인터넷뱅킹사이트/모바일뱅킹앱으로 은행 서버에 접속, 필요한 개인정보를 입력한 뒤 인증서 발급을 신청하면 은행은 해당 정보를 공인인증서 발급기관에 보낸다. 발급기관은 다시 이 정보를 확인한 뒤 공개키와 개인키를 생성해 사용자PC에 전송한다.

그동안 국내에서 공인인증서 유출로 인한 금전피해가 심각했던 이유는 공인인증서를 통한 사용자PC-인터넷뱅킹사이트 혹은 스마트폰-모바일뱅킹앱 간에 서로 믿을 수 있는지를 판단하기 위해 필요한 개인키가 공개된 폴더 안에 버젓이 저장돼 있었다는 점이다. PC의 경우 액티브X, NPAPI와 같이 추가적인 플러그인을 설치해야만 했던 탓에 사용자PC, 스마트폰이 해킹 위협에 노출되는 경우도 많았다.

공격자가 사용자PC나 스마트폰을 해킹해 공인인증서와 암호화된 개인키를 탈취한 뒤 인터넷/모바일뱅킹사이트 접속, 이체 등에 필요한 공인인증서 로그인용 비밀번호를 알아내 자금을 유출시키는 사고가 잦았다.

■블록체인에 올린 공인인증서...보안성 높이고, 투자비 낮춰

코인플러그 송주한 최고보안책임자(CSO)는 블록체인 상에서 공인인증서를 구현하는 방법의 장점을 크게 3가지로 요약했다. 먼저 액티브X나 NPAPI와 같은 플러그인을 통한 추가 프로그램을 설치할 필요가 없다는 점이다. 또한 자신이 소유한 개인정보를 은행 외 인증기관에 전송해야하는 일을 방지할 수 있다. 개인키와 공개키를 생성하는 작업을 스마트폰 앱을 통해 구현하기 때문에 인증기관이 없이도 개인키, 공개키를 사용해 공인인증서 로그인, 이체 등을 활용할 수 있게 한 것이다.

블록체인이 인증기관 역할을 대신할 수 있는 이유는 이미 비트코인 생태계가 거래의 안전성을 담보하기 위한 수단으로 PKI기술을 활용해왔다는 점이다. 사용자 개인이 별도 앱을 통해 공개키, 개인키를 발급한 뒤 해당 정보가 맞는지를 확인할 수 있는 값을 블록체인이라는 거래장부에 올리는 것이다.

다만 블록체인 상에 저장되는 값은 SHA256이라는 일방향 암호화 알고리즘을 통해 가공돼 최대 40바이트까지 정보를 저장할 수 있다. 해당 사용자의 공개키와 암호화된 개인정보를 올려놓은 뒤 비트코인 거래가 이뤄질 때마다 해당 값을 비교해 실제 거래자가 맞는지, 해당 사용자를 통해 거래가 이뤄졌는지(부인방지)를 확인할 수 있도록 했다. 일방향 암호화는 해독이 불가능하기 때문에 해당 값이 일치하는지 여부만 확인가능하다. 만약 이 정보가 개인정보나 이체정보라고 하면 실제 사용자 이름, 전화번호, 계좌번호 등 대신 복잡한 영어 대소문자, 숫자 등으로 이뤄진 값만 블록체인 상에서 확인할 수 있는 것이다.

송 CSO는 "블록체인에 거래정보를 올리는데 드는 수수료가 건당 20원~30원(0.001 비트코인) 수준이라는 점을 고려하면 훨씬 싸고 안전하게 인증서를 활용할 수 있다"고 밝혔다.

■테스트용 앱 보니...

코인플러그가 구현한 테스트용 앱을 통해 시연한 내용을 보면 사용자가 앱에 개인정보를 입력하면 이 정보는 은행으로 전송된다. 은행은 사용자 정보를 자사가 보유한 DB에 저장된 내용과 비교해 일치하는지 여부를 확인한다. 일치하면 사용자 앱에서는 네트워크 연결이 끊어진 상태에서 공개키와 개인키를 생성한다. 이 과정에서 공개키와 함께 개인정보를 SHA256으로 암호화한 ID해시값을 블록체인에 기록한다.

그 뒤 은행은 사용자 휴대폰 번호와 ID해시값을 코인플러그에 보내 블록체인 상에 기록된 내용과 일치하는지 여부를 검증토록한다. 검증이 완료되면 사용자와 은행 간 거래가 믿을 수 있다고 판단해 이체를 수행하도록 하는 것이다.

현재 블록체인은 비트코인 거래 내역에 대한 정보를 기록하는 용도 외에도 40바이트 수준의 정보를 SHA256으로 암호화한 해시값 형태로 올려놓고 안전하게 검증할 수 있다는 이유로 투표시스템, 은행 약속어음 발행, 개인 간 송금 등에까지 활용하려는 움직임이 나오고 있다. 비트코인 생태계를 구현하는 블록체인의 잠재력을 끌어올리려는 시도들이 생겨나고 있는 것이다. 일명 '비트코인2.0'이라고 불린다.

송 CSO는 "이러한 방식이 기존 시스템을 완벽하게 대체한다기 보다는 인증기관이 추가적인 인증서 발급, 확인 등에 필요한 서버 및 보안성을 유지하기 위한 방화벽 구축비용 등을 줄일 수 있게 한다"고 설명했다.

■비트코인2.0으로 진화하는 '블록체인'

지난해 11월 MIT공대 연구팀은 '아이덴티티 확보를 위한 분산화된 공개키기반구조(A Decentralized Public Key Infrastructure with Identity Retention)'이라는 논문을 통해 일명 '서트코인(Certcoin)'을 제안하기도 했다. 비트코인 생태계의 근간을 이루는 블록체인에서 아이디어를 차용해 별도 관리기관(Certificate Authorities, CA) 없이도 분산화되고 안전한 인증체계를 만들 수 있다는 설명이다.

공인인증서가 은행 뿐만 아니라 각종 전자정부를 활용한 민원서류 발급, 조달청 입찰 등에서 활용되고 있다는 점 때문에 비트코인 생태계에서 시작된 블록체인이 개인정보유출이나 해킹 등으로부터 보다 안전하면서 저렴한 수단으로 재조명되고 있다.

관련기사

코인플러그는 이 아이디어로 최근 JB금융그룹이 개최한 '핀테크 경진대회 기술사업화 부문'에서 최우수상을 받으며 5천만원 상금을 거머쥐었다.

한국형 인증서 발급 시스템이 가진 맹점을 비트코인 생태계의 근간을 이루는 블록체인이 해결할 수 있을 지 주목된다. 실제로 국내 은행권에서는 이 기술에 대한 도입여부를 검토 중이다.