Contextual Integrity and its Formalization

Slides:



Advertisements
Similar presentations
QUN NI 1, SHOUHUAI XU 2, ELISA BERTINO 1, RAVI SANDHU 2, AND WEILI HAN 3 1 PURDUE UNIVERSITY USA 2 UT SAN ANTONIO USA 3 FUDAN UNIVERSITY CHINA PRESENTED.
Advertisements

H OGAN & H ARTSON, L.L.P.
Completeness and Expressiveness
Policy Auditing over Incomplete Logs: Theory, Implementation and Applications Deepak Garg 1, Limin Jia 2 and Anupam Datta 2 1 MPI-SWS (work done at Carnegie.
Design by Contract.
Directory and Trust Services (D&TS) Define an Abstract Model Purpose: Document a common terminology that the group can use between the various tracks Identify.
Operating System Security
Formalization of Health Information Portability and Accountability Act (HIPAA) Simon Berring, Navya Rehani, Dina Thomas.
HIPAA Basics Brian Fleetham Dickinson Wright PLLC.
Increasing public concern about loss of privacy Broad availability of information stored and exchanged in electronic format Concerns about genetic information.
Information Risk Management Key Component for HIPAA Security Compliance Ann Geyer Tunitas Group
 Original Intent: ◦ Act passed in 1996 with two main goals: 1.Ensure individuals would be able to maintain their health insurance between jobs (the “portability”
CHAPTER © 2011 The McGraw-Hill Companies, Inc. All rights reserved. 2 The Use of Health Information Technology in Physician Practices.
Formalizing and Enforcing Privacy: Semantics and Audit Mechanisms Anupam Datta Carnegie Mellon University Verimag January 13, 2012.
Privacy and Contextual Integrity: Framework and Applications Adam Barth, Anupam Datta, John C. Mitchell (Stanford), and Helen Nissenbaum (NYU) TRUST Winter.
Developing a Records & Information Retention & Disposition Program:
Lecture 6 Personal Health Record (Chapter 16)
Introduction to the APPs and the OAIC’s regulatory approach Presented by: Este Darin-Cooper Director, Regulation and Strategy May 2015.
Introduction To System Analysis and Design
Course Review Anupam Datta CMU Fall A: Foundations of Security and Privacy.
On Privacy and Compliance: Philosophy and Law meets Computer Science Anupam Datta Stanford University Oakland PC Crystal Ball Workshop January 2007.
Anupam Datta Anupam DattaCMU Joint work with Adam Barth, John Mitchell (Stanford), Helen Nissenbaum (NYU) and Sharada Sundaram (TCS) Privacy and Contextual.
FAMILY EDUCATIONAL RIGHTS AND PRIVACY ACT Electronic Signatures This work is the intellectual property of the author. Permission is granted for this material.
Have You Read Your Medical Record? Peggy Beck, RHIA, CMT, FAAMT.
Time, Clocks, and the Ordering of Events in a Distributed System Leslie Lamport (1978) Presented by: Yoav Kantor.
Privacy Challenges and Solutions for Health Information Systems John C Mitchell, Stanford University.
Privacy By Design Sample Use Case Privacy Controls Insurance Application- Vehicle Data.
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR ESM'2009, October 26-28, 2009, Holiday Inn Leicester, Leicester, United Kingdom.
Introduction To System Analysis and design
The Use of Health Information Technology in Physician Practices
WMS systems manage and coordinate several independent subtasks. The coordination problems get even more serious when the subtasks are performed on separate.
HIPAA PRIVACY AND SECURITY AWARENESS.
Contextual Integrity & its Logical Formalization 18739A: Foundations of Security and Privacy Anupam Datta Fall 2009.
0x1A Great Papers in Computer Security Vitaly Shmatikov CS 380S
Privacy and Contextual Integrity: Framework and Applications Adam Barth, Anupam Datta, John C. Mitchell (Stanford) Helen Nissenbaum (NYU)
Policy Review (Top-Down Methodology) Lesson 7. Policies From the Peltier Text, p. 81 “The cornerstones of effective information security programs are.
Networking and Health Information Exchange Unit 6b EHR Functional Model Standards.
Contextual Integrity as a Normative Guide for Privacy Helen Nissenbaum New York University * School of Information, UC Berkeley April 2, 2008 * Supported.
1 The CeNTIE project is supported by the Australian Government through the Advanced Networks Program of the Department of Communications, Information Technology.
© 2009 The McGraw-Hill Companies, Inc. All rights reserved. 1 McGraw-Hill Chapter 2 The HIPAA Privacy Standards HIPAA for Allied Health Careers.
Dimensions of Privacy 18739A: Foundations of Security and Privacy Anupam Datta Fall 2009.
© 2013 The McGraw-Hill Companies, Inc. All rights reserved. Ch 8 Privacy Law and HIPAA.
Formal Verification Lecture 9. Formal Verification Formal verification relies on Descriptions of the properties or requirements Descriptions of systems.
FleetBoston Financial HIPAA Privacy Compliance Agnes Bundy Scanlan Managing Director and Chief Privacy Officer FleetBoston Financial.
Policies for Information Sharing April 10, 2006 Mark Frisse, MD, MBA, MSc Marcy Wilder, JD Janlori Goldman, JD Joseph Heyman, MD.
Health eDecisions Use Case 2: CDS Guidance Service Strawman of Core Concepts Use Case 2 1.
C HAPTER 34 Code Blue Health Sciences Edition 4. Confidentiality of sensitive information is an important issue in healthcare. Breaches of confidentiality.
Health Delivery Services May 29, Eastern Massachusetts Healthcare Initiative Policy Work Group Session 2 May 29, 2009.
Copyright © 2015 by Saunders, an imprint of Elsevier Inc. All rights reserved. Chapter 3 Privacy, Confidentiality, and Security.
HIPAA HEALTH INSURANCE PORTABILITY AND ACCOUNTABILITY ACT.
Privacy and Contextual Integrity: Framework and Applications Adam Barth, Anupam Datta, John C. Mitchell (Stanford) Helen Nissenbaum (NYU)
Software Systems Verification and Validation Laboratory Assignment 4 Model checking Assignment date: Lab 4 Delivery date: Lab 4, 5.
Introduction to the Australian Privacy Principles & the OAIC’s regulatory approach Privacy Awareness Week 2016.
Models of the OASIS SOA Reference Architecture Foundation Ken Laskey Chair, SOA Reference Model Technical Committee 20 March 2013.
1 Security and Dependability Organizational Patterns - A Proof of Concept Demo for SERENITY A. Saidane, F. Dalpiaz, V.H. Nguyen, F. Massacci.
DIPUL MANDOLE Pankaj Patil Chatan More
Knowledge Representation
COIT20235 Business Process Modelling
Move this to online module slides 11-56
COT 5611 Operating Systems Design Principles Spring 2012
Disability Services Agencies Briefing On HIPAA
IS 2935: Developing Secure Systems
Healthcare Privacy: The Perspective of a Privacy Advocate
HIPAA SECURITY RULE Copyright © 2008, 2006, 2004 by Saunders an imprint of Elsevier Inc. All rights reserved.
THE 13TH NATIONAL HIPAA SUMMIT HEALTH INFORMATION PRIVACY & SECURITY IN SHARED HEALTH RECORD SYSTEMS SEPTEMBER 26, 2006 Paul T. Smith, Esq. Partner,
On Parametric Obligation Policies: Enabling Privacy-aware Information Lifecycle Management in Enterprises IEEE Policy Workshop 2007 Marco Casassa Mont.
18734: Foundations of Privacy
HIPAA Privacy and Security Update - 5 Years After Implementation
Access Control What’s New?
COT 5611 Operating Systems Design Principles Spring 2014
Presentation transcript:

Contextual Integrity and its Formalization 18739A: Foundations of Security and Privacy Contextual Integrity and its Formalization Anupam Datta CMU Fall 2007-08

Problem Statement Is an organization’s business process compliant with privacy regulations and internal policies? Examples of organizations Hospitals, financial institutions, other enterprises handling sensitive information Examples of privacy regulations HIPAA, GLBA, COPPA, SB1386 Goal: Develop methods and tools to answer this question

Contextual Integrity [N2004] Philosophical framework for privacy Central concept: Context Examples: Healthcare, banking, education What is a context? Set of interacting agents in roles Roles in healthcare: doctor, patient, … Norms of transmission Doctors should share patient health information as per the HIPAA rules Purpose Improve health

Outline Motivating Example Framework Workflows and Responsibility Model Logic of Privacy and Utility Workflows and Responsibility Algorithmic Results Workflow Design assuming agents responsible Auditing logs when agents irresponsible Conclusions

MyHealth@Vanderbilt Workflow Humans + Electronic system Health Answer Secretary Yes! except broccoli Appointment Request Doctor Health Question Patient Health Question Now that I have cancer, Should I eat more vegetables? Nurse Health Question Health Answer

Possible Enhancement Secretary handles every message Privacy Efficiency Robustness Messages opaque to MyHealth Unable to help secretary route messages Hinders adding features like delegation Suggestion: add short tags to messages

MyHealth with Message Tags Health Answer Secretary Yes! except broccoli Health Answer Appointment Request Doctor Now that I have cancer, Should I eat more vegetables? Health Question Patient Health Question Nurse Health Question Health Answer

Robustness to Mistaken Tags Health Answer Secretary Now that I have cancer, Should I eat more vegetables? Health Question Yes! except broccoli Health Answer Appointment Request Doctor Now that I have cancer, Should I eat more vegetables? Appointment Request Patient Health Question Appointment Request Health Question Nurse Health Question Health Answer

Workflow Design Goals Privacy Utility Robustness Secretary does not get sensitive info Utility Health question eventually answered Robustness Properties hold even with mistakes Workflows Violate Privacy Feasible Workflows Permissiveness Violate Utility

Recommendations Add short tags to messages Assign responsibilities Enhances privacy Increases efficiency Scales with added functionality Assign responsibilities Example: secretary should tag messages with “health question” if needed

Outline Motivating Example Framework Workflows and Responsibility Model Logic of Privacy and Utility Workflows and Responsibility Algorithmic Results Workflow Design assuming agents responsible Auditing logs when agents irresponsible Conclusions

Contextual Integrity [N2004] Informational Norms “In a context, the flow of information of a certain type about a subject (acting in a particular capacity/role) from one actor (could be the subject) to another actor (in a particular capacity/role) is governed by a particular transmission principle.” Contextual Integrity [N2004]

Should I eat more vegetables? Model Now that I have cancer, Should I eat more vegetables? Health Question Bob Alice Communication via send actions: Sender: Bob in role Patient Recipient: Alice in role Nurse Subject of message: Bob Tag: Health Question Message: Now that …. Data model & knowledge evolution: Agents acquire knowledge by: receiving messages deriving additional attributes based on data model Health Question  Protected Health Information Tags may be incorrect Currently data model has only individual attributes, no group attributes. Tags(msg) – machine readable, Contents(msg) – may require human agents contents(msg) vs. tags (msg)

Concurrent Game Structure Model [BDMS2007] State determined by knowledge of each agent Transitions change state Set of concurrent send actions Send(p,q,m) possible only if agent p knows m K0 A13 A11 K13 A12 K11 ... K12 ... k: number of players Q: finite set of states Pi: finite set of observables pi: labeling function -- pi(q) identifies propositions that are true in state q d: number of moves for player a in state q is d(a,q) delta: transition function Concurrent Game Structure G = <k, Q, , , d, >

Logic of Privacy and Utility Syntax  ::= send(p1,p2,m) p1 sends p2 message m | contains(m, q, t) m contains attrib t about q | tagged(m, q, t) m tagged attrib t about q | inrole(p, r) p is active in role r | t  t’ Attrib t is part of attrib t’ |    |  | x.  Classical operators | U | S | O Temporal operators | <<p>> Strategy quantifier Semantics Formulas interpreted over concurrent game structure

Specifying Privacy MyHealth@Vanderbilt In all states, only nurses and doctors receive health questions G  p1, p2, q, m send(p1, p2, m)  contains(m, q, health-question)  inrole(p2, nurse)  inrole(p2, doctor) LTL fragment can express HIPAA, GLBA, COPPA [BDMN2006]

Specifying Utility MyHealth@Vanderbilt Patients have a strategy to get their health questions answered  p inrole(p, patient)  <<p>> F  q, m. send(q, p, m)  contains(m, p, health-answer)

Expressing Privacy Allow message transmission if: at least one positive norm is satisfied; and all negative norms are satisfied

HIPAA – Healthcare Privacy HIPAA consists primarily of positive norms: share phi if some rule explicitly allows it (2), (3), (5), (6) Exception: negative norm about psychotherapy notes (4)

COPPA – Children Online Privacy COPPA consists primarily of negative norms children can share their protected info only if parents consent (7) (condition) (8) (obligation – future requirements)

GLBA – Financial Institutions Sender role Attribute Subject role Financial institutions must notify consumers if they share their non-public personal information with non-affiliated companies, but the notification may occur either before or after the information sharing occurs Transmission principle Recipient role

Outline Motivating Example Framework Workflows and Responsibility Model Logic of Privacy and Utility Workflows and Responsibility Algorithmic Results Workflow Design assuming agents responsible Auditing logs when agents irresponsible Conclusions

MyHealth@Vanderbilt Improved Doctor should answer health questions Health Answer Yes! except broccoli Health Answer Appointment Request Secretary Now that I have cancer, Should I eat more vegetables? Health Question Doctor Patient Health Question Health Question Health Answer Assign responsibilities to roles & workflow engine Nurse

Graph-based Workflow Graph Edge-labeling function (R, R x R), where R is the set of roles Edge-labeling function permit: R x R  2T, where T is the set of attributes Responsibility of workflow engine Allow msg from role r1 to role r2 iff tags(msg)  permit(r1, r2) Responsibility of human agents in roles Tagging responsibilities ensure messages are correctly tagged Progress responsibilities ensure messages proceed through workflow Examples from previous slide

MyHealth Responsibilities Tagging Nurses should tag health questions G p, q, s, m. inrole(p, nurse)  send(p, q, m)  contains(m, s, health-question)  tagged(m, s, health-question) Progress Doctors should answer health questions G p, q, s, m. inrole(p, doctor)  send(q, p, m)  contains(m, s, health-question)  F m’. send(p, s, m’)  contains(m’, s, health-answer)

 p.   inrole(p, r)  <<p>> r Abstract Workflow Responsibility of workflow engine LTL formula  Feasible (enforceable) if  is a safety formula without the contains() predicate Responsibility of each role r LTL formula r Feasible if agents have a strategy to discharge their responsibilities  p.   inrole(p, r)  <<p>> r Graph-based workflows are a special case

Outline Motivating Example Framework Workflows and Responsibility Model Logic of Privacy and Utility Workflows and Responsibility Algorithmic Results Workflow Design assuming agents responsible Abstract workflows Auditing logs when agents irresponsible Only graph-based workflows Conclusions

MyHealth@Vanderbilt Improved Health Answer Minimal disclosure Yes! except broccoli Health Answer Appointment Request Secretary Now that I have cancer, Should I eat more vegetables? Health Question Doctor Patient Health Answer Health Question Health Question Privacy: HIPAA compliance+ Utility: Schedule appointments, obtain health answers Responsibility: Doctor should answer health questions Nurse

Workflow Design Results Theorems: Assuming all agents act responsibly, checking whether workflow achieves Privacy is in PSPACE (in the size of the formula describing the workflow) Utility is decidable Definition and construction of minimal disclosure workflow Algorithms implemented in model-checkers, e.g. SPIN, MOCHA

Deciding Privacy PLTL model-checking problem is PSPACE decidable G |= tags-correct U agents-responsible  privacy-policy G: concurrent game structure Result applies to finite models (#agents, msgs,…)

MyHealth Privacy MyHealth@Vanderbilt workflow satisfies this privacy condition In all states, only nurses and doctors receive health questions G  p1, p2, q, m send(p1, p2, m)  contains(m, q, health-question)  inrole(p2, nurse)  inrole(p2, doctor) Run LTL model-checker, e.g. SPIN

Deciding Utility ATL* model-checking of concurrent game structures is Decidable with perfect information Undecidable with imperfect information Theorem: There is a sound decision procedure for deciding whether workflow achieves utility Intuition: Translate imperfect information into perfect information by considering possible actions from one player’s point of view

MyHealth Utility MyHealth@Vanderbilt workflow satisfies this utility condition Patients have a strategy to get their health questions answered  p inrole(p, patient)  <<p>> F  q, m. send(q, p, m)  contains(m, p, health-answer) Run ATL* model-checker, e.g. MOCHA

Minimal Disclosure Workflow Abstract workflows: W1 (1, R)  W2 (2, R) if G satisfies 1  2 Graph-based workflows: W1 (R, permit1)  W2 (R, permit2) if  r1,r2R. permit1(r1, r2)  permit2(r1, r2) Lemma: If W1  W2 and W2 achieves a privacy goal, then so does W1 Minimal Disclosure Workflow: W is minimal wrt to a utility goal if W achieves the goal and all feasible W’  W fails to achieve the goal

MyHealth@Vanderbilt Workflow Health Answer Yes! except broccoli Health Answer Appointment Request Secretary Health Question Now that I have cancer, Should I eat more vegetables? Health Question Health Question Secure free text messaging system Doctor Patient Health Question Health Answer Nurse

MyHealth@Vanderbilt Improved Health Answer Yes! except broccoli Health Answer Appointment Request Secretary Now that I have cancer, Should I eat more vegetables? Health Question Doctor Patient Health Question Health Question Health Answer Nurse

Outline Motivating Example Framework Workflows and Responsibility Model Logic of Privacy and Utility Workflows and Responsibility Algorithmic Results Workflow Design assuming agents responsible Abstract workflows Auditing logs when agents irresponsible Only graph-based workflows Conclusions

Auditing Results Definitions Design of audit log Algorithms Policy compliance, locally compliant Causality, accountability Design of audit log Algorithms Finding agents accountable for locally-compliant policy violation in graph-based workflows using audit log Finding agents who act irresponsibly using audit log Algorithms use oracle: O(msg) = contents(msg) Minimize number of oracle calls

Policy compliance/violation Contemplated Action Judgment Policy Future Reqs History Strong compliance [BDMN2006] Action does not violate current policy requirements Future policy requirements after action can be met Locally compliant policy Agents can determine strong compliance based on their local view of history

Causality Lamport Causality [1978] From original paper.

Accountability & Audit Log Causality + Irresponsibility Audit log design Records all Send(p,q,m) and Receive(p,q,m) events executed Maintains causality structure O(1) operation per event logged

Auditing Algorithm Goal Algorithm(Audit log A, Violation v) Theorem: Find agents accountable for a policy violation Algorithm(Audit log A, Violation v) Construct G, the causality graph for v in A Run BFS on G. At each Send(p, q, m) node, check if tags(m) = O(m). If not, and p missed a tag, output p as accountable Theorem: The algorithm outputs at least one accountable agent for every violation of a locally compliant policy in an audit log of a graph-based workflow that achieves the policy in the responsible model

Proof Idea Causality graph G includes all accountable agents Accountability = Causality + Irresponsibility There is at least one irresponsible agent in G Policy is satisfied if all agents responsible Policy is locally compliant In graph-based workflows, safety responsibilities violated only by mistagging O(msg) = tags(msg) check identifies all irresponsible actions

MyHealth Example Policy violation: Secretary Candy receives health-question mistagged as appointment-request Construct causality graph G and search backwards using BFS Candy received message m from Patient Jorge. O(m) = health-question, but tags(m) = appointment-request. Patient responsible for health-question tag. Jorge identified as accountable

Conclusions Framework Business Process as Workflow Algorithmic Results Concurrent game model Logic of Privacy and Utility Temporal logic (LTL, ATL*) Business Process as Workflow Role-based responsibility for human and mechanical agents Algorithmic Results Workflow design assuming agents responsible Privacy, utility decidable (model-checking) Minimal disclosure workflow constructible Auditing logs when agents irresponsible From policy violation to accountable agents Finding irresponsible agents Autom-ated Using oracle

Thanks Questions?

Local communication game Quotient structure under invisible actions, Gp States: Smallest equivalence relation K1 ~p K2 if K1  K2 and a is invisible to p Actions: [K]  [K’] if there exists K1 in [K] and K2 in [K’] s.t. K1  K2 Lemma: For all LTL formulas  visible to p, Gp |= <<p>> implies G |= <<p>> a a a

Refinement and Combination Policy refinement Basic policy relation Does hospital policy enforce HIPAA? P1 refines P2 if P1  P2 Requires careful handling of attribute inheritance PSPACE decidable Combination becomes logical conjunction Defined in terms of refinement

Related Languages Legend: Model Sender Recipient Subject Attributes Past Future Combination RBAC Role Identity   XACML Flexible o EPAL Fixed P3P LPU Legend:  unsupported o partially supported  fully supported LPU fully supports attributes, combination, temporal conditions

Why Not Use P3P? Different application Not expressive enough P3P understood by web browsers LPU intended for internal policy enforcement Not expressive enough P3P cannot express HIPAA, GLBA, COPPA Each policy only has one sender and one subject Missing temporal conditions; only has simple opt-in / opt-out

Structure of Attributes Health Information Psychotherapy Notes Health Information Psychotherapy Notes Test Results Health Information Date of Birth Psychotherapy Notes Test Results Age Zodiac Sign Heath care providers can tell patients their health information Sender role Recipient role Subject role Attribute Heath care providers can tell patients their psychotherapy notes only if a psychiatrist has approved