블록체인과 접근 제어의 만남: DecStore가 보여주는 미래형 분산 파일 저장 보안 모델




서론: 탈중앙화 시대, 접근 제어의 새로운 과제

웹3와 블록체인 기술의 발전은 데이터 소유권을 중앙 기관이 아닌 사용자에게 돌려주겠다는 패러다임 전환을 이끌고 있다. 그러나 이 흐름 속에서도 빠뜨릴 수 없는 보안의 핵심 개념이 있다. 바로 '접근 제어(access control)'다. 데이터는 소중하지만, 누구나 아무 때나 접근할 수 있다면 보안은 무너진다.

기존의 접근 제어 방식은 중앙화된 시스템에 최적화되어 있다. 하지만 블록체인 기반의 파일 저장 시스템에서는 '분산된 환경에서' 수천 명의 사용자와 수백만 개의 파일을 효율적으로 관리할 수 있는 방식이 필요하다. 이에 대응하기 위해 Hammoud와 Tarkhanov는 DecStore라는 실증 사례를 통해, 확장 가능한 분산 접근 제어 모델을 제안했다. 이 글에서는 해당 연구의 핵심 개념과 기술적 기여, 그리고 향후 적용 가능성에 대해 탐구해본다.


블록체인과 접근 제어: 왜 어려운가?

블록체인은 기본적으로 '변경 불가능한' 데이터 저장 구조를 갖고 있다. 거래 내역을 블록에 저장하고 이를 체인 형태로 연결함으로써 위변조를 방지한다. 하지만 이 구조는 대용량 데이터를 저장하거나 빈번히 변경이 필요한 데이터를 다루는 데 한계가 있다.

예를 들어, DAC(Discretionary Access Control, 임의 접근 제어)는 사용자-자원 간의 권한을 매트릭스 형태로 저장한다. 만약 1,000명의 사용자가 1백만 개의 파일에 접근할 수 있다면, 이론상 10억 개의 권한 정보를 저장해야 한다. 블록체인에 이런 매트릭스를 저장한다는 건 현실적으로 불가능하다.

RBAC(Role-Based Access Control, 역할 기반 접근 제어)는 이보다 효율적이지만, 그래도 수천 개의 역할과 파일 간 매핑 정보는 여전히 블록체인의 저장 한계를 넘을 수 있다. 기존 연구들은 대부분 중앙 서버에 접근 정책을 저장하거나, 모든 정책을 체인에 올려버리는 비효율적 방식을 사용했다.



제안된 모델: Merkle Tree 기반 하이브리드 접근 제어 시스템

핵심 아이디어

이 연구의 가장 핵심적인 아이디어는 접근 제어 정보를 블록체인이 아닌 오프체인(off-chain)에 저장하고, 그 무결성을 Merkle Tree의 루트 해시만 블록체인에 저장하는 방식이다. 구체적으로:

  • 사용자마다 자신이 접근할 수 있는 파일들의 디렉토리 구조를 Merkle Tree로 구성한다.
  • 이 트리는 각 저장 노드의 Virtual Disk(VD) 단위로 구축되고, 사용자 단위로 병합된다.
  • 병합된 트리는 다시 압축되고 이진 트리 형태로 변환되어 Merkle Proof 생성을 최소화한다.
  • 블록체인에는 이 Merkle Tree의 루트 해시만 저장된다.

이 방식을 통해 1,000명의 사용자와 1백만 개의 파일이 존재하더라도, 블록체인에는 단 1,000개의 해시만 저장되면 된다. 이는 기존 DAC 매트릭스 방식에 비해 저장 용량을 획기적으로 줄여준다.

개인적으로 인상 깊은 점: 사용자 캐싱 구조

개인적으로 주목할 점은, 사용자가 자신의 Merkle Tree 사본을 로컬에 캐싱해 둔다는 구조다. 이는 중앙 서버를 거치지 않고도 사용자가 스스로 증명을 생성할 수 있도록 돕는다. 즉, PIP(Policy Information Point)를 중앙 서버가 아닌 사용자와 저장 노드로 분산시킨 것이다. 이는 진정한 탈중앙화 접근 제어로 가는 실질적인 발걸음이라고 평가할 수 있다.



기술적 구성요소

Merkle Tree의 구조

  • 루트 노드: 전체 트리의 해시값
  • 중간 노드: 디렉토리 또는 결합 노드
  • 리프 노드: 파일 또는 디렉토리 정보

Merkle Proof

사용자는 특정 파일에 접근할 때 해당 파일까지의 Merkle 경로를 증명으로 제출한다. 블록체인은 이 경로와 저장된 루트 해시를 비교해 정당성을 검증한다.

RBAC 적용 방식

RBAC의 경우 각 역할마다 Merkle Tree를 생성하며, 이 역시 루트 해시만 블록체인에 저장된다. 사용자는 자신의 역할에 해당하는 트리를 로컬에 받아 Merkle Proof를 생성한다.



성능 실험과 저장 효율성 분석

성능 비교 실험

1,000명의 사용자와 1,000개의 파일을 대상으로 성능을 측정한 결과, DecStore는 중앙화 시스템과 유사한 응답 속도를 보이면서도 블록체인에 저장되는 데이터 용량은 기존 Hyperledger 대비 90% 이상 감소하는 효과를 보였다. 특히, JSON 기반 트리 구조가 SQLite보다 빠른 응답 속도를 보였다는 점도 주목할 만하다.

작업DecStore(JSON)블록체인(Hyperledger)중앙화 시스템
접근 권한 부여157ms190ms60ms
권한 삭제400ms300ms60ms
접근 검증130ms140ms10ms

저장 효율성 실험

RBAC 기준으로 1,000개의 파일, 100개의 역할을 설정했을 때:

  • DecStore: 592KB
  • 블록체인 직접 저장: 5.4MB


실생활 응용 가능성

1. 정부기관 문서 보안

국가 기관이나 지자체가 내부 문서를 안전하게 공유하면서도, 외부 공격이나 내부 유출에 강한 보안이 요구되는 경우 이 모델이 효과적이다.

2. 의료정보 공유

환자의 의료 정보는 민감한 개인정보이므로 특정 의사, 병원, 보험사에게만 제한적으로 제공되어야 한다. 이때 접근 제어 트리를 환자 단위로 유지하면, 진정한 개인정보 자기 결정권을 구현할 수 있다.

3. 기업 내 문서 관리 시스템

직급, 프로젝트 참여 여부에 따라 문서 접근 권한이 달라지는 기업 환경에서도 RBAC 기반 Merkle Tree 방식은 효율적이고 확장 가능하다.



한계 및 향후 과제

  • 접근 권한이 자주 변경되는 환경에서는 사용자 로컬 트리의 빈번한 동기화가 필요하다.
  • 실험이 로컬 환경에 제한되었기 때문에, 향후 클라우드 기반 대규모 실험이 필요하다.


결론: 블록체인 보안 모델의 새로운 패러다임

Hammoud와 Tarkhanov의 연구는 단순한 이론이 아닌, 실제 구현 가능한 수준의 확장 가능한 분산 접근 제어 모델을 제시했다. 블록체인의 불변성과 Merkle Tree의 효율성, 그리고 사용자 캐싱 구조의 실용성이 결합된 이 모델은, 탈중앙화된 미래 사회에서의 보안 패러다임을 새롭게 정의할 수 있다.



출처:

Hammoud, O., & Tarkhanov, I. A. (2025). A scaling distributed access control model for blockchain-based file storage systems. Frontiers in Blockchain, 8, 1630839. https://doi.org/10.3389/fbloc.2025.1630839