SPAR-MPC Day 2 Breakout Sessions Mayank Varia 29 May 2014.

Slides:



Advertisements
Similar presentations
Programming Paradigms and languages
Advertisements

TIE Extensions for Cryptographic Acceleration Charles-Henri Gros Alan Keefer Ankur Singla.
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Software Process Models
CS 3500 SE - 1 Software Engineering: It’s Much More Than Programming! Sources: “Software Engineering: A Practitioner’s Approach - Fourth Edition” Pressman,
Welcome to the Security and Privacy Assurance Research - Multiparty Computation (SPAR-MPC) Workshop Rob Cunningham 28 May 2014.
ORAM – Used for Secure Computation by Venkatasatheesh Piduri 1.
ISBN Chapter 3 Describing Syntax and Semantics.
V.S. Subrahmanian University of Maryland 1 IMPACT: Future Directions (years 3 and 4)
Introduction and Overview “the grid” – a proposed distributed computing infrastructure for advanced science and engineering. Purpose: grid concept is motivated.
The Data Mining Visual Environment Motivation Major problems with existing DM systems They are based on non-extensible frameworks. They provide a non-uniform.
1 Introduction to Secure Computation Benny Pinkas HP Labs, Princeton.
©Ian Sommerville 2000Software Engineering, 6/e, Chapter 91 Formal Specification l Techniques for the unambiguous specification of software.
Direction of analysis Although constraints are not directional, flow functions are All flow functions we have seen so far are in the forward direction.
Describing Syntax and Semantics
SE 555 Software Requirements & Specification 1 SE 555 Software Requirements & Specification Prototyping.
1 The Problem o Fluid software cannot be trusted to behave as advertised unknown origin (must be assumed to be malicious) known origin (can be erroneous.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 10 Slide 1 Critical Systems Specification 3 Formal Specification.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 10 Slide 1 Formal Specification.
LÊ QU Ố C HUY ID: QLU OUTLINE  What is data mining ?  Major issues in data mining 2.
CLEANROOM SOFTWARE ENGINEERING.
Chapter 5 Design Principles II: Flexibility, Reusability, and Efficiency.
Lecture # 06 Design Principles II
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 9 Slide 1 Formal Specification l Techniques for the unambiguous specification of software.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Chapter 5 Design Principles II: Flexibility, Reusability, and Efficiency.
Computer Science Open Research Questions Adversary models –Define/Formalize adversary models Need to incorporate characteristics of new technologies and.
Cluster Reliability Project ISIS Vanderbilt University.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
m-Privacy for Collaborative Data Publishing
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Programming Models & Runtime Systems Breakout Report MICS PI Meeting, June 27, 2002.
Overview of Workshop Goals and RFI Responses Emily Shen SPAR-MPC Workshop 28 May 2014.
WXGE6103 Software Engineering Process and Practice Formal Specification.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Understanding to InterGrid and WAG Dr. ZhenChun Huang Tsinghua Univ. NRSCC/RSGS/SIG Team Sep, 2006.
Making Secure Computation Practical IBM: Craig Gentry, Shai Halevi, Charanjit Jutla, Hugo Krawczyk, Tal Rabin, NYU: Victor Shoup SRI: Mariana Raykova Stanford:
INRIA - LaBRICharles Consel Jan-06 1 Domain-Specific Software Engineering Charles Consel Phoenix Research Group LaBRI /INRIA-Futurs January 2006.
SPAR-MPC Day 1 Breakout Sessions Emily Shen 29 May 2014.
Efficient RDF Storage and Retrieval in Jena2 Written by: Kevin Wilkinson, Craig Sayers, Harumi Kuno, Dave Reynolds Presented by: Umer Fareed 파리드.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
Semantics In Text: Chapter 3.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor.
m-Privacy for Collaborative Data Publishing
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Aspect Oriented Security Tim Hollebeek, Ph.D.
Duminda WijesekeraSWSE 623: Introduction1 Introduction to Formal and Semi- formal Methods Based on A Specifier's Introduction to Formal Methods (J. Wing)
Adversary Models in Wireless Networks: Research Challenges Radha Poovendran Network Security Lab (NSL) University of Washington.
Layers Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
ALLOY: A Formal Methods Tool Glenn Gordon Indiana University of Pennsylvania COSC 481- Formal Methods Dr. W. Oblitey 26 April 2005.
CPSC 872 John D. McGregor Session 31 This is it..
DOWeR Detecting Outliers in Web Service Requests Master’s Presentation of Christian Blass.
Formal Specification.
Lecture 3 Prescriptive Process Models
MPC and Verifiable Computation on Committed Data
Software Design and Architecture
Tradeoff Analysis of Strategies for System Qualities
Software Design Methodology
A Verified DSL for MPC in
Anne Pratoomtong ECE734, Spring2002
Making Secure Computation Practical
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
TensorFlow: A System for Large-Scale Machine Learning
Helen: Maliciously Secure Coopetitive Learning for Linear Models
Logical Architecture & UML Package Diagrams
Presentation transcript:

SPAR-MPC Day 2 Breakout Sessions Mayank Varia 29 May 2014

Day 2 Breakout Sessions- 2 MV 5/29/2014 Lettered Breakout Session Topics A. Crypto research risks/rewards B. User language/interface design risk/rewards C. Potential SPAR-MPC program structures D. Use cases and likely impact E. Metrics for success and progress

Day 2 Breakout Sessions- 3 MV 5/29/2014 Session A: Crypto Research Risks/Rewards Goal: Determine which crypto research paths are important, which are feasible, and conclude which have the best risk/reward tradeoff Low-riskMedium-riskHigh-risk toolbox having a common API garbled circuits OT extension algebraic MPC ORAM Scaling to large networks MPC for non-standard connectivity threshold proactive adversary MPC formal proofs garbled RAM FHE FE leakage data access oblivious algorithms Understanding leakage for limited leakage types: e.g. Access patterns understanding semantic leakage Comparing general leakage graceful degradation of leakage mapping from info-theoretic to semantic leakage

Day 2 Breakout Sessions- 4 MV 5/29/2014 Best Risk/Reward Tradeoffs Compiling general programs into MPC with no leakage –Support rich code variety: loops, recursion, etc –Cryptographic proof of compiler correctness –No formal proof verification Data access pattern oblivious algorithms Implementing more MPC applications –Large networks, large data Restrict high-risk use-cases to more specific models

Day 2 Breakout Sessions- 5 MV 5/29/2014 Low-Hanging Fruit: Filling Out Our Toolbox Implementing common graph algorithms securely –Dijkstra in linear time –Matching Delegating smart phone computation to the cloud Implementing other specific applications of MPC

Day 2 Breakout Sessions- 6 MV 5/29/2014 Session B: User language/interface design risk/rewards Goal: Identify user-facing aspects of a potential SPAR-MPC tool that can be built in a 3-5 year research project Potential target users –Cryptographers: make a tool they can use first –Systems designers –Software developers –Lawyers: difficult in a 3-5 year project Build multiple interfaces for different users –Designer provides software description –Developer iteratively supplies application requirements –Display security/performance tradeoffs so lawyers can understand

Day 2 Breakout Sessions- 7 MV 5/29/2014 Session B: User language/interface design risk/rewards Incorporate crypto into the software development lifecycle –Design, Consult, Generate, Prove, Profile, and Visualize –Immediate response to the developer (not silent failure) while developing, compiling, profiling –Build framework of virtual functions: “don’t call us, we’ll call you” Learn from the distributed computing world –Literal: Learn how they handle variability & programming constructs –Figurative: Find proper level of abstraction to display to developers Domain-specific languages –Simple languages make proving easier (e.g., Unity) –Tweaks to mainstream languages (JVM,.Net) reduce learning time Evaluate through user studies: can an undergrad build what you want in < 100 lines of code? Metric for success: adoption

Day 2 Breakout Sessions- 8 MV 5/29/2014 Session C: Potential SPAR-MPC program structures Goal: Potential SPAR-MPC Program Structure Approach: Decompose the structure –Spatially: What would be addressed in parallel? –Temporally: What would we address over time?

Day 2 Breakout Sessions- 9 MV 5/29/2014 System Model (Spatial) Discussion SPAR-MPC Architectural diagram –Consensus: Human-interface tool is harder than crypto implementation/proof tool Layered model of toolkit Crypto+Proof Toolbox Middleware: Protocol Assembly Use case and evaluation

Day 2 Breakout Sessions- 10 MV 5/29/2014 Program Plan Phase I: Establish Baseline Capabilities Phase II: Expand capabilities, layered architecture Select use cases, develop data sets, micro-benchmarks and target architecture Add use cases, system benchmarks Baselining and Mature Adolescent Tech: ORAM-based computation, Compiling to HE Improve performance, add (multi-linear maps) and layer functionality Formalization: Select adversary model, proofs of correctness Formalization: Add adversary model, proofs of security and leakage User interactions: Requirement solicitation tool and initial implications User Interactions II: Connection to lower- level systems 1.Comparisons of known and adolescent technology 2.Proofs of correctness for primitives 1.Initial API Design 2.Improved performance of baseline 3.Broader set of applicable use cases and proofs

Day 2 Breakout Sessions- 11 MV 5/29/2014 Session D: Use Cases Goal: Understand likely use cases and benefit of secure multi- party computation to applications Driving factors: –Regulation Start with organizations: better understanding of privacy and potential tradeoffs than individuals –Organic adoption Technology must exist prior to adoption Build use cases from ground up –Start by making common operations very efficient –Instead of trying to optimize large computational all at once –Demonstrate common operations can be combined into larger system Wow factor: motivate the public –Killer application –Large scale compromises “Snowden”

Day 2 Breakout Sessions- 12 MV 5/29/2014 Mix of commercial/government applications Medical: –Pharmogenetics –Cloud patient data Trusted third parties Social networking –Location privacy/graph connections Insider information mitigation –Limit availability of all data Discrepancy between efficient MPC and application incentives for adoption –Potential to incentivize security: Pay users for privacy Regulate General Data Mining

Day 2 Breakout Sessions- 13 MV 5/29/2014 Session E: Metrics Goal: Identify metrics for success and progress of MPC protocol generation tools (not just MPC protocols themselves) and for SPAR-MPC research program Also identify program structures and their pros and cons in terms of amenability to testing/metrics

Day 2 Breakout Sessions- 14 MV 5/29/2014 Metrics, a partial list Efficiency – Both the compiler and the protocol –But runtime may be more valuable than compile time Usability – How sophisticated must the user be? Flexibility – How many options you give the user – e.g., 2PC and multiparty, malicious and semi-honest? Expressivity – How extensive is the specification capability? Adaptability/Extensibility - If some requirement changes, do we need to start over from scratch or can we modify the tool incrementally? Security – Many things could be measured here, needs to be well defined Use and adoption?

Day 2 Breakout Sessions- 15 MV 5/29/2014 Other discussions Multi-dimensional metrics vs. fixing parameters –User specifies efficiency constraints; tool determines relaxations and protocol to get that efficiency –User specifies privacy constraints; tool determines most efficient protocol satisfying the constraints Lack of clarity on end user and overarching motivations –Why is security being sacrificed? –Does the user know enough to make the right choices? What is leakage? Bits? Internal data structure information? Specific information? –Semantic meaning of leakage is hard to understand