비트코인 서명을 동일하게 재현해 장치 간 결과를 비교하는 기술 제안이 나왔다. 서명이 다를 경우 비표준 구현이나 펌웨어 이상을 조사할 수 있지만, 그 자체로 키 탈취나 악성 행위를 입증하지는 못한다.
비트코인 개선 제안 BIP461의 정식 명칭은 ‘결정론적 ECDSA 서명’이다. 작성자는 리엄 길리건(Liam Gilligan)이며, 비트코인 BIPs 저장소에는 현재 상태가 ‘Draft’로 표시돼 있다. 제안서는 2026년 8월 12일 할당됐고 애플리케이션 계층 제안으로 분류됐다.
ECDSA는 서명 과정에서 임시값인 nonce를 사용한다. 유효한 서명을 만들면서도 nonce를 선택할 여지가 있기 때문에, 같은 비밀키와 메시지를 사용해도 구현에 따라 결과가 달라질 수 있다.
BIP461은 비밀키와 메시지 해시를 바탕으로 nonce와 서명을 결정론적으로 생성하도록 정한다. 같은 입력을 두 독립 서명기가 처리하면 같은 결과가 나오도록 만들어 서명 재현성을 높이는 방식이다.
이 기준을 적용하면 두 장치의 결과를 비교할 수 있다. 한쪽이라도 다른 서명을 내놓으면 최소 한 장치가 BIP461 절차를 따르지 않는다는 점을 확인할 수 있다.
다만 서명 불일치가 곧바로 악성 행위를 뜻하는 것은 아니다. BIP461을 따르지 않는 정직한 구현도 다른 유효한 ECDSA 서명을 만들 수 있어, 불일치는 조사 대상으로 삼을 신호에 해당한다.
제안의 문제의식은 서명 과정의 자유도가 키 정보 유출에 악용될 수 있다는 점이다. 악성 펌웨어가 nonce를 조작해 거래 서명에 비밀키 관련 정보를 숨기면, 공격자가 블록체인에 공개된 서명을 분석해 키를 복원할 가능성이 생긴다.
Dark Skippy 연구진은 악성 서명 장치가 거래 서명에 마스터 시드 정보를 삽입해 온체인으로 유출할 수 있다고 설명했다. 연구진은 이 공격을 악성 펌웨어가 탑재된 장치를 전제로 한 방식으로 소개했으며, 당시 실제 공격 사례가 확인된 것은 아니라고 밝혔다.
다만 Dark Skippy의 공개 시연은 탭루트에서 사용하는 Schnorr 서명을 활용했다. BIP461의 대상은 ECDSA이므로, 이 제안만으로 Schnorr 서명에 대한 모든 키 유출 가능성을 다루지는 못한다.
탭루트의 Schnorr 서명은 BIP340 사양에 정의돼 있다. 따라서 BIP461은 ECDSA 서명의 재현성을 높이는 제안이지, Dark Skippy가 제기한 공격 유형 전체를 해결하는 표준은 아니다.
검증 방식 자체에도 부담이 있다. 같은 비밀키를 독립된 두 서명기에 넣고 동일한 메시지를 서명해야 하므로, 비교를 위해 키를 추가 장치에 노출해야 할 수 있다.
악성 장치가 특정 거래에서만 유출을 시도하는 조건부 공격도 남는다. 테스트용 메시지에는 정상적인 서명을 내놓고 특정 조건에서만 정보를 숨긴다면, 일부 서명 비교만으로는 문제를 포착하기 어렵다.
BIP461은 기존 비트코인 합의 규칙을 바꾸지 않는다. 제안 방식으로 생성한 서명도 기존 규칙에서 유효하게 검증되도록 설계됐으며, DER 인코딩 기준 서명 길이는 최대 70바이트로 제시됐다.
비트코인 하드웨어 지갑에서는 서명 대상과 사용자에게 표시되는 거래 내용이 일치하는지 확인하는 문제가 반복적으로 제기돼 왔다. 앞서 레저(Ledger)는 이더리움 앱에서 거래 검토 화면과 실제 서명 대상이 달라질 수 있다는 지적을 받은 뒤 관련 문제를 패치했다. 거래 검토 화면과 실제 서명 대상의 불일치 문제를 다룬 본지 보도
또 다른 보안 사례에서는 하드웨어 지갑의 키 생성 방식 결함이 실제 자금 유출로 이어졌다. 하드웨어 지갑 취약점으로 비트코인이 유출된 사례는 장치가 생성·관리하는 키와 서명 과정의 신뢰성이 자산 보안과 직결된다는 점을 보여준다.
BIP461이 다음 단계로 진전하려면 테스트 벡터와 참조 구현이 필요하다. 현재는 초안 단계이며, 비트코인 네트워크에 즉시 적용되는 업그레이드나 긴급 보안 패치는 아니다. 공식 채택 일정과 지갑 제조사의 구현 계획은 제시되지 않았다.


최윤서 기자
댓글0
첫 댓글을 남겨 보세요.