OriginTrail | 노드는 정말 지식을 저장하고 있을까? Proof-of-Knowledge와 Random Sampling

탈중앙화 네트워크의 노드가 “나는 데이터를 보관하고 있다”고 주장한다고 해서 실제로 해당 데이터를 계속 가지고 있다고 확신할 수 있을까요?
Knowledge Asset의 해시와 소유권이 블록체인에 기록돼 있더라도, 실제 그래프 데이터를 제공해야 하는 노드가 파일을 삭제하거나 장기간 오프라인 상태가 된다면 사용자는 필요한 지식에 접근할 수 없습니다.
OriginTrail DKG는 이 문제를 해결하기 위해 Random Sampling이라는 Proof-of-Knowledge 시스템을 사용합니다. 네트워크가 Core Node에 무작위 데이터 조각을 지정하고, 노드는 해당 데이터를 실제로 보유하고 있다는 Merkle Proof를 제출해야 합니다. 유효한 증명은 노드 점수와 보상 배분에 반영됩니다.
블록체인에 기록하는 것과 데이터를 보관하는 것은 다르다
OriginTrail의 Knowledge Asset은 RDF 기반의 그래프 데이터와 소유권, 출처, 암호학적 무결성을 연결한 지식 단위입니다.
발행된 Knowledge Asset에는 온체인 commitment와 UAL이 부여됩니다. 이를 통해 누가 지식을 발행했고 이후 내용이 변경됐는지 확인할 수 있습니다. 그러나 지식 전체를 매번 블록체인에 저장하는 방식은 아닙니다. 실제 그래프 데이터는 DKG 네트워크의 노드가 보관하고 제공해야 합니다.
이 구조는 대규모 데이터를 온체인에 직접 저장하는 비용을 줄일 수 있지만, 새로운 질문을 만듭니다.
노드가 실제 데이터를 가지고 있는지, 필요할 때 응답할 수 있는지, 보상을 받으면서 저장 의무를 제대로 수행하고 있는지를 어떻게 확인할 것인가입니다.
Random Sampling은 단순한 저장 약속을 반복적인 암호학적 증명으로 바꾸는 역할을 합니다.
모든 DKG Node가 같은 역할을 맡는 것은 아니다
DKG V10의 노드는 크게 Edge Node와 Core Node로 나뉩니다.
Edge Node는 사용자와 팀, 애플리케이션, AI 에이전트가 DKG에 연결되는 로컬 게이트웨이입니다. 로컬 지식을 저장하고 Context Graph를 조회하거나 공유할 수 있지만, 기본적으로 온체인 Node Profile을 생성하지 않습니다.
Core Node는 네트워크의 장기적인 저장과 가용성을 담당하는 인프라 계층입니다. Core Node는 온체인 identityId를 가진 Node Profile과 스테이킹 포지션을 사용하며, Storage ACK와 Random Sampling에 참여합니다.
Random Sampling은 Core Node만을 대상으로 작동합니다.
노드가 core 역할로 실행되고, 유효한 온체인 Node Profile을 보유하며, 활성 Sharding Table에 승인된 상태여야 Proof 시스템에 참여할 수 있습니다. Node Profile만 만들었다고 바로 대상이 되는 것은 아니며, 스테이킹과 네트워크 편입 절차가 완료돼야 합니다.
Proof-of-Knowledge는 네 단계로 진행된다
OriginTrail 공식 문서가 설명하는 Random Sampling 과정은 크게 네 단계로 나뉩니다.
1. Challenge — 무작위 데이터 조각을 지정한다
각 Proof Period가 시작되면 온체인 컨트랙트가 Core Node마다 증명해야 할 Knowledge Collection의 일부 데이터 조각을 무작위로 선택합니다.
노드가 자신에게 유리한 데이터만 골라 제출하는 것이 아니라, 네트워크가 확인할 위치를 지정합니다. 어떤 데이터가 선택될지 미리 정확하게 알기 어렵기 때문에, 노드는 자신이 맡은 전체 데이터를 계속 보유해야 합니다.
2. Proof — 해당 데이터의 Merkle Proof를 만든다
Challenge를 받은 Core Node는 지정된 데이터 조각을 이용해 Merkle Proof를 계산하고 온체인에 제출합니다.
Merkle Tree는 많은 데이터를 단계적으로 해시해 하나의 Root로 압축하는 구조입니다. Merkle Proof를 사용하면 전체 Knowledge Collection을 블록체인에 다시 올리지 않고도, 특정 데이터 조각이 기존 commitment에 포함돼 있다는 사실을 확인할 수 있습니다.
온체인 컨트랙트는 제출된 Proof와 commitment를 비교해 노드가 올바른 데이터를 보유하고 있는지 검증합니다.
3. Score — 유효한 증명을 노드 점수에 반영한다
노드가 Proof Period 안에 유효한 증명을 제출하면 해당 결과가 Epoch 동안의 점수에 누적됩니다.
이 점수는 노드가 얼마나 꾸준히 온라인 상태를 유지했고, 자신이 맡은 데이터를 정상적으로 제공했는지를 반영합니다. 한 번의 등록이나 스테이킹만으로 보상을 받는 것이 아니라, 반복되는 데이터 가용성 검증에 참여해야 합니다.
4. Rewards — Epoch가 끝나면 점수에 따라 보상을 배분한다
여러 Proof Period가 포함된 Epoch가 끝나면, 누적된 유효 증명 점수를 기준으로 네트워크 보상이 배분됩니다.
Random Sampling은 데이터 보관 여부를 확인하는 보안 장치이면서, 정상적으로 데이터를 제공하는 노드에 보상을 배분하기 위한 측정 시스템이기도 합니다. V10에서는 이러한 보상 구조가 장기적인 $TRAC 약정을 반영하는 Conviction 모델과 연결됩니다.
Proof Period와 Epoch는 무엇이 다를까?
Random Sampling에서는 시간을 Proof Period와 Epoch라는 두 단위로 나눕니다.
Proof Period는 노드가 새로운 Challenge를 받고 증명을 제출하는 비교적 짧고 반복적인 구간입니다. 노드는 한 번만 데이터를 증명하고 끝나는 것이 아니라, Epoch 안에서 여러 차례 무작위 검사를 받을 수 있습니다.
Epoch는 여러 Proof Period를 묶는 더 긴 보상 주기입니다. 각 Proof Period에서 제출한 유효한 Proof가 누적되고, Epoch가 끝날 때 전체 점수를 기준으로 보상이 계산됩니다.
이러한 반복 검증은 노드가 발행 직후 잠깐만 데이터를 보관한 뒤 삭제하는 행동을 어렵게 만듭니다. 다음 Challenge에서 어떤 데이터가 선택될지 알 수 없기 때문에, 지속적으로 데이터를 보관하고 응답 가능한 상태를 유지해야 합니다.
왜 전체 데이터를 매번 검사하지 않을까?
노드가 가진 전체 그래프 데이터를 매 Proof Period마다 블록체인에 제출한다면 가용성은 확인할 수 있지만, 처리해야 할 데이터와 온체인 비용이 지나치게 커집니다.
OriginTrail은 전체 그래프 대신 작은 데이터 조각을 무작위로 선택해 증명합니다. 공식 문서는 이를 통해 시스템이 수십억 개의 Knowledge Asset까지 확장될 수 있도록 가볍게 설계됐다고 설명합니다.
이는 대형 창고의 모든 물건을 매일 전수 조사하는 대신, 예고 없이 무작위 위치의 물건을 반복 검사하는 것과 비슷합니다.
한 번의 표본 검사만으로 전체 데이터의 영구 보존을 완벽하게 증명하는 것은 아닙니다. 하지만 검사가 반복되고 선택 위치를 미리 예측하기 어렵다면, 일부 데이터만 보관한 채 정상 노드처럼 행동하기가 점점 어려워집니다.
Random Sampling의 핵심은 한 번의 거대한 증명이 아니라 작고 반복적인 증명입니다.
Merkle Proof는 무엇을 확인할까?
Merkle Proof는 노드가 제출한 데이터 조각이 특정 Merkle Root와 연결돼 있음을 확인합니다.
예를 들어 하나의 Knowledge Collection에 수많은 그래프 데이터가 포함돼 있다면, 검증자는 전체 내용을 다시 내려받지 않고도 선택된 조각과 소수의 해시 경로만으로 해당 데이터가 원래 Collection에 포함돼 있는지 계산할 수 있습니다.
따라서 온체인 컨트랙트가 확인하는 것은 다음과 같습니다.
-
Challenge에서 지정한 데이터 조각을 노드가 제시했는가
-
제출한 데이터가 기존 commitment에 포함된 내용과 일치하는가
-
정해진 Proof Period 안에 유효한 증명이 제출됐는가
노드가 원본 데이터를 가지고 있지 않다면 지정된 조각과 올바른 Merkle 경로를 즉시 만들어 내기 어렵습니다.
Proof-of-Knowledge가 내용의 진실까지 증명하는 것은 아니다
Proof-of-Knowledge라는 이름 때문에 노드가 보관한 지식의 정확성까지 검증한다고 오해할 수 있습니다.
하지만 Random Sampling이 확인하는 것은 데이터의 가용성과 보관 여부입니다. 해당 Knowledge Asset이 현실의 사실과 일치하는지, 발행자의 주장이 정확한지는 별도의 Trust Gradient와 Endorsement, Verification 정책이 다뤄야 합니다.
잘못된 정보가 Knowledge Asset으로 발행됐다면 Random Sampling은 그 잘못된 정보가 정상적으로 보관되고 있다는 사실을 증명할 수 있습니다. 내용이 사실인지까지 판단하지는 않습니다.
반대로 지식이 Consensus-verified 상태라고 해도 실제 데이터를 제공하는 노드가 모두 사라진다면 사용자는 이를 조회하기 어렵습니다.
따라서 두 구조는 서로 다른 질문에 답합니다.
-
Trust Gradient: 이 지식은 누가 작성했고 어느 수준까지 검토됐는가?
-
Proof-of-Knowledge: 이 지식을 맡은 노드는 실제 데이터를 계속 보관하고 있는가?
검증 가능한 지식 네트워크에는 내용의 신뢰 상태와 데이터의 가용성이 모두 필요합니다.
스테이킹만으로는 충분하지 않다
Core Node는 네트워크에 참여하기 위해 온체인 프로필과 $TRAC 기반 Staking Conviction을 사용합니다. 그러나 토큰을 잠갔다는 사실만으로 노드가 실제 데이터를 제대로 저장하고 있다는 보장은 없습니다.
Random Sampling은 경제적 약정에 실제 운영 성과를 연결합니다.
노드는 스테이킹으로 네트워크에 장기적인 약정을 제공하고, 반복되는 Proof-of-Knowledge를 통해 자신이 맡은 저장 업무를 수행하고 있음을 보여줍니다. 유효한 증명은 Epoch 점수와 보상에 반영됩니다.
즉, DKG 노드의 역할은 서버를 등록하고 토큰을 잠그는 데서 끝나지 않습니다. 네트워크가 요청하는 순간 실제 지식 데이터를 제공할 수 있어야 합니다.
AI의 장기 기억에는 ‘존재 증명’이 필요하다
AI 에이전트가 과거의 결정과 연구 결과, 업무 기록을 장기간 활용하려면 단순히 해시가 블록체인에 남아 있는 것만으로는 충분하지 않습니다.
에이전트가 질문했을 때 실제 그래프 데이터를 제공할 수 있는 노드가 필요합니다. 데이터가 여러 노드에 보관돼 있더라도, 노드들이 저장 의무를 수행하는지 지속적으로 확인할 수 있어야 합니다.
OriginTrail의 Random Sampling은 무작위 Challenge와 Merkle Proof, Epoch 점수, 보상 배분을 연결해 이 문제를 해결하려 합니다.
노드는 “데이터를 가지고 있다”고 말하는 대신, 네트워크가 선택한 데이터 조각을 반복적으로 증명해야 합니다.
결국 Proof-of-Knowledge가 만드는 변화는 다음과 같습니다.
탈중앙화된 지식의 보관을 노드의 약속에 맡기는 것이 아니라, 실제 데이터를 가지고 있다는 반복 가능한 암호학적 증명으로 확인하는 것.
Trust Gradient가 지식의 검토 수준을 보여준다면, Random Sampling은 그 지식이 필요할 때 다시 꺼내 쓸 수 있도록 네트워크에 남아 있는지를 확인합니다.
댓글 1개
태양새별아빠
2026.09.30 10:39:26
좋은 정보 감사합니다.


2026.09.30 09:43:03