Skip to main content
QUICK REVIEW

[논문 리뷰] Privacy-Preserving Access of Outsourced Data via Oblivious RAM Simulation

Michael T. Goodrich, Michael Mitzenmacher|arXiv (Cornell University)|2010. 07. 07.
Cryptography and Data Security참고 문헌 41인용 수 5
한 줄 요약

이 논문은 제한된 개인 메모리만을 갖는 클라이언트가 서버에 위탁된 데이터에 안전하게 액세스하면서도 액세스 패턴을 서버로부터 숨길 수 있도록 하는 효율적인 오블리비ous RAM(ORAM) 시뮬레이션 기법을 제시한다. 병렬 MapReduce 쿠키키 해싱 알고리즘과 데이터 오블리비어스 외부 메모리 정렬 방법을 조합함으로써, 임의의 상수 $r>1$에 대해 $O(n^{1/r})$의 개인 메모리와 $O(n)$의 저장공간을 사용할 때 $O\left(\log n\right)$의 평균 시간 오버헤드를 달성하며, 성공 확률은 매우 높다. 또는 상수 크기의 개인 메모리로도 $O(\log^2 n)$의 평균 시간 오버헤드를 달성할 수 있으며, 이 경우에도 성공 확률은 매우 높다.

ABSTRACT

Suppose a client, Alice, has outsourced her data to an external storage provider, Bob, because he has capacity for her massive data set, of size n, whereas her private storage is much smaller--say, of size O(n^{1/r}), for some constant r > 1. Alice trusts Bob to maintain her data, but she would like to keep its contents private. She can encrypt her data, of course, but she also wishes to keep her access patterns hidden from Bob as well. We describe schemes for the oblivious RAM simulation problem with a small logarithmic or polylogarithmic amortized increase in access times, with a very high probability of success, while keeping the external storage to be of size O(n). To achieve this, our algorithmic contributions include a parallel MapReduce cuckoo-hashing algorithm and an external-memory dataoblivious sorting algorithm.

연구 동기 및 목표

  • 제한된 개인 메모리만을 갖는 클라이언트가 스토리지 제공자에게 액세스 패턴을 泄露하지 않도록 안전하게 위탁된 데이터에 액세스할 수 있도록 하는 것.
  • 신뢰할 수 없는 서버가 대규모 데이터 세트를 유지하는 환경에서 데이터 오블리비어스 액세스를 달성하는 데 도전하는 것.
  • 오블리비어스 RAM 시뮬레이션에서 계산 및 저장 오버헤드를 최소화하면서도 강력한 프라이버시 보장을 확보하는 것.
  • 특히 병렬 MapReduce 쿠키키 해싱 방법과 데이터 오블리비어스 외부 메모리 정렬 알고리즘을 포함한 새로운 알고리즘 기법을 개발하여 효율적인 ORAM 시뮬레이션을 지원하는 것.

제안 방법

  • 액세스 패턴을 숨기기 위해 다수의 레벨을 갖는 계층적 쿠키키 해싱 구조를 사용하여 데이터를 관리하는 것.
  • 병렬 MapReduce 기반 알고리즘을 활용해 분산 및 오블리비어스 방식으로 쿠키키 해싱을 효율적으로 수행하는 것.
  • 오블리비어스 데이터 재구성에 기여하는 결정적이고 데이터 오블리비어스 외부 메모리 정렬 알고리즘을 설계하는 것.
  • 해시 충돌을 처리하고 높은 성공 확률을 보장하기 위해 크기가 $s \in O(\log n)$인 스태시 메커니즘을 사용하는 것.
  • 성능 유지를 위해 해시 함수에 다항로그적 독립성을 적용하고, 오블리비어스 평가를 가능하게 하는 것.
  • 위의 구성 요소들을 병합하여 개인 메모리는 오직 일부 데이터 구조만을 유지하고 모든 액세스 패턴이 오블리비어스 재해싱 및 데이터 이동을 통해 마스킹되는 계층적 ORAM 시뮬레이션 아키텍처를 구성하는 것.

실험 결과

연구 질문

  • RQ1임의의 상수 $r>1$에 대해 클라이언트가 $O(n^{1/r})$의 개인 메모리만을 갖는 조건에서 오블리비어스 RAM 시뮬레이션을 $O(\log n)$의 평균 시간 오버헤드로 달성할 수 있는가?
  • RQ2상수 크기의 개인 메모리만을 사용하는 조건에서 $O(\log^2 n)$의 평균 시간 오버헤드를 달성하면서도 강력한 프라이버시 보장을 유지할 수 있는가?
  • RQ3효율적인 ORAM 동작을 지원하기 위해 $O\left((N/B)\log_{M/B}(N/B)\right)$의 I/O를 갖는 데이터 오블리비어스 외부 메모리 정렬 알고리즘을 설계할 수 있는가?
  • RQ4쿠키키 해싱을 병렬적이고 오블리비어스적이며 확장 가능한 환경으로 적응시켜 분산 및 위탁 환경에 적합하게 만들 수 있는가?
  • RQ5크기 $n$의 위탁된 데이터에 대해 효율적이고 높은 확률로 오블리비어스 액세스를 달성하기 위해 필요한 최소 개인 메모리 크기는 얼마인가?

주요 결과

  • 논문은 클라이언트가 $O(n^{1/r})$의 개인 메모리를 갖는 조건에서 $O(\log n)$의 평균 시간 오버헤드를 달성하며, 서버의 저장공간은 $O(n)$, 성공 확률은 임의의 $\alpha>0$에 대해 $1 - O(1/n^\alpha)$이다.
  • 상수 크기의 개인 메모리 조건에서는 평균 시간 오버헤드가 $O(\log^2 n)$이며, 이 경우에도 저장공간은 $O(n)$이고 성공 확률은 매우 높다.
  • 제안된 기법은 액세스 패턴을 숨기기 위해 다수의 레벨을 갖는 계층적 쿠키키 해싱 구조를 사용하며, 데이터는 레벨 간에 오블리비어스 방식으로 재해싱된다.
  • 새로운 결정적이고 데이터 오블리비어스 외부 메모리 정렬 알고리즘이 개발되어, $O\left((N/B)\log_{M/B}(N/B)\right)$의 I/O로 효율적인 오블리비어스 데이터 재구성 기능을 제공한다.
  • 로그형 크기의 글로벌 스태시를 사용함으로써, 각 레벨의 스태시 크기가 일정하지 않더라도 매우 높은 성공 확률을 유지할 수 있다.
  • 저자들은 다항로그적 독립성을 갖는 해시 함수를 사용하면 오블리비어스 평가가 가능하며, 이는 실용적 구현의 타당성을 뒷받침한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.