해시 함수 SHA-256 기반, 초당 3건 처리
적용에는 소프트포크 필요

27일(현지시간) 코인데스크에 따르면 비트코인 인프라 기업 블록스트림 연구진이 양자컴퓨터 공격에 대응하는 비트코인 거래 서명 방식 ‘SHRINCS’를 제안했다. 블록에 담기는 거래 수를 크게 줄이지 않으면서 양자내성을 확보하겠다는 것으로, 블록스트림 엔지니어들은 10년 넘게 비트코인 블록체인의 코어 소프트웨어 개발에 참여해 왔다.
비트코인은 타원곡선암호 기반 디지털 서명으로 소유권을 증명한다. 다만 충분히 강력한 양자컴퓨터가 쇼어 알고리즘을 돌리면 블록체인에 드러난 공개키에서 개인키를 역산해 서명을 위조하고 코인을 빼낼 수 있다는 이론이 제기돼 왔다. 이미 적지 않은 비트코인이 공개키가 노출된 주소에 놓여 있고, 코인데스크가 7월 보도한 익명의 창시자 사토시 나카모토 몫 110만개 이상도 여기에 들어간다.
문제는 서명 크기다. 미국 국립표준기술연구소(NIST)가 표준화한 후양자 서명은 지금 쓰는 서명보다 수십 배 커질 수 있어 블록에 담을 수 있는 거래가 줄어든다. 블록스트림은 모든 거래에 현재의 슈노어 서명을 쓰면 초당 약 6.5건을 처리하지만 NIST 표준인 SLH-DSA를 적용하면 0.36건 수준으로 내려간다고 추산했다. SHRINCS는 이를 초당 3건 안팎까지 되돌린다. 서명은 324바이트에서 출발해 키를 한 번 쓸 때마다 16바이트가량 늘어난다.
SHRINCS를 설계한 요나스 닉 블록스트림 연구원은 비트코인을 겨냥해 만든 첫 구체적인 후양자 서명 제안이라면서도, 최종 서명 체계로 삼으려는 것은 아니라고 설명했다. 지갑이 서명할 때마다 새 일회용 키를 쓰는 만큼 사용한 키를 기록해 재사용을 막아야 하는 부담도 있따. 연구진은 형식적 안전성 증명이 아직 끝나지 않았고 참조 소프트웨어도 보안 감사를 받지 않았다고 밝혔다. 비트코인 본체에 적용하려면 소프트포크와 네트워크의 지지가 필요하다.