privacy preserving computation with trusted computing via
play

Privacy-Preserving Computation with Trusted Computing via - PowerPoint PPT Presentation

Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Hung Dang, Anh Dinh, Ee-Chien Chang, Beng Chin Ooi School of Computing National University of Singapore PETS 2017 Privacy-Preserving Computation with Trusted


  1. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Hung Dang, Anh Dinh, Ee-Chien Chang, Beng Chin Ooi School of Computing National University of Singapore PETS 2017

  2. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute The Problem ● Context: Processing large dataset with bounded private memory ● System and Threat Model: ○ Data is processed in an trusted External-memory execution environment with Computation bounded private memory ○ Data remains encrypted outside the trusted enviroment ○ The adversary observes access patterns, but cannot see the trusted environment’s internal state 2 PETS 2017

  3. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute The Problem ● Context: Processing large dataset with bounded private memory Access patterns leak ● System and Threat Model: sensitive information ○ Data is processed in an trusted External-memory execution environment with Computation bounded private memory ○ Data remains encrypted outside the trusted enviroment ○ The adversary observes access patterns, but cannot see the trusted environment’s internal state 2 PETS 2017

  4. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Access Pattern Leakage: Example The private memory size is S 1 S 2 2 1 3 2 4 consider merging two sorted sub-arrays 2 records 3 PETS 2017

  5. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Access Pattern Leakage: Example First records of S 1 and S 2 are S 1 S 2 retrieved 1 3 2 4 1 2 3 PETS 2017

  6. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Access Pattern Leakage: Example One record is S 1 S 2 writen out 1 3 2 4 2 1 3 PETS 2017

  7. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Access Pattern Leakage: Example The 2 nd record of S 1 is S 1 S 2 retrieved 1 3 2 4 3 2 1 3 PETS 2017

  8. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Access Pattern Leakage: Example S 1 contains the S 1 S 2 smallest record 1 3 2 4 3 2 1 3 PETS 2017

  9. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Possible Mitigations ● ORAM (Oblivious RAM) ○ Generic ○ Expensive: incurs Ω(log n) (amortized) overheads per each access ■ Not suitable for applications accessing entire dataset (e.g., sort, aggregation) ● Tailor-made Algorithms (Data-Oblivious algorithms) ○ Application-specific ○ More efficient (than employing ORAM) ○ Complex construction ■ Hard to implement and vet the trusted code base (TCB) 4 PETS 2017

  10. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Our Solution We seek an approach to design privacy-preserving algorithms that is: ● Expressive ○ Enable adoption of state-of-the-art external memory algorithms ● Simple ○ Ease of implementation and TCB vetting ● Low overhead 5 PETS 2017

  11. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Scramble-then-Compute ( STC ) Derive a privacy-preserving algorithm from an efficient but not necessarily privacy-preserving one: ● Privately scramble the input ○ Conceal correspondences between the original input and the scrambled data ● Apply the original (external-memory) algorithm on the scrambled data ○ Leverage on extensive studies to adopt the most suitable algorithm with the most well-tuned parameteres for a particular application at hand 6 PETS 2017

  12. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Scramble then Compute ( STC ) Derive a privacy-preserving algorithm from an efficient but not necessarily privacy-preserving one: ● Privately scramble the input ○ Conceal correspondences between the original input and the scrambled data ● Apply the original (external-memory) algorithm on the scrambled data ○ Leverage on extensive studies to adopt the most suitable algorithm with the most well-tuned parameteres for a particular application at hand Simplicity ✔ 6 PETS 2017

  13. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - Scope STC supports a permutation-invariant # algorithm P if there exists an imitator 〈 T, P* 〉 of P ○ T , given X , outputs a permuted sequence of 〈 1,2,...,n 〉 ○ P* operates on T(X) exactly the same as P does on X (i.e., incur the same access pattern) # outputs the same Y for any permutation of X 7 PETS 2017

  14. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - Scope STC supports a permutation-invariant # algorithm P if there exists an imitator 〈 T, P* 〉 of P ○ T , given X , outputs a permuted sequence of 〈 1,2,...,n 〉 ○ P* operates on T(X) exactly the same as P does on X (i.e., incur the same access pattern) Expressiveness ✔ # outputs the same Y for any permutation of X 7 PETS 2017

  15. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Given P operating on input X , STC derives a privacy-preserving algorithm A P : X’ ← Pre-Process (X) (if required) 1. S ← Scramble (X’) 2. Y’ ← P(S) 3. Y ← Post-Process (Y) (if required) 4. 8 PETS 2017

  16. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Given P operating on input X , STC derives a privacy-preserving algorithm A P : X’ ← Pre-Process (X) (if required) 1. ➢ ensure permutation-invariant requirement ➣ Data Oblivious S ← Scramble (X’) 2. ➣ Requires private ➢ based on Melbourne Shuffle Algorithm memory of size O(√n) Y’ ← P(S) 3. ➣ Runtime O(n) Y ← Post-Process (Y) (if required) 4. ➢ reverse effect of step 1 8 PETS 2017

  17. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Given P operating on input X , STC derives a Low overhead ✔ privacy-preserving algorithm A P : X’ ← Pre-Process (X) (if required) 1. ➢ ensure permutation-invariant requirement ➣ Data Oblivious S ← Scramble (X’) 2. ➣ Requires private ➢ based on Melbourne Shuffle Algorithm memory of size O(√n) Y’ ← P(S) 3. ➣ Runtime O(n) Y ← Post-Process (Y) (if required) 4. ➢ reverse effect of step 1 8 PETS 2017

  18. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look E.g.,: Deriving a privacy-preserving sorting algorithm from external Given P operating on input X , STC derives a merge sort privacy-preserving algorithm A P : X 1 3 1 4 2 4 X’ ← Pre-Process (X) (if required) 1. S ← Scramble (X’) 2. Y’ ← P(S) 3. Y ← Post-Process (Y) (if required) 4. 8 PETS 2017

  19. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Add metadata to handle duplicates Given P operating on input X , STC derives a privacy-preserving algorithm A P : X 1 3 1 4 2 4 X’ ← Pre-Process (X) (if required) 1. X’ 1 0 3 1 1 2 4 3 2 4 4 5 S ← Scramble (X’) 2. Y’ ← P(S) 3. Y ← Post-Process (Y) (if required) 4. 8 PETS 2017

  20. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Privately scramble the input Given P operating on input X , STC derives a privacy-preserving algorithm A P : X 1 3 1 4 2 4 X’ ← Pre-Process (X) (if required) 1. X’ 1 0 3 1 1 2 4 3 2 4 4 5 S ← Scramble (X’) 2. S 4 3 1 2 2 4 3 1 4 5 1 0 Y’ ← P(S) 3. Y ← Post-Process (Y) (if required) 4. The scrambling hide correspondences between records of X’ and those of S 8 PETS 2017

  21. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Sort the scrambled input by external merge sort Given P operating on input X , STC derives a privacy-preserving algorithm A P : X 1 3 1 4 2 4 X’ ← Pre-Process (X) (if required) 1. X’ 1 0 3 1 1 2 4 3 2 4 4 5 S ← Scramble (X’) 2. S 4 3 1 2 2 4 3 1 4 5 1 0 Y’ ← P(S) 3. Y’ 1 0 1 2 2 4 3 1 4 3 4 5 Y ← Post-Process (Y) (if required) 4. Observation maded on S cannot be linked back to that of X’ 8 PETS 2017

  22. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute STC - A Closer Look Remove the metadata Given P operating on input X , STC derives a privacy-preserving algorithm A P : X 1 3 1 4 2 4 X’ ← Pre-Process (X) (if required) 1. X’ 1 0 3 1 1 2 4 3 2 4 4 5 S ← Scramble (X’) 2. S 4 3 1 2 2 4 3 1 4 5 1 0 Y’ ← P(S) 3. Y’ 1 0 1 2 2 4 3 1 4 3 4 5 Y ← Post-Process (Y) (if required) 4. Y 1 1 2 3 4 4 8 PETS 2017

  23. Privacy-Preserving Computation with Trusted Computing via Scramble-then-Compute Comparison with Alternative Solutions ORAM Tailor-made Algorithm STC Ω(log n) amortized Performance O(n) additive overhead less efficient than STC overhead per each Overhead per execution counterpart access Spark and many data Expressiveness all applications application-specific processing operations Design and moderate - complicated simple complicated Implement Effort 9 PETS 2017

Recommend


More recommend