비트코인(BTC) 퍼즐 71의 개인키 후보를 웹브라우저에서 대조하는 WebGPU 기반 실험 도구가 공개됐다. 설치형 채굴 프로그램이 아니라 이용자 브라우저와 GPU에서 연산을 수행하는 방식이다.
우블록체인은 19일 오후 7시49분 한국시간 사이먼 메일스(Simon Males) 개발자가 Krackpot의 작동 방식을 설명했다고 전했다. 메일스는 기술 설명문에서 이 도구가 secp256k1 타원곡선 연산, SHA-256, RIPEMD-160 해시 연산을 브라우저 안에서 실행한다고 밝혔다.
퍼즐 71은 정해진 범위 안에 있는 비트코인 개인키를 찾는 공개 도전 과제다. Krackpot 웹사이트는 이 퍼즐이 2015년 공개됐으며 아직 풀리지 않았다고 설명했다.
Krackpot은 후보 개인키에서 공개키를 만들고 이를 해시해 목표 주소의 공개키 해시와 비교한다. 값이 일치하면 해당 개인키가 정답이 된다. 이 과정은 서버가 아니라 이용자 브라우저와 GPU에서 이뤄진다.
탐색 난도는 여전히 극단적으로 높다. 메일스는 기술 설명문에서 퍼즐 71의 키 공간이 2의 70제곱, 약 1.18섹스틸리언 개라고 밝혔다. RTX 4070 기준 실측 속도는 초당 약 4400만 키로 제시됐다.
같은 설명문은 이 속도에서도 범위 중간값 기준 약 43만 년이 걸린다고 적었다. RTX 3070은 초당 2250만 키, 애플 M3 맥스는 초당 2600만 키, 맥북 에어 M1은 초당 595만 키로 제시됐다.
WebGPU는 브라우저가 그래픽처리장치(GPU)의 병렬 연산 기능을 직접 활용하도록 하는 웹 표준이다. 통상 GPU 연산을 쓰려면 별도 프로그램이나 드라이버 환경에 맞춘 실행 파일이 필요하지만, WebGPU 방식은 브라우저 탭 안에서 계산을 수행할 수 있다는 점이 다르다.
Krackpot은 전체 개인키 연산을 매번 처음부터 수행하지 않는다. 연속된 후보키의 공개키가 P, P+G, P+2G처럼 이어진다는 점을 이용해 GPU 스레드가 한 구간을 맡고 점 덧셈 방식으로 이동한다.
이 방식은 같은 범위를 순차적으로 훑는 작업에 맞춰 연산량을 줄이는 구조다. 메일스는 이를 통해 브라우저 탭에서도 초당 수천만 키를 대조할 수 있다고 설명했다.
검증 장치도 붙었다. Krackpot은 이용자의 GPU와 드라이버에서 결정론적 자체 테스트가 통과해야 검색을 시작한다. 메일스는 WGSL에 큰 정수 연산이 기본 제공되지 않아 256비트 값을 32비트 단위로 나눠 처리한다고 밝혔다.
한 비트라도 틀리면 잘못된 주소를 계속 검사할 수 있다. Krackpot은 테스트 벡터로 결과를 확인한 뒤 탐색을 허용하는 방식이라고 설명했다.
보상 구조는 별도로 표시된다. Krackpot 웹사이트는 개인키를 찾으면 이용자가 입력한 주소로 6 BTC가 지급되고 나머지는 개발자에게 간다고 밝혔다. 관련 거래는 브라우저에서 로컬 서명되며 공개 멤풀 대신 사설 채굴 경로로 제출된다고 설명했다.
이 구조는 공개 멤풀에 거래가 노출될 때 다른 참여자가 거래를 가로챌 가능성을 줄이기 위한 장치로 제시됐다. 다만 보상 배분과 제출 방식은 Krackpot 웹사이트 설명에 따른 것이다.
이번 사례가 비트코인 보안이 뚫렸다는 의미는 아니다. Krackpot은 일반 지갑의 256비트 전체 키 공간을 공격하는 도구가 아니라 이미 범위가 제한된 퍼즐 71을 대상으로 한다. 메일스도 단일 장비로 현실적인 당첨을 기대하기 어렵다는 점을 설명했다.
검증 출처: Krackpot, Krackpot 기술 설명문, Stacker News 게시글, Wu Blockchain 원문
<저작권자 ⓒ TokenPost, 무단전재 및 재배포 금지>
많이 본 기사