
Goldinals: 비트코인 상에서 신뢰 최소화된 동질화 토큰 표준
저자: Techub 독점 해설
기고: Tia, Techub News
「비트코인은 혼란이 아니라 진정한 프로그래밍 가능성이 필요하다.」
현재 비트코인 생태계 내 자산 표준은 극도로 분열되어 있으며, BRC-20, Ordinals, Runes 등 다양한 프로토콜이 서로 독립적으로 작동하며 상호 운용성이 부족한 실정이다. 이러한 상황은 사용자와 지갑 개발자들이 복잡한 형식과 실행 모델을 처리해야 하는 부담을 안기고 있다.
또한 비트코인의 UTXO 구조는 잠금 해제 스크립트와 해제 대상 스크립트를 기반으로 하며, 이더리움처럼 전역 상태(global state)나 튜링 완전한 프로그래밍 환경을 제공하지 않기 때문에, 해당 프로토콜들은 종종 상태 유지 관리를 위해 오프체인 인덱서에 의존하게 된다. 예를 들어, SegWit과 Taproot을 활용해 크기 제한을 넘지 않으면서 영구적으로 정보를 저장하는 Ordinals 프로토콜 위에서 탄생한 BRC-20 역시 토큰 잔고의 전역 상태를 유지하기 위해 전적으로 체외 인덱서에 의존해야 한다. 이는 운영 비용과 신뢰 위험을 증가시킨다. Nubit이 출시한 Goldinals은 바로 이러한 문제들을 해결하고자 기획된 것이다.
Goldinals는 비트코인 상에서 신뢰를 최소화한 동질화 토큰 표준으로, 현재 비트코인 자산 생태계의 표준화 부족 문제를 해결하는 동시에 비트코인 고유의 탈중앙성과 보안성을 유지하는 것을 목표로 한다. 혁신적인 기술과 설계를 통해 Goldinals는 비트코인 사용자와 개발자들에게 효율적이고 유연한 토큰 관리 방식을 제공한다. 이를 달성하기 위해 Goldinals는 기술 및 기능 설계 측면에서 중요한 혁신을 도입하였으며, 그 핵심은 비트코인을 위한 zkOracle을 구축하고 BitVM을 통해 검증을 수행하는 것이다.
2024년 6월 5일, Goldinals의 기반이 되는 프로토콜인 Nubit은 폴리체인 캐피털(Polychain Capital)이 주도하고 노매드 캐피털(Nomad Capital), 스파르탄 그룹(Spartan Group), L2IV, 빅브레인 홀딩스(Big Brain Holdings), GCR, 프로타고니스트(Protagonist), 게이트 벤처스(Gate Ventures), 아노모카(Animoca), 매스크 네트워크(Mask Network) 등이 참여한 800만 달러 규모의 시드 펀딩을 성공적으로 마쳤으며, 이번 라운드를 포함해 Nubit의 누적 펀딩 금액은 총 1200만 달러에 이르렀다.
Ordinals, BRC-20, Runes 및 상호 운용성 부재 문제
Ordinals
Ordinals는 SegWit과 Taproot을 활용하여 임의의 데이터(텍스트, 이미지 또는 기타 메타데이터 등)를 비트코인의 최소 단위(satoshis, 약칭 sats)에 각인할 수 있도록 한다.
BRC-20
BRC-20은 토큰 발행, 송금, 소각 기능을 구현하기 위한 상태 없는(stateless) 비트코인 토큰 표준이다. BRC-20은 이더리움의 ERC-20처럼 블록체인 논리 내에 직접 내장된 것이 아니라, Ordinals의 데이터 저장 기능을 이용해 구현된 일종의 '외부 확장형' 토큰 표준이다. BRC-20의 토큰 작업(예: 발행, 송금)은 Ordinals 프로토콜을 통해 JSON 파일 형태의 상태 정보를 비트코인 거래에 기록함으로써 이루어진다. 이 JSON 데이터는 토큰 이름, 공급량, 보유자 주소 등을 정의한다.
또한 BRC-20은 이더리움 ERC-20처럼 블록체인 전역 상태에 의존하지 않고, 체외 인덱서가 관련 거래를 모두 스캔하여 토큰의 현재 상태를 재구성해야 한다. 예를 들어 특정 주소의 토큰 잔고를 조회하려면, 인덱서는 모든 과거 거래를 읽고 잔고를 계산해야 한다.
Runes
Runes는 BRC-20과 유사한 비트코인 토큰 프로토콜로, 핵심 아이디어는 토큰 상태와 작업을 비트코인 거래 내에 포함시키고, 비트코인의 UTXO(미사용 거래 출력) 모델을 분석하여 토큰 상태를 유지하는 것이다. Runes는 OP_RETURN 필드 또는 기타 표준 필드를 이용해 토큰 송금 및 작업 정보를 기록하며, 각 Rune 토큰 작업은 일반적인 비트코인 거래로 완료된다.
상호 운용성 문제
위에서 언급한 각 프로토콜들의 구현 방식은 모두 다르다. Ordinals는 비트코인 거래에 데이터 형식을 삽입해 정보를 저장하며, BRC-20은 JSON 형식을 사용해 토큰 상태를 정의하고, Runes는 비트코인의 UTXO 모델에 더 크게 의존한다. 이러한 형식들은 서로 호환되지 않아 한 프로토콜에서 저장된 데이터를 다른 프로토콜이 직접 인식하거나 파싱할 수 없다.
또한 BRC-20은 상태 정보가 없으므로 모든 토큰 상태를 외부 인덱서의 재구성을 통해 얻어야 하고, Runes는 UTXO 모델을 통해 상태를 블록체인에 직접 저장하며, Ordinals는 개별 satoshi에 대한 태깅에 집중한다. 이러한 메커니즘들은 통합된 상태 관리 방식을 공유할 수 없다.
각기 다른 프로토콜이 자체적인 토큰 형식과 규칙을 정의하고 있어, 서로 직접 상호작용하거나 상호 지원을 통한 상호 운용성을 달성할 수 없다.
반면 Goldinals는 Ordinals/Runes/BRC-20과 호환되면서도 체외 인덱서 없이 상태를 유지 가능한 새로운 표준을 도입함으로써, 서로 다른 표준 간의 호환 불가 문제를 해결한다.
Goldinals의 핵심 설계 및 기술 구현
Goldinals의 핵심 기능은 다음과 같다:
-
Deploy: 프로토콜 파라미터를 초기화하고 새 토큰 인스턴스를 생성한다.
-
Mint: 새 토큰을 발행하여 지정된 주소에 배분한다.
-
Transfer: 주소 간 토큰을 이전한다.
-
Burn: 토큰을 소각하여 공급량을 줄인다.
ERC-20 및 BRC-20과 유사해 보이지만, 비트코인이 본질적으로 상태를 가지지 않는 설계와 튜링 불완전한 스크립트 언어를 사용하기 때문에 Goldinals의 구현은 더욱 복잡하다. 이더리움처럼 원자적 호출이 자유롭게 이루어지는 것과 달리, Goldinals는 상태 업데이트와 검증을 여러 단계에 걸쳐 세심하게 관리해야 하며, 모든 작업이 비트코인의 보안성을 그대로 계승하도록 보장해야 한다.
Goldinals 상태 머신 및 구체적인 상태 업데이트 과정
Goldinals의 상태 머신은 세 단계로 구성된다: Prepare(준비), Kickoff(시작), Challenge(도전).
Prepare 단계: 작업 의도 기록
이 단계에서 작업 요청자는 비트코인 거래를 통해 작업 의도(송금 또는 발행 등)를 제출하고 관련 메타데이터를 거래에 포함시킨다. 요청자는 OP_RETURN 필드를 사용해 토큰 작업의 매개변수(예: 수취 주소, 금액, 작업 유형 등)를 기록한다. 이 거래는 비트코인 블록체인에 기록되어 작업 의도의 투명성과 위변조 불가능성을 보장한다. ZKOracle(영지식 증명 기반 상태 머신)은 비트코인 블록을 스캔하여 Goldinals 관련 Prepare 거래를 추출하고 글로벌 상태에 반영한다.
Kickoff 단계: 검증 및 작업 시작
Prepare 단계가 완료되면, 요청자는 작업의 합법성을 검증하기 위해 영지식 증명을 포함한 거래를 제출해야 한다. 요청자는 체외에서 영지식 증명(ZKP)을 생성하여 자신의 작업이 프로토콜 규칙(잔고 충분 여부, 매개변수 유효성 등)에 부합함을 입증한다. 이 증명은 Kickoff 거래를 통해 비트코인 네트워크에 제출되며, ZKOracle이 이를 검증한다. Kickoff 단계의 성공은 작업의 합법성이 입증되었음을 의미하지만, 아직 최종 확인 전이며 Challenge 단계가 완료되어야 최종 승인된다.
Challenge 단계: 검토 및 이의 제기
Challenge 단계는 상태 머신 설계의 핵심으로, 작업의 합법성을 보장하기 위한 탈중앙화된 검토 메커니즘을 제공한다. 도전 기간 동안, 누구든지 제출된 작업에 대해 이의를 제기할 수 있다. 예를 들어, 제출된 영지식 증명이 규칙에 부합하지 않을 경우, 도전자(challenger)는 반례를 제출할 수 있다. 도전자는 BitVM이 제공하는 대화형 증명 메커니즘을 활용해 요청자와 검증 절차를 수행한다. 문제가 발견될 경우, 도전자는 체인상 거래를 제출하여 작업의 승인을 차단할 수 있다. 만약 도전 기간 내에 아무런 이의가 제기되지 않으면, 작업은 영구적으로 승인되며 ZKOracle이 Goldinals의 글로벌 상태를 업데이트한다.
송금 및 발행 등의 구현 세부 사항
송금
송금 작업에서, 송신자는 먼저 Prepare 단계를 통해 비트코인 거래를 제출하여 토큰 송금 의도를 체인에 기록한다. ZKOracle은 이 거래를 기록하고 검증한다. Kickoff 단계에서 송신자는 잔고가 충분하고 작업이 규칙에 부합함을 입증하는 영지식 증명을 제출한다. Challenge 단계에서는 도전자가 제출된 증명과 거래가 프로토콜 규칙에 맞는지 검증한다. 이의가 없을 경우 송금이 최종 승인되며, 수신자의 잔고가 업데이트된다.
발행
발행 과정도 송금과 유사하다. 송신자는 Prepare 단계에서 발행 매개변수를 포함한 거래를 제출한다. 이후 Kickoff 단계에서 송신자는 공급 상한선 및 배분 제한 등 프로토콜이 설정한 규칙에 따라 발행 작업이 유효함을 입증하는 영지식 증명을 제공해야 한다. Challenge 단계에서 도전자는 작업이 조건을 충족하는지 검증하며, 이의가 없으면 발행 작업이 최종 승인된다.
잔고 조회
사용자는 비트코인 Core의 scanblocks 명령어를 사용해 자신의 주소와 관련된 모든 Prepare 거래를 스캔하고, 해당 거래의 최종 상태를 확인함으로써 외부 인덱서에 의존하지 않고도 자신의 잔고를 검증할 수 있다.
맺음말
BRC-20 등 기존 프로토콜들과 비교했을 때, Goldinals는 명백한 장점을 가진다. 외부 인덱서에 대한 의존성을 완전히 제거하고, 모든 검증을 비트코인 네트워크를 통해 직접 수행함으로써 탈중앙화 수준을 높였으며, 사용자가 제3자 서비스에 대한 신뢰를 배제할 수 있게 되었다. 또한 Goldinals의 거래 흐름은 더욱 효율적이며, BRC-20처럼 단일 작업을 완료하기 위해 여러 번의 비트코인 거래를 필요로 하는 번거로움을 피함으로써 복잡성과 거래 수수료를 크게 줄였다. 동시에 영지식 증명의 도입을 통해 Goldinals는 다중 서명 지갑, 조건부 송금, 외부 이벤트에 의해 트리거되는 복잡한 로직 등 강력한 프로그래밍 가능성을 갖추었으며, 이는 프로토콜의 적용 범위를 크게 확장한다.
동시에 매우 중요한 점은, Goldinals가 기존 프로토콜들의 기능과 논리를 통합하는 통일된 자산 표준을 도입했다는 것이다. Nubit은 또한 사용자 친화적인 코드를 비트코인용으로 최적화된 스크립트로 변환하는 특수 컴파일러를 개발 중이며, 각 프로그램의 무결성을 수학적으로 검증하기 위한 형식 검증(formal verification)도 함께 수행할 계획이다.
Nubit 공동창업자 한즈이는 "비트코인은 혼란이 아니라 진정한 프로그래밍 가능성이 필요하다."라고 말하며, 강력한 기반과 표준이 마련되면 비트코인 생태계는 혼란에서 벗어나 상호 운용 가능한 긍정적 혁신으로 나아갈 것이라고 강조했다.
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News














