NewMCOS: Towards a Practical Multi-Cloud Oblivious Storage Scheme

Encryption alone is not enough to protect data privacy, because access pattern leaks some sensitive information. Oblivious RAM (ORAM), the solution to this problem, is still far from practical deployment for heavy storage and communication/ computation overhead. To reduce them, an insightful idea was proposed to utilize non-colluding clouds to shift client computation and client-cloud communication to the clouds. The proposed multi-cloud ORAM achieved <inline-formula><tex-math notation="LaTeX">$O$</tex-math><alternatives><mml:math><mml:mi>O</mml:mi></mml:math><inline-graphic xlink:href="liu-ieq1-2891581.gif"/></alternatives></inline-formula>(1) client-cloud bandwidth cost and removed most of client computation. In this paper, we exploit “<italic>disconnected ORAM operation</italic>” and design “<italic>two-layer encryption</italic>” to further reduce these overheads. Experiments show that our proposed scheme, NewMCOS, significantly reduces evict cache size from GB/MB to KB level with about 2-3 times lower response time and 20 percent savings in bandwidth for clouds, compared to other schemes. Theoretically speaking, we reduce evict cache size from <inline-formula><tex-math notation="LaTeX">$O(\sqrt{N})$</tex-math><alternatives><mml:math><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:msqrt><mml:mi>N</mml:mi></mml:msqrt><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="liu-ieq2-2891581.gif"/></alternatives></inline-formula> to <inline-formula><tex-math notation="LaTeX">$O(ZK)$</tex-math><alternatives><mml:math><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>Z</mml:mi><mml:mi>K</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="liu-ieq3-2891581.gif"/></alternatives></inline-formula>, where <inline-formula><tex-math notation="LaTeX">$N$</tex-math><alternatives><mml:math><mml:mi>N</mml:mi></mml:math><inline-graphic xlink:href="liu-ieq4-2891581.gif"/></alternatives></inline-formula> is the number of real data blocks, <inline-formula><tex-math notation="LaTeX">$K$</tex-math><alternatives><mml:math><mml:mi>K</mml:mi></mml:math><inline-graphic xlink:href="liu-ieq5-2891581.gif"/></alternatives></inline-formula> is the number of clouds (<inline-formula><tex-math notation="LaTeX">$2<K << \sqrt{N}$</tex-math><alternatives><mml:math><mml:mrow><mml:mn>2</mml:mn><mml:mo><</mml:mo><mml:mi>K</mml:mi><mml:mo><</mml:mo><mml:mo><</mml:mo><mml:msqrt><mml:mi>N</mml:mi></mml:msqrt></mml:mrow></mml:math><inline-graphic xlink:href="liu-ieq6-2891581.gif"/></alternatives></inline-formula>), and <inline-formula><tex-math notation="LaTeX">$Z$</tex-math><alternatives><mml:math><mml:mi>Z</mml:mi></mml:math><inline-graphic xlink:href="liu-ieq7-2891581.gif"/></alternatives></inline-formula> is the number of real blocks uploaded from the client for eviction. By employing “<italic>lazy eviction operation</italic>”, the write frequency is reduced by <inline-formula><tex-math notation="LaTeX">$O(Z)$</tex-math><alternatives><mml:math><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>Z</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="liu-ieq8-2891581.gif"/></alternatives></inline-formula>, the shuffling bandwidth cost is reduced by <inline-formula><tex-math notation="LaTeX">$\Omega (Z\; \log Z)$</tex-math><alternatives><mml:math><mml:mrow><mml:mi>Ω</mml:mi><mml:mo>(</mml:mo><mml:mi>Z</mml:mi><mml:mspace width="0.277778em"/><mml:mo form="prefix">log</mml:mo><mml:mi>Z</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="liu-ieq9-2891581.gif"/></alternatives></inline-formula>. Meanwhile, NewMCOS is proved to be secure.