NIMS Research 1

블록체인 적용 암호기술 연구

암호학적 난제를 이용한 블록체인 설계 및 응용

블록체인이란 수많은 노드가 P2P 네트워크로 연결되어 사용자의 거래를 처리하는 시스템으로, 거래에 대한 기록을 순차적으로 저장하는 분산장부 혹은 DB로 볼 수 있다. 그러나 한 번 기록된 거래 내용은 변경이 불가능하다는 특징을 가진다. 블록체인은 거래 처리 내용을 블록의 체인으로 연결하여 기록하게 되는데, 이때 공개키 암호알고리즘인 전자서명과 해시 함수가 거래자의 인증과 거래 무결성을 보장해주어 위조가 불가능하게 된다. 그러나 네트워크 토폴로지와 전송 속도 등으로 서로 다른 블록의 체인이 구성될 수 있고 이런 상황을 일명 ‘포크(fork)’라고 칭하는데, 포크가 생기면 네트워크 내의 사용자들이 동일한 장부를 구성하지 못하는 상황에 이르게 된다. 이때 필요한 것이 바로 합의 알고리즘이다. 블록체인에서는 모든 노드가 동일한 거래 처리 기록을 가지도록 해야 하는데 이것을 가능하게 하는 것이 합의 알고리즘이다.

산업수학기반연구부 암호기술연구팀 심경아 팀장, 문현석ㆍ안영주 연구원

고속 양자내성 전자서명 알고리즘을 적용한
고속 양자내성 블록체인 설계

가장 널리 알려진 비트코인은 암호학적 일방향 함수(함수 f:X → Y에서, f(x)를 계산하기는 쉽지만, f(x)로부터 preimage x를 계산하기는 어려운 함수)인 해시 함수를 이용한 작업 증명(proof of work)과 가장 긴 체인을 선택하는 방법이 합의 알고리즘으로 사용하고 있다. 블록체인 연구 이슈 중 중요한 것은 블록체인 고속화, 효율적인 합의 알고리즘의 설계, 익명성, 비연결성 등 프라이버시 보호 문제로 암호기술연구팀에서는 이 문제들을 해결하기 위한 연구를 진행하고 있다.

암호기술 측면에서의 블록체인 고속화를 위해서는 초당 최대 거래 수를 확보할 수 있는 서명 검증이 빠른 전자서명이 필요한데, 현재 암호기술연구팀에서 연구 개발하고 있는 고속 양자내성 전자서명 알고리즘을 적용한 고속 양자내성 블록체인 설계를 계획하고 있다.

블록체인의 중요한 이슈 중 하나인 합의 알고리즘은 사실 해시 함수처럼 적당한 일방향 함수만 주어지면 설계가 가능하다. 최근에 제안된 합의 알고리즘은 수학적 난제인 다변수 이차 다항식의 해를 구하는 문제를 합의 알고리즘으로 사용한다. 생성된 블록의 정보들을 이용해 새로운 다변수 다항식의 계수들을 생성하고, 이렇게 생성된 다변수 다항식의 해를 구하는 문제를 누가 먼저 푸는지를 통해서 합의를 이루어내는 방식이다. 이는, 기존의 해시 함수를 이용한 작업 증명 방식에 비해 효율적인 채굴(mining)이 가능하고, 누구나 균등하게 참여할 수 있어서 mining power를 일부 사람들만 독식하는 것을 막을 수 있다는 장점이 있다. 이처럼, 암호알고리즘 설계에 사용하던 수학적 난제와 일방향 함수가 합의 알고리즘 설계의 핵심 요소로 사용되고 있어, 다양한 암호학적, 수학적 난제를 이용한 연구가 필요하다.

프라이버시 보호 기능을 선택ㆍ제어 가능한 효율적인 전자화폐, 블록체인 설계

블록체인은 P2P 공유 플랫폼으로 시스템 내에서 발생한 정보를 모든 참여자와 공유하며 분산화하고 위변조가 어려운 구조를 가지고 있어서 신뢰를 주는 시스템으로, 탈중앙화와 분산거래 기술의 장점은 금융, 의료 등의 사회 서비스 분야에 활용되고 있다. 하지만, 블록체인은 사용자의 개인 정보를 침해할 가능성이 높다. 블록체인 참여자들 간의 거래 정보를 투명하게 공개하면서 신뢰를 획득하지만 모든 참여자에게 거래 정보가 공개되므로 개인의 민감한 정보가 노출될 수 있다.

블록체인에서 가명(pseudonym) 등을 사용하긴 하지만, 사용자의 거래 내역이 연결되어 있어 추적이 가능하다. 이런 문제를 해결하기 위해 익명성을 주는 링서명(ring signature)을 사용한 전자화폐, 블록체인들이 개발되고 있는데, 링서명을 사용하게 되면 완전한 익명성을 가지게 되어 이중 지불 방지를 어떻게 해결해야 하는지가 관건이다. 또한, 문제가 발생했을 때 사용자를 추적할 수 있어 익명성을 제어할 수 있는 그룹 서명(group signature)이나 영지식(zero-knowledge) 증명 기술을 이용하여 프라이버시를 보호할 수도 있다. 그러나, 프라이버시 보호기술을 탑재하게 되면 개인정보는 새어나가지 않겠지만 효율성이 현저하게 떨어진다는 단점이 있어, 적용하는 서비스에 따라 프라이버시 보호 정도와 효율성의 trade-off가 필요하다. 암호기술연구팀에서는 점차적으로 블록체인 프라이버시 보호기술 연구로 확장하여 프라이버시 기능을 선택 및 제어 가능한 효율적인 전자화폐, 블록체인 설계를 계획하고 있다.