Skip to main content

10 posts tagged with "blockchain"

View All Tags

난관을 넘어 프레임워크를 만들기까지: Midnight 개발기

· 6 min read
Kaleab Abayneh
Kaleab Abayneh
Guest Contributor

올해 세 번의 해커톤에 참가한 뒤, 무엇을 기대해야 하는지 충분히 알고 있다고 생각했습니다. 그런데 네 번째 해커톤은 달랐습니다. 아이디어, 도전, 빈 터미널 화면이라는 똑같은 시작이었지만, 예상치 못한 방향으로 흘러갔습니다.

얼마 전 소프트웨어 엔지니어 직책을 떠나 영지식 프로토콜을 탐구하기 시작했습니다. 경험이 거의 없는 분야였지만, 반드시 도전해야 한다고 느꼈습니다. 영지식 암호학이 수학에서 가장 우아한 분야 중 하나를 기반으로 한다는 점도 있었지만, 블록체인이나 인터넷에서의 프라이버시는 근본적인 가치이며 결코 뒷전으로 밀려서는 안 된다고 믿었기 때문입니다.

어느 날, 멘토가 African Blockchain Championship을 언급하며 Zero-Knowledge 트랙을 살펴보라고 권했습니다. 그 작은 한마디가 전환점이 되었습니다.

바로 그때 Midnight을 발견했습니다!

Meet Midnight: Privacy on the Blockchain

Midnight은 Input Output이 개발한 영지식 증명 기반 프라이버시 체인으로, Cardano의 파트너 체인입니다. 영지식 기술로 더 넓은 생태계에 합리적인 프라이버시를 제공하는 것이 목표입니다. 단순히 또 하나의 블록체인이 아니라, 비공개 분산 컴퓨팅의 기반을 구축하고 있었습니다. 문서를 읽고 도구를 설정하니 준비는 끝났습니다. 남은 건 시작뿐. 나중에야 깨달았지만, 이것은 해커톤의 시작이 아니라 훨씬 더 큰 무언가의 시작이었습니다.

Building on Midnight

Midnight 위에서 개발하는 것은 쉽지 않았습니다. 테스트넷 환경에서는 끊임없이 배워야 했고, 잦은 변경에 계속 적응해야 했습니다. 불과 몇 주 만에 대규모 네트워크 업데이트가 이루어져 기존 예제가 최신 SDK 버전과 호환되지 않게 되었습니다. 결국 예제를 클론해서 한 줄씩 디버깅해야 했습니다. 예제 저장소는 파일과 디렉터리가 겹겹이 쌓여 있어 어디서부터 시작해야 할지 파악하는 것 자체가 도전이었습니다.

다행히 Midnight의 스마트 컨트랙트 언어인 Compact은 TypeScript와 비슷한 문법을 사용해서 학습 곡선이 완만했습니다. 의미 있는 결과물을 만들겠다는 각오로 밀고 나갔지만, 결국 시도는 부족했습니다. 중간고사가 다가오고 해커톤 제출 마감일이 임박한 상황에서 어려운 결정을 내려야 했습니다. African Blockchain Championship 해커톤에 프로젝트를 제출하지 않기로 한 것입니다. 그래도 아쉬움이 남았습니다. 조금만 노력했더라면 어떻게 되었을까 하는 생각이 계속 맴돌았습니다.

The Extended Deadline

약 일주일 뒤, ABC 팀에서 해커톤 마감 기한이 연장되었다는 이메일이 왔습니다. 기뻤고, 이번에는 전력을 다하겠다고 다짐했습니다. 얼마 지나지 않아 다시 작업에 돌입했습니다. 프로젝트를 마지막으로 손댄 지 몇 주가 지난 사이 네트워크와 SDK가 모두 업데이트되어 있었습니다. 장비를 챙기고 환경을 업데이트한 뒤, 이번에야말로 확실한 결과물을 만들겠다는 새로운 각오로 나섰습니다. 컨트랙트를 작성하고 디버깅을 시작했는데, 수정할 때마다 새로운 복잡성이 생겨났습니다. 한 번의 업데이트가 여러 파일에 걸친 변경을 요구했습니다. 좌절스럽고 지치기도 했지만, 이상하게도 짜릿했습니다. 이 혼돈을 단순화하고 과정을 좀 더 직관적으로 만들 방법을 고민하기 시작했습니다. 바로 그때 워크플로우를 간소화하기 위한 작은 스크립트를 만들기 시작했습니다.

그달 초에 질문을 하려고 Midnight Discord에 가입한 적이 있었습니다. 어느 주, Discord 커뮤니티 콜에 참여했는데, 놀랍게도 비동기로 진행 중인 Midnight 도구 해커톤이 있다는 것을 알게 되었습니다. 그 순간 깨달았습니다. 이것이야말로 처음부터 참가해야 할 해커톤이었다는 것을.

From Personal Tool to Shared Project

개인 도구로 시작한 것이 갑자기 더 큰 의미를 갖게 되었습니다. 해커톤 덕분에 다른 사람들과 작업을 공유하고, Midnight 위에서의 스마트 컨트랙트 개발의 미래를 함께 만들어갈 기회가 생겼습니다. 원래 해커톤 제출물에서 잠시 우회하여 도구를 다듬기 시작했고, 단순히 작동하는 것을 넘어 생태계 입문자에게 진정으로 유용한 것을 만들겠다는 목표를 세웠습니다.

Scaffold Midnight & Create Midnight App

그렇게 Scaffold Midnight이 탄생했습니다. 클론해서 바로 쓸 수 있는 GitHub 스타터 템플릿입니다. 하지만 여기서 멈추지 않았습니다. npm 라이브러리로 만들면 더 유용하겠다는 생각이 들었습니다. 모든 의존성이 번들로 포함되어 설치만 하면 바로 사용할 수 있도록 말입니다. 그래서 프로젝트를 다듬어 create-midnight-app의 첫 버전을 출시했습니다. 하나의 문제를 해결하는 것에 그치고 싶지 않았습니다. 하나를 고칠 때마다 또 다른 문제가 드러났습니다. 여러 차례의 반복을 거쳐 계속 개선했고, 지금은 버전 2.1.7에 이르렀으며 최신 Compact 릴리스와 호환되도록 작업 중입니다. 완벽과는 거리가 멀지만, 그래서 더 흥미롭습니다. 매일 아침 새로운 아이디어, 추가할 기능, 개발자 경험을 개선할 더 나은 방법을 떠올리며 일어납니다!

Create Midnight App

핵심적으로 create-midnight-app은 Midnight을 위한 스캐폴딩 npm 라이브러리로, 전체 설정 과정을 자동화합니다. 개발자는 Compact 컨트랙트 작성에만 집중하면 되고, 나머지는 도구가 처리합니다. 지갑 생성, 파우셋 요청, 잔액 확인, API 설정, CLI 업데이트, 함수와 파일 변경에 따른 임포트 갱신까지 자동으로 이루어집니다. 초기 애플리케이션 설정 시간을 30분 이상에서 단 몇 분으로 줄여줍니다.

이 프로젝트를 진행하면서 짜릿한 순간이 여러 번 있었는데, 특히 기억에 남는 것이 하나 있습니다.

꼭 만들고 싶었던 기능 중 하나는 개발자가 코드 에디터를 벗어나지 않고도 테스트넷 토큰을 요청할 수 있는 방법이었습니다. 가장 단순한 아이디어는 터미널에서 공식 Midnight 파우셋으로 직접 요청을 보내는 것이었습니다. 그런데 문제가 있었습니다. 해당 사이트는 스팸과 악용을 방지하기 위해 Cloudflare Turnstile로 보호되어 자동화된 요청을 차단하고 있었습니다. 해커로서 우회 방법을 찾기 시작했습니다. 검색과 지인들의 조언을 통해 CAPTCHA 보호를 우회한다고 주장하는 여러 유료 도구를 시도했습니다. 한나절을 투자했지만 제대로 작동하는 것이 없었습니다. 그때 제네시스 지갑이 떠올랐습니다. 프라이빗 키가 공개되어 있었기 때문입니다. 그래서 파우셋을 호출하는 대신, 제네시스 지갑에서 사용자 지갑으로 직접 토큰을 전송하는 방식으로 우회했습니다. 장기적인 해결책은 아니고 확장성도 부족하지만, 지금은 작동하며 개발자 경험 간소화에 기여하고 있습니다.

Submission and Recognition

마침내 프로젝트를 제출했고, 심사위원들의 반응은 매우 고무적이었습니다. 새 영감을 얻어 원래 해커톤인 African Blockchain Championship으로 돌아갔습니다. 이 대회를 위해 익명의 검열 저항 투표 플랫폼을 구축했습니다. 아프리카 34개국에서 시민의 약 30~40%가 투표를 공정하고 신뢰할 수 있는 과정으로 여기지 않습니다(Afrobarometer, 2023). 따라서 익명 투표는 선택이 아니라 필수입니다. 제 프로젝트 Privote은 영지식 기술로 유권자의 신원과 투표 무결성을 보호하여 이 문제를 해결하고자 합니다.

제출 마감이 다가오면서 큰 난관에 부딪혔습니다. 프런트엔드에 지갑을 통합하는 부분이었습니다. Developer Relations 엔지니어에게 연락하니 예제 코드를 공유해 주셨지만, 시간 안에 동작시킬 수 없었습니다. 마감이 코앞이라 임기응변을 택했습니다. 백엔드에서 터미널을 통해 지갑과 상호작용하는 커스텀 Chrome 확장 프로그램을 급히 만들어 제출 시간에 맞췄습니다. 현재 버전은 프라이버시 면에서 한계가 있지만, 스마트 컨트랙트가 정상적으로 컴파일되고 Midnight 테스트넷에서 상호작용할 수 있어, 탈중앙화 익명 투표의 가능성을 보여줍니다.

Private Hackathon

The Midnight Community

아직 리소스가 풍부하진 않지만, Midnight 커뮤니티가 이를 충분히 메워줍니다. Discord에서 질문하면 거의 항상 답변을 받을 수 있습니다. 해커톤 기간 중 기술적으로는 경쟁 관계인데도, 서로 진심으로 돕는 분위기입니다. 실제로 해커톤 중에 텔레그램 그룹에서 질문에 답하는 일이 잦았습니다. ABC 해커톤에서는 Create Midnight App 사용법에 대한 워크숍을 진행하여 다른 참가자들이 빠르게 시작하고 생태계를 쉽게 탐색할 수 있도록 도왔습니다.

Midnight 팀의 인정도 정말 감사했습니다. CLI 트랙 1위 수상 외에도, 커뮤니티에서 받은 지지와 감사가 진심으로 따뜻했습니다. 커뮤니티 콜에도 참여할 기회가 있었는데, 이번에는 단순한 참가자가 아니라 발표자로서 여정과 배운 점을 공유할 수 있었습니다.

Why Now is the Time to Build on Midnight

독자 여러분, 지금이야말로 Midnight 생태계에 참여하기 가장 좋은 시기입니다. 거의 항상 해커톤이 진행 중이고(정말 놀랍죠!), 현재도 미니 DApp 해커톤이 열려 있습니다. 배우고, 만들고, 프로젝트를 알릴 수 있는 좋은 기회입니다.

Midnight Dapp Hackathon

저는 현재 해커톤을 위한 새로운 프로젝트를 구축하고 있습니다. 프로젝트를 만드는 것도 즐기지만, 인프라 도구를 개발하는 데서 더 큰 보람을 느끼고 있습니다. 장기 목표는 아무것도 설치하지 않고도 Compact 코드를 작성하고 Midnight 테스트넷과 상호작용할 수 있는 웹 기반 Midnight 플레이그라운드를 만드는 것입니다. 앞으로도 Midnight 팀과 협업하며, 특히 영지식 프로토콜 분야에서 역량을 키워나가고 싶습니다.

Web3 기초부터 배우기 - Ethereum 이해하기

· 5 min read
Samantha Holstine
Senior Developer Relations Engineer

지난주 SheFi 코스를 시작했습니다. 여성이 Web3와 탈중앙화 금융(DeFi)을 깊이 있게 배울 수 있도록 설계된 프로그램입니다. 첫 주제 중 하나가 Ethereum이었는데, Ethereum이 무엇인지, 왜 중요한지, 탈중앙화 생태계에서 어떤 위치를 차지하는지를 다루었습니다.

강의 내용을 바탕으로 두 편의 좋은 개요 글을 읽었습니다: Coinbase의 "A Beginner's Guide to Ethereum"Matt의 "Getting Up to Speed on Ethereum". 두 글 모두 Ethereum을 단순한 암호화폐가 아니라 Web3 애플리케이션의 기반 플랫폼으로 이해하는 데 도움이 되었습니다. 빠르게 진화하는 암호화폐 생태계에서 Ethereum이 왜 중요한지, 어떤 점이 인상적이었는지 정리해 봅니다.

Ethereum in a Nutshell

Ethereum은 탈중앙화 컴퓨팅 플랫폼입니다. 누구나 접근할 수 있지만 누구도 단독으로 통제할 수 없는 글로벌 컴퓨터라고 생각하면 됩니다. 블록체인 기반으로 동작하며, 전 세계 노드 네트워크가 활동 기록을 공유하고 검증합니다. Ethereum의 특별한 점은 트랜잭션 저장뿐 아니라 애플리케이션 실행도 가능하다는 것입니다. 이런 앱은 블록체인에 배포되어 작성된 대로 정확히 실행되는 프로그램, 즉 스마트 컨트랙트로 구동됩니다.

Ethereum 네트워크는 개방적이고, 프로그래밍 가능하며, 허가가 필요 없습니다. 누구나 개발할 수 있고, 사용에 별도 승인이 필요 없습니다. 이 구조 덕분에 대출 프로토콜이나 스테이블코인 같은 금융 도구, NFT 마켓플레이스, 탈중앙화 신원 시스템 등 다양한 dApp의 기반이 되었습니다.

Why Ethereum Matters

Ethereum이 중요한 이유는 인터넷을 "읽기-쓰기" 플랫폼에서 "읽기-쓰기-실행" 환경으로 전환하기 때문입니다. 정보를 공유하는 것을 넘어, 중앙 중개자 없이 로직을 직접 실행할 수 있습니다. 이로써 더 투명하고, 견고하며, 접근성 높은 시스템 구축이 가능해졌습니다.

Ethereum의 핵심 돌파구는 개발자가 스마트 컨트랙트를 통해 자신의 로직을 네트워크에 직접 배포할 수 있다는 점입니다. 스마트 컨트랙트는 규칙을 정의하고, 가치를 관리하며, 다른 컨트랙트와 상호작용합니다. 이 모든 것이 신뢰 없이(trustless), 위변조 방지 상태로 이루어집니다. 배포된 스마트 컨트랙트는 변경하거나 검열할 수 없으므로, 사용자는 백엔드가 몰래 바뀔 걱정 없이 안심하고 사용할 수 있습니다.

Ether: The Fuel of the Ethereum Network

Ether(ETH)는 Ethereum의 네이티브 통화입니다. ETH를 단순히 사고팔고 보유하는 암호화폐로 생각하기 쉽지만, 가장 중요한 역할은 연산의 연료입니다. Ethereum 네트워크의 모든 작업에는 가스가 소요되며, 이를 ETH로 지불합니다. 이 구조가 Ethereum의 보안과 인센티브 체계의 핵심이며, 리소스의 책임 있는 사용과 스팸 방지를 보장합니다.

트랜잭션 전송, 스마트 컨트랙트 배포, dApp 상호작용 등 모든 요청에는 처리 비용을 지불해야 합니다. 작업이 복잡할수록 더 많은 가스가 소비됩니다. 가스 가격은 네트워크 수요에 따라 변동하며, 빠른 확인을 위해 더 높은 수수료를 설정할 수도 있습니다. 이런 시장 구조가 개발자에게 더 효율적인 코드를 작성하도록 유도합니다.

The Power of Smart Contracts

스마트 컨트랙트는 Ethereum을 강력하게 만드는 핵심입니다. 블록체인 위에서 규칙을 자동으로 집행하는 자체 실행 프로그램으로, 회사나 사람이 아닌 코드를 신뢰하면 됩니다. Aave 같은 대출 플랫폼, Uniswap 같은 탈중앙화 거래소, Axie Infinity 같은 게임 등 다양한 사용 사례가 스마트 컨트랙트 덕분에 가능해졌습니다.

배포된 스마트 컨트랙트는 공개적이고 검증 가능합니다. 누구나 코드를 확인하고, 상호작용하고, 그 위에 새로운 것을 만들 수 있습니다. 이런 개방성이 구성 가능성(composability) 문화를 만들었습니다. 기존 컨트랙트에 연결하거나, 변형하거나, 완전히 새로운 시스템을 조합할 수 있습니다. Ethereum이 "금융 및 디지털 도구의 레고"로 불리는 이유입니다.

Ethereum Today and Tomorrow

Ethereum은 2015년 출시 이후 크게 발전했습니다. 이제 틈새 실험이 아니라 세계에서 가장 널리 쓰이는 스마트 컨트랙트 플랫폼입니다. 하지만 성장에는 과제도 따랐습니다. 네트워크 혼잡과 높은 가스 비용 때문에 일부 사용자는 dApp을 합리적인 비용으로 사용하기 어려워졌습니다. 이 문제를 해결하기 위해 Ethereum은 여러 차례 대규모 업그레이드를 거쳤으며, 가장 주목할 만한 것이 "The Merge"로 알려진 작업 증명(PoW)에서 지분 증명(PoS)으로의 전환입니다.

지분 증명은 에너지 집약적인 채굴 대신, ETH를 스테이킹한 검증자가 네트워크를 보호하는 합의 메커니즘입니다. 이 전환으로 Ethereum의 에너지 소비가 대폭 줄었고, 샤딩이나 롤업 같은 확장 기술의 기반이 마련되었습니다. 롤업은 다수의 트랜잭션을 하나의 증명으로 묶어 Ethereum 메인넷에 제출하는 기술로, 보안이나 탈중앙화를 희생하지 않으면서 처리량을 높입니다.

레이어 2 네트워크를 통한 생태계 확장도 활발합니다. 레이어 2는 Ethereum 위에 구축되어 오프체인에서 트랜잭션을 처리하되, 최종 정산과 보안은 Ethereum에 의존합니다. Arbitrum, Optimism, zkSync 같은 프로젝트가 Ethereum을 일반 사용자에게 더 빠르고 저렴하게 만들고 있습니다.

How Ethereum Connects with Midnight

Ethereum이 Web3의 기반 스마트 컨트랙트 플랫폼이라면, Midnight은 그 기능을 보완하고 확장합니다. 특히 프라이버시 영역에서 그렇습니다.

Ethereum 생태계(지갑, 개발 환경, 스마트 컨트랙트 모델)에 익숙한 개발자라면 비슷한 패턴으로 Midnight을 사용할 수 있습니다. Midnight의 스마트 컨트랙트 언어 Compact은 Solidity와 유사한 프로그래밍 방식을 지원하며, 프라이버시 제약을 강제하는 검증 가능한 서킷으로 컴파일됩니다. 덕분에 투표 시스템, 토큰 전송, 신원 확인 등 Ethereum에서는 공개될 수밖에 없는 애플리케이션의 비공개 버전을 구축할 수 있습니다.

Ethereum은 프로그래밍 가능성과 탈중앙화를 제공하지만, 모든 온체인 트랜잭션이 기본적으로 투명합니다. Midnight은 이 빈자리, 즉 프라이버시 레이어를 채웁니다. 공개 자산과 스마트 컨트랙트는 Ethereum에 두고, 민감한 데이터와 기밀 로직은 Midnight이 처리하는 워크플로우를 생각해 보세요. 두 네트워크를 연결하면 더 풍부한 프라이버시 보존 애플리케이션을 만들 수 있습니다.

Ethereum과 Midnight은 탈중앙화 스택에서 상호 보완적인 역할을 합니다. Ethereum이 개방성과 구성 가능성을 제공하고, Midnight이 선택적 공개와 비공개 연산을 더함으로써, Ethereum 단독으로는 불가능한 방식의 안전하고 규정 준수 가능한 애플리케이션 구축이 가능해집니다.

Conclusion

Ethereum은 단순한 암호화폐가 아니라 새로운 인터넷을 만들기 위한 플랫폼입니다. 프로그래밍 가능한 로직과 탈중앙화 인프라를 결합하여, 개방적이고 투명하며 사용자가 소유하는 애플리케이션을 실현합니다. DeFi, NFT, 그리고 온라인 상호작용의 수많은 실험이 모두 Ethereum 위에서 이루어지고 있습니다.

SheFi 코스를 시작하고 이 글들을 읽으면서 Ethereum이 무엇이고 왜 중요한지 기초를 다질 수 있었습니다. 코인을 사는 것이 아니라, 디지털 세계에서 신뢰, 소유권, 가치에 대한 사고방식 자체를 바꾸는 것입니다.

다음 주에 Web3의 핵심 구성 요소를 이어서 다루겠습니다. 이제 막 시작하시는 분이라면 Coinbase의 입문서Matt의 분석을 꼭 읽어보세요.

Web3 기초부터 배우기 — 스마트 컨트랙트와 Compact 언어

· 5 min read
Samantha Holstine
Senior Developer Relations Engineer

Web3 세계를 탐험하면서 Midnight 같은 프라이버시 우선 플랫폼의 핵심 구성 요소를 하나씩 파고들고 있습니다(이전 글은 Midnight Dev Diaries에서 확인하세요!). 이번 주에는 밀접하게 연관된 두 가지 기초에 집중했습니다: Midnight의 smart contract와 이를 구동하는 Compact 언어입니다.

Smart contract 자체는 blockchain에서 새로운 개념이 아니지만, Midnight의 접근 방식은 독특합니다. 코드를 온체인에서 직접 실행하는 대신, smart contract로 규칙만 정의하고 실제 적용은 오프체인에서 zero-knowledge proof를 통해 처리합니다. 이 시스템의 핵심이 바로 Compact입니다. 프라이버시를 보존하는 contract를 안전하고 실용적으로 작성하기 위해 설계된 전용 언어입니다.

실제 작동 방식을 더 잘 이해하기 위해 Midnight Developer Academy의 Module 2도 진행했습니다. 이 모듈에서는 contract 구조, circuit 유형, contract와 외부 실행 로직 간의 관계를 다룹니다.

이번 글에서는 Midnight의 smart contract가 무엇이 다른지, Compact의 구조는 어떤지, 그리고 이 둘이 어떻게 협력하여 민감한 데이터를 노출하지 않으면서 증명 가능한 로직을 구현하는지 설명하겠습니다.

What Is a Smart Contract on Midnight?

큰 그림에서 보면, smart contract는 blockchain에 저장된 자율 프로그램입니다. 상호작용 규칙을 정의하고, 규칙 충족 여부를 확인하며, 결과를 기록합니다. 신뢰할 수 있는 제3자가 필요 없습니다.

하지만 Midnight은 일반적인 blockchain이 아닙니다. 컴플라이언스를 고려한 프라이버시 우선 플랫폼이므로, smart contract가 로직 실행 이상의 역할을 해야 합니다. 개인 데이터를 보호하고, selective disclosure를 지원하며, 적대적인 환경에서도 보안과 신뢰를 유지해야 합니다.

이 지점에서 Compact이 등장합니다. Midnight의 smart contract 작성을 위해 설계된 도메인 특화 언어입니다.

기존 smart contract와 달리 Compact contract는 온체인에서 직접 로직을 실행하지 않습니다. 대신 증명해야 할 로직을 정의합니다. Contract에는 준수해야 할 규칙이 인코딩되어 있고, 이 규칙이 zero-knowledge proof의 기반이 됩니다. 실제 실행(transaction 처리, 자격 증명 생성, 투표 제출 등)은 외부에서 이루어지며, 보통 DApp, 백엔드 서비스, API가 담당합니다.

외부 시스템이 필요한 로직을 실행한 뒤, 암호학적 proof를 생성하여 contract 규칙을 준수했음을 증명합니다. Blockchain은 세부 사항을 알 필요 없이 proof의 유효성만 검증하면 됩니다. 이러한 분리 구조 덕분에 Midnight 모델은 확장성과 프라이버시를 동시에 확보할 수 있습니다.

정리하면, contract가 규칙을 정하고, 앱이 로직을 실행하며, blockchain은 민감한 입력값 없이 결과만 검증합니다.

What Is Compact?

Compact은 Midnight 네트워크의 고유한 목표에 맞춰 설계된 정적 타입, 프라이버시 중심 smart contract 언어입니다. JavaScript나 TypeScript 경험이 있다면 꽤 친숙하게 느껴질 것입니다. 정적 타입 circuit을 사용해 오프체인 연산에 매핑되는 zero-knowledge proof 로직을 정의하는 도메인 특화 언어(DSL)입니다. 다만 간결한 문법에 속아서는 안 됩니다. Compact은 내부적으로 zero-knowledge proof(ZKP) 기반의 프라이버시 보존 연산을 위해 설계되었습니다. (더 깊은 기술적 내용은 Kevin Millikin의 Compact Deep Dive를 여기에서 확인하세요!)

Compact contract는 세 가지 핵심 구성요소로 이루어집니다:

  • Ledger: Contract의 공개적인 온체인 상태입니다.
  • Circuit: 데이터를 조작하고, proof를 생성하며, ledger와 상호작용하는 오프체인 로직입니다.
  • Witness: 비공개로 보유된 데이터로, contract를 실행하는 주체만 알고 있습니다.

Compact은 explicit disclosure도 지원합니다. 어떤 데이터를 누구에게 공개할지 개발자가 정확히 정의할 수 있습니다. 온체인에서 무엇이 보이고 무엇이 비공개인지 세밀하게 제어할 수 있어, 비공개 자산 전송, 연령 인증 접근, 기밀 투표 등에 필수적입니다.

Circuits and Privacy

Midnight Developer Academy Module 2에서 가장 중요한 개념 중 하나가 circuit의 작동 방식입니다. Compact에서 circuit은 사용자나 시스템이 호출하여 작업을 실행하는 함수입니다. 하지만 Web2 API나 EVM contract 함수와 달리, blockchain에서 직접 로직을 실행하지 않습니다. 오프체인에서 실행된 뒤, 로직을 준수했다는 zero-knowledge proof를 생성합니다.

구체적으로는 다음과 같습니다:

  • Contract 로직은 공개입니다.
  • 실행 중 사용되는 데이터는 비공개입니다.
  • 로직의 결과(예: "규칙이 준수되었음")는 proof를 사용하여 공개적으로 검증 가능합니다.

이것이 Midnight 모델의 핵심 강점입니다. 실제 데이터를 공개하지 않고도 규칙을 준수했음을 증명할 수 있습니다. 예를 들어, 자신이 누구인지, 무엇에 투표했는지 공개하지 않으면서도 "투표 자격이 있음"을 증명하는 것이 가능합니다.

From Theory to Practice

기존 smart contract 플랫폼에서는 데이터, 로직, 입력, 출력 모두 기본적으로 공개됩니다. 투명성 측면에서는 유용하지만, 건강 데이터, 금융 기록, 신원 확인 같은 민감한 사용 사례에는 적합하지 않습니다.

Midnight은 이 기본값을 뒤집습니다. 프라이버시가 기본으로 내장되어 있고, 개발자가 필요한 경우에만 선택적으로 공개합니다.

Midnight에서 Compact으로 구축할 수 있는 사례는 다음과 같습니다:

  • 결과만 공개되는 투표 시스템
  • 신원을 드러내지 않고 사용자 속성을 확인하는 접근 제어 시스템
  • 금액이나 발신자를 숨기면서도 공개 검증이 가능한 토큰 전송 앱

Conclusion

Smart contract는 탈중앙화 애플리케이션의 기반이며, Midnight에서는 프라이버시 우선 미래를 위해 설계되었습니다. 모든 로직을 온체인에서 실행하는 대신, 로직 정의와 실행을 분리합니다. Compact을 통해 개발자는 zero-knowledge proof 시스템의 규칙을 정의하고, 민감한 데이터 없이도 사실을 증명할 수 있는 애플리케이션을 만들 수 있습니다. 이것은 안전하고, 확장 가능하며, 사용자를 보호하는 Web3를 향한 실질적인 전환입니다.

Midnight에서 이것은 이론적 개선이 아닙니다. 플랫폼의 핵심 작동 원리입니다. Compact smart contract로 입력과 실행을 오프체인에 유지하면서 검증 가능하고 감사 가능한 로직을 작성할 수 있습니다. ZKP, shielded transaction과 결합하면 프라이버시와 탈중앙화를 모두 유지하면서 실제 사용 사례를 지원하는 인프라가 완성됩니다.

Web3에서 smart contract 구축법을 배우고 있거나 전체 구조가 어떻게 연결되는지 궁금하다면, Midnight Developer Academy의 Module 2Compact Language Reference를 참고하세요. 개념을 단계별로 설명하며, Midnight 아키텍처가 고급 암호학을 실용적인 개발 도구로 어떻게 전환하는지 보여줍니다.

다음 주에도 탈중앙화 세계에서 프라이버시 우선 시스템을 구성하는 요소들을 계속 다루겠습니다.

Web3 기초부터 배우기 — 선택적 공개(Selective Disclosure) 이해하기

· 7 min read
Samantha Holstine
Senior Developer Relations Engineer

Web3 세계를 더 깊이 탐구하면서 업계에 대한 이해를 넓히기 위해 기초 개념을 하나씩 짚어가고 있습니다(지난 다섯 편의 글은 Midnight Dev Diaries에서 확인하세요!). 이번 주에는 지금까지 만난 개념 중 가장 실용적이고 프라이버시에 초점을 맞춘 아이디어인 selective disclosure를 깊이 다루었습니다.

Selective disclosure는 단순한 기술적 기능이 아닙니다. Rational privacy라는 더 넓은 개념의 실제 구현입니다. 특정 상호작용에서 필요한 것만 증명하거나 공개하고, 나머지는 모두 비공개로 유지합니다. 중앙 권위 없이 신뢰를 쌓아야 하는 생태계에서, 법적 또는 운영상의 요구사항을 충족하면서 개인 데이터를 보호할 수 있다는 점은 매우 중요합니다.

이 글에서는 selective disclosure의 작동 방식, 장점, 그리고 Midnight이 프라이버시 우선 smart contract를 통해 이를 어떻게 구현하고 있는지 살펴봅니다.

What Is Selective Disclosure?

Web3 세계에서 프라이버시는 모든 것을 비밀로 유지하는 것이 아닙니다. 필요한 것만 공유하는 것입니다. Selective disclosure는 특정 상호작용에서 필요한 정보만 공개하고 다른 모든 개인 데이터는 기밀로 유지하는 프라이버시 보존 기법입니다.

이 접근 방식은 rational privacy라는 더 넓은 개념을 구체화한 것입니다. Rational privacy란 프라이버시가 전부 아니면 전무가 아니라 맥락에 따라 조절되어야 한다는 생각입니다. 실제로 많은 상황에서 사용자는 서비스 접근이나 법적 의무 이행을 위해 일부 데이터를 공유해야 하지만, 그 과정에서 모든 프라이버시를 포기할 필요는 없습니다. 개인 통제, 사용성, 규제 준수 사이의 균형을 맞추는 것이 핵심입니다.

Selective disclosure는 이 rational privacy를 기술적으로 구현한 것입니다. 민감한 정보를 기본적으로 보호하면서, 필요할 때 적절한 수준의 투명성을 제공할 수 있는 암호학적 도구를 사용자와 개발자에게 제공합니다. 데이터가 불변적이고 기본적으로 공개되는 공개 blockchain 네트워크에서 특히 중요합니다.

Selective disclosure의 대표적인 사례는 Verifiable Credential(VC)의 사용입니다. VC를 통해 사용자는 전체 자격 증명을 공개하지 않고도 나이, 거주지, 학력 같은 속성을 증명할 수 있습니다. 이는 데이터 최소화와 privacy by design의 원칙에 부합하며, 개인이 자신의 정보를 통제할 수 있게 합니다.

이처럼 사용성과 프라이버시의 균형을 잡을 수 있다는 점이 selective disclosure의 강점이며, 실제 blockchain 애플리케이션에 매우 적합한 이유입니다. 그렇다면 기술적 구현을 넘어 실질적인 이점은 무엇일까요?

Benefits of Selective Disclosure

적절히 통합하면 selective disclosure는 탈중앙화 시스템에 기술적이면서도 사용자 중심적인 장점을 제공합니다. 기능을 희생하지 않으면서 프라이버시 기대치와 컴플라이언스 기준을 동시에 충족할 수 있습니다. 주요 장점은 다음과 같습니다:

  • Enhanced Privacy: 전체 자격 증명이나 신원 문서를 공개하지 않고, 특정 상호작용에 필요한 데이터만 공유할 수 있습니다. 프라이버시 침해와 감시 위험이 크게 줄어듭니다. 서비스 접근, 양식 제출, smart contract 상호작용 등 어떤 경우에도 불필요한 개인 데이터가 노출되지 않습니다.
  • Data Minimization and Compliance: 데이터 최소화 원칙은 GDPR, HIPAA 같은 프라이버시 법규의 핵심으로, 작업에 필요한 최소한의 개인 데이터만 수집/처리하도록 요구합니다. Selective disclosure는 이 원칙을 자연스럽게 실현하므로, 개발자와 조직이 프라이버시를 기본으로 존중하는 시스템을 설계하기 쉬워집니다.
  • User Empowerment and Control: 기존 시스템에서는 나이만 증명하려고 신분증 전체를 업로드하는 식으로, 작은 검증을 위해 전체 데이터를 넘기는 경우가 많습니다. Selective disclosure는 이 구조를 뒤집어, 무엇을 언제 누구에게 공유할지 사용자가 직접 통제합니다. 개인이 자신의 자격 증명을 관리하는 사용자 중심 데이터 모델에 부합합니다.
  • Reduced Risk of Data Misuse: 노출 정보가 줄어들수록 데이터 유실, 도난, 오용 위험도 줄어듭니다. 대규모 ID 데이터베이스 같은 중앙 집중식 저장소의 필요성이 감소하여, 사기와 신원 도용에 대한 공격 경로가 제한됩니다. Transaction이나 자격 증명이 중간에 가로채이더라도 최소한으로 공개된 속성만 노출됩니다.
  • Lower Liability and Operational Overhead for Businesses: 많은 조직이 위험, 규제 요구, 관리 부담 때문에 민감한 사용자 데이터의 수집과 저장을 꺼립니다. Selective disclosure를 활용하면 사용자가 조직에 데이터를 맡기지 않고도 자격이나 컴플라이언스를 입증할 수 있습니다. 비용 절감, 운영 간소화, 전반적인 데이터 보안 수준 향상으로 이어집니다.

Selective disclosure가 사용자 중심 프라이버시의 강력한 모델이지만, 기술적/사용성 측면에서 고유한 과제도 있습니다. 이러한 한계를 이해하는 것은 책임감 있는 도입을 위해 필수적입니다.

Potential Drawbacks

Selective disclosure가 프라이버시와 통제를 강화하지만, 실제 구현이 항상 간단하지는 않습니다. 주요 과제는 다음과 같습니다:

  • Complexity in Implementation: Selective disclosure는 zero-knowledge proof 등 고급 암호학 기술에 의존합니다. 신중한 설계, 정밀한 구현, 깊은 보안 지식이 필요합니다. 저처럼 Web3나 암호학에 새로 입문한 개발자에게는 학습 곡선이 가파르고, 구현 실수가 의도한 프라이버시 보호를 약화시킬 수 있습니다.
  • Verification Difficulties: 자격 증명이나 진술의 일부만 공개할 때, 진위 확인이 더 복잡해질 수 있습니다. 원본 데이터 전체에 접근하지 않고도 부분 공개를 신뢰할 수 있도록 시스템을 설계해야 합니다. 추가 메타데이터나 proof가 필요한 경우가 많아 시스템 복잡성이 높아지고 검증 속도가 느려질 수 있습니다.
  • Interoperability Challenges: 모든 탈중앙화 신원 시스템이 동일한 형식이나 표준을 따르지는 않습니다. 한 플랫폼에서 발행한 자격 증명이 다른 플랫폼에서 쉽게 검증되지 않을 수 있으며, selective disclosure 같은 고급 기능에서 특히 그렇습니다. 널리 채택된 프로토콜과 인프라가 부족하면 크로스 플랫폼 호환성이 제한되어 selective disclosure 데이터의 활용 범위가 좁아집니다.

이러한 과제는 실재하지만 극복 불가능하지는 않습니다. Midnight을 포함한 프라이버시 보존 blockchain 프로젝트들은 selective disclosure를 더 실용적이고 개발자 친화적으로 만들고, 생태계 간 상호운용성을 높이는 데 집중하고 있습니다.

Use Cases of Selective Disclosure

Selective disclosure는 과도한 정보 공개 없이 무언가를 증명해야 하는 모든 상황에서 활용됩니다. 민감한 데이터를 다루면서도 컴플라이언스, 신뢰, 투명성이 요구되는 시스템에 특히 유용합니다. 대표적인 분야를 살펴보겠습니다:

  • Digital Identity Verification: 서비스에 접근하기 위해 18세 이상임을 증명하되, 운전면허증을 업로드하거나 생년월일과 주소를 전부 공개하지 않아도 됩니다. Selective disclosure를 통해 전체 자격 증명이 아닌, 관련 사실(예: "18세 이상")만 검증 가능한 진술로 제시할 수 있습니다.
  • Financial Transactions: 금융 플랫폼은 종종 신원이나 transaction 정당성(KYC/AML 컴플라이언스)을 확인해야 하지만, 사용자가 전체 금융 이력이나 지갑 활동을 공유할 필요는 없습니다. Selective disclosure를 통해 법적으로 필요한 것만 공유할 수 있습니다. 그 이상도 이하도 아닙니다.
  • Healthcare: 환자가 전체 의료 기록을 공개하지 않고 예방접종 상태나 의료 자격을 증명해야 할 수 있습니다. Selective disclosure를 통해 필요한 속성(예: "X에 대해 예방접종 완료")만 공유하고 나머지는 비공개로 유지할 수 있습니다.
  • Access Control: 장소 입장이든 온라인 서비스 접근이든, 사용자는 멤버십, 역할, 자격 증명 같은 속성에 따라 접근이 허용되거나 거부될 수 있습니다. Selective disclosure는 불필요한 식별 정보를 노출하지 않으면서 이러한 접근 로직을 실행할 수 있습니다.

Selective Disclosure in the Midnight Network

Midnight에서 selective disclosure는 단순한 프라이버시 기능이 아니라, rational privacy에 기반한 핵심 설계 원칙입니다. Rational privacy는 민감한 데이터를 보호해야 하지만, 실제 애플리케이션은 규제, 법률, 운영상의 이유로 통제된 가시성도 필요하다는 것을 인식합니다.

금융 transaction을 예로 들어 보겠습니다. Midnight 위에 구축된 탈중앙화 금융 플랫폼은 사용자 잔액, 이체, transaction 이력을 비공개로 유지하고 싶을 수 있습니다. 그러나 자금세탁방지(AML)나 고객확인(KYC) 규정에 따라 특정 정보를 공개해야 할 수도 있습니다. 다만, 권한이 있는 당사자에게만, 특정 법적 조건하에서만 공개됩니다.

이 지점에서 selective disclosure와 zero-knowledge proof가 결합됩니다. Midnight의 Compact smart contract 언어로 전체 transaction 세부 사항을 공개하지 않으면서 transaction 유효성(예: 특정 한도 이하, 규제 필터 준수)을 증명하는 로직을 구축할 수 있습니다. 규제 감사가 발생하면 필요한 정보만 선택적으로 공개하고, 그 이상은 공개하지 않습니다.

이를 통해 Midnight에서는 개인 프라이버시를 존중하면서 규제 요구사항도 준수하는 애플리케이션을 구축할 수 있습니다. 현실 세계에서 신뢰가 작동하는 방식 그대로입니다: 필요한 것만, 필요할 때만, 적절한 상대에게만 공유합니다.

Conclusion

Selective disclosure는 사용자의 실제 상황에 맞는 유연하고 강력한 프라이버시 접근 방식입니다. 자신의 정보를 직접 통제하면서, 요구사항 충족에 필요한 최소한의 정보만 공유할 수 있습니다. 신원 확인, 자격 증명, 금융 규정 준수 등 어떤 경우든 프라이버시를 실용적이고 효과적으로 구현합니다.

Midnight에서 이 개념은 이론을 넘어 플랫폼 아키텍처에 내장되어 있습니다. Compact smart contract와 zero-knowledge proof를 통해, 사용자 보호와 실제 요구 사이의 균형을 맞추는 시스템을 구축할 수 있습니다. Rational privacy의 실현입니다.

Web3에서 프라이버시를 위한 개발 방법을 탐구하고 있거나 이러한 시스템의 작동 원리를 배우고 있다면, 더 많은 예시와 기술적 통찰을 위해 Midnight docsAcademy를 확인해 보시기 바랍니다. 아래에 selective disclosure에 대한 추가 읽을거리도 함께 정리했습니다:

항상 그렇듯, Web3에서 프라이버시나 신원에 관한 좋은 학습 자료를 발견하셨다면 공유해 주세요!

다음 주에도 탈중앙화 시스템을 구성하는 핵심 요소들을 계속 풀어나가겠습니다.

Web3 기초부터 배우기 — Merkle Tree와 DAO 파헤치기

· 6 min read
Samantha Holstine
Senior Developer Relations Engineer

Web3 학습 여정을 이어오면서 주로 Cardano AcademyMidnight Academy를 진행하고 그 내용을 Midnight Dev Diaries에 기록해 왔습니다. 하지만 이번 주에는 범위를 넓혀 생태계 전반의 초보자 친화적 자료를 다양하게 탐색해 보았습니다. 그 과정에서 반복적으로 등장하는 두 가지 기초 개념을 발견했습니다: Merkle Tree와 DAO(Decentralized Autonomous Organization, 탈중앙화 자율 조직)입니다.

이 두 주제는 blockchain이 약속하는 투명성 보장, 데이터 무결성 검증, 탈중앙화 거버넌스의 핵심입니다. 아래에 핵심 내용을 정리했으며, 더 깊이 알고 싶다면 글 끝에 참고 자료 목록을 첨부했습니다.

Merkle Trees: Ensuring Data Integrity

Merkle Tree는 해시 트리라고도 하며, 대규모 데이터를 효율적이고 안전하게 검증할 수 있는 데이터 구조입니다. 본질적으로 이진 트리의 특수한 형태입니다. 이진 트리는 Web2 개발자에게도 익숙한 구조로, 각 노드에 최대 두 개의 자식 노드가 있습니다. Merkle Tree의 차이점은 값을 직접 저장하는 대신 해시를 저장한다는 것입니다. 이 해시가 데이터 블록을 대표하며, 트리 전체 데이터에 대한 간결하고 위조 불가능한 요약을 제공합니다.

Merkle Tree가 blockchain에서 중요한 이유는 수천 건의 transaction 같은 대규모 데이터를 효율적이고 안전하게 검증할 수 있기 때문입니다. 모든 transaction을 일일이 확인할 필요 없이, 해시의 작은 부분 집합(Merkle proof)만으로 특정 transaction이 블록에 포함되어 있는지 확인할 수 있습니다.

Merkle Tree가 구축되는 과정을 간단히 정리하면 다음과 같습니다:

  1. 데이터 블록(블록 내 transaction 등)에서 시작합니다.
  2. 각 데이터 블록이 개별적으로 해시됩니다. 이 해시들이 리프 노드가 됩니다.
  3. 리프 해시 쌍이 함께 해시되어 트리의 다음 레벨을 형성합니다.
  4. 이 과정이 반복되어 해시를 쌍으로 결합하며 트리를 올라가고, 최종적으로 하나의 루트 해시, 즉 Merkle Root만 남게 됩니다.

요약하면, 각 리프 노드는 데이터 블록의 해시를 포함하고, 각 비리프 노드는 자식 노드의 해시를 포함하며, 루트 해시는 전체 데이터 세트를 대표합니다. 단 하나의 데이터 블록이 변경되어도 해당 해시가 바뀌고, 이것이 트리 위로 연쇄적으로 전파되어 Merkle Root가 변경됩니다. 이 속성은 데이터 불변성과 무결성이 핵심인 blockchain 시스템에서 매우 중요합니다.

실제로 Merkle Tree는 다음과 같은 곳에 사용됩니다:

  • Blockchain Transaction: 블록 내 transaction이 변조되지 않았음을 보장합니다.
  • Proof of Reserves: 암호화폐 거래소가 개별 계좌 잔액을 공개하지 않으면서도 사용자 예치금을 충당할 충분한 자산을 보유하고 있음을 증명하는 데 Merkle Tree를 사용합니다.

DAOs: Redefining Organizational Governance

DAO(Decentralized Autonomous Organization, 탈중앙화 자율 조직)는 blockchain의 smart contract로 운영되는 조직으로, 중앙 리더십이 필요 없습니다. 기존의 하향식 리더십 대신 투명하고 커뮤니티 주도적인 거버넌스를 채택하며, 모든 것이 smart contract를 통해 실행됩니다.

DAO에서는 규칙과 운영이 사전에 프로그래밍되어 온체인에 저장됩니다. 누구나 의사결정 과정, 자금 배분 방식, 제안 처리 절차를 확인할 수 있습니다. 모든 것이 기본적으로 투명하고 감사 가능합니다. CEO나 이사회 대신 커뮤니티가 집단으로 결정을 내립니다. 토큰 보유자가 제안에 투표하며, 결과는 프로젝트 지분 비중을 반영합니다. 이 집단적 의사결정 구조가 DAO를 태생적으로 탈중앙화되게 만듭니다. 규칙이 smart contract로 자동 집행되므로, 수동 개입이나 중앙 관리자 없이도 자율 운영이 가능합니다. 제안이 통과되면 smart contract가 즉시 결정을 실행합니다. 누군가 버튼을 누를 때까지 기다릴 필요가 없습니다.

그러나 DAO도 다음과 같은 과제에 직면합니다:

  • 보안 위험: Smart contract의 취약점이 악용될 수 있습니다.
  • 거버넌스 문제: 낮은 투표 참여율과 토큰 집중은 중앙화를 초래할 수 있습니다.

DAO는 다양한 분야에서 활용되고 있습니다:

  • 투자 펀드: 자원을 모아 프로젝트에 집단적으로 투자합니다.
  • 자선 단체: 회원 투표를 통해 기금 배분을 결정합니다.
  • 프로토콜 거버넌스: Blockchain 프로토콜을 관리하고 업데이트합니다.

How DAO Voting Works (The Simple Version)

대부분의 DAO는 토큰 기반 투표를 사용하여 의사결정에 도달합니다:

  1. 회원이 거버넌스 토큰을 보유하며, 이것이 투표권을 부여합니다.
  2. 제안이 제출됩니다(예: "새 개발 프로젝트에 자금 지원").
  3. 토큰 보유자가 제안에 찬성 또는 반대 투표를 합니다.
  4. 일정 기준(정족수나 과반수 등)에 도달하면, 제안이 승인되고 smart contract에 의해 자동으로 실행됩니다.

온체인 투표 외에도 많은 DAO가 오프체인 거버넌스 플랫폼을 활용합니다. Snapshot(토큰 가중치 투표에 널리 사용), Aragon Voice, Tally(Governor contract와 함께 사용), Coordinape(탈중앙화 보조금 및 동료 투표에 사용) 등이 대표적입니다. 이러한 도구는 유연성을 높이고, 가스 비용을 줄이며, 실험적인 거버넌스 방식도 지원합니다.

토큰을 많이 보유할수록 더 많은 투표권을 갖게 됩니다. 이는 기업에서 주주가 투표하는 것과 유사하지만, 과정이 전적으로 온체인에서 중개자 없이 이루어집니다.

일부 DAO는 고래(대량 보유자)가 과정을 지배하는 것을 방지하기 위해 이차 투표나 기타 메커니즘을 사용하지만, 핵심 아이디어는 동일합니다: 커뮤니티가 로드맵을 주도합니다.

Interplay Between Merkle Trees and DAOs

Merkle Tree와 DAO는 blockchain에서 서로 다른 목적을 갖습니다. 하나는 데이터 무결성, 다른 하나는 거버넌스에 초점을 맞추고 있습니다. 하지만 이 둘은 강력하게 보완 관계를 이룹니다. 두 기술을 결합하면 DAO가 규모를 키우면서도 안전하고 투명하며 효율적으로 운영될 수 있습니다.

예를 들어, 적격 투표자 전체 목록을 온체인에 저장하는 대신 해당 목록을 대표하는 Merkle Root만 공개할 수 있습니다. 개별 투표자는 자신이 목록에 포함되어 있음을 짧은 암호학적 proof(Merkle proof)로 증명합니다. 투표 과정이 경량화되고, 프라이버시를 유지하면서도 검증이 가능합니다. 보조금 수혜자나 에어드롭 자격 검증에도 같은 방법을 적용하여 저장 공간과 가스 비용을 절약하면서 무결성을 보장할 수 있습니다.

Merkle Tree는 오프체인과 온체인 활동을 연결하는 다리 역할도 합니다. Snapshot 투표 추적이든 커뮤니티 신원 검증이든, 이 proof 구조가 DAO의 성장에 따른 신뢰와 투명성 유지를 뒷받침합니다.

정리하면 Merkle Tree는 투명성이나 효율성을 희생하지 않으면서 DAO 거버넌스를 확장할 수 있는 암호학적 기반을 제공합니다. 투표자 자격 검증, 자금 분배 증명, 오프체인 데이터와 온체인 작업의 연결 등에서 DAO가 성장하면서도 신뢰와 책임성을 유지하도록 돕습니다. 기초적인 blockchain 자료구조가 탈중앙화 의사결정을 어떻게 뒷받침하는지 보여주는 좋은 사례입니다.

Conclusion

Merkle Tree와 DAO는 blockchain 기술이 기술적 효율성과 커뮤니티 자율성을 어떻게 동시에 달성하는지 보여줍니다. Merkle Tree로 transaction, 투표, 수혜자 목록 같은 대규모 데이터를 빠르고 안전하게 검증할 수 있고, DAO는 커뮤니티가 탈중앙화 프로젝트를 투명하고 공정하게 운영할 수 있는 구조를 제공합니다. 이 둘을 결합하면 탈중앙화를 유지하면서도 신뢰를 확장할 수 있는 실용적인 해법이 됩니다. 투표 검증, 자금 분배, 멤버십 증명 등 이러한 도구는 Web3를 단순한 기술적 전환이 아니라 사람들이 함께 조율하고 결정하며 구축하는 새로운 모델의 기반으로 만들어 줍니다.

이번에 처음으로 Cardano와 Midnight Academy 범위를 넘어 탐색하면서, 이 기술들이 생태계 전반에서 어떻게 설명되고 적용되는지 폭넓게 이해하게 되었습니다. 함께 배우고 있거나 다룬 주제를 더 깊이 파고 싶다면, 특히 도움이 된 자료들을 소개합니다:

Web3 기초를 배우면서 좋은 자료를 발견하셨다면, 댓글이나 답글로 추천 자료를 공유해 주세요! Midnight docs에서도 더 많은 기술적 심화 내용과 실제 사용 사례를 확인할 수 있습니다.

다음 주에도 탈중앙화 세계의 다른 핵심 구성요소를 탐구하겠습니다.