Using Safety-Critical Concepts in Privacy Engineering

51
1 © Nokia 2016 Using Safety-Critical Concepts in Privacy Engineering Public Dr. Ian Oliver Bell Labs, Finland 2 November 2016 A Lecture Given to CRiM’16, Oulu, Finland

Transcript of Using Safety-Critical Concepts in Privacy Engineering

Page 1: Using Safety-Critical Concepts in Privacy Engineering

1 © Nokia 2016

Using Safety-Critical Concepts in Privacy Engineering

Public

Dr. Ian Oliver

Bell Labs, Finland

2 November 2016

A Lecture Given to CRiM’16, Oulu, Finland

Page 2: Using Safety-Critical Concepts in Privacy Engineering

2 © Nokia 2016

Public

Auditing mobile services and associated infrastructure from an engineering perspective...

Page 3: Using Safety-Critical Concepts in Privacy Engineering

3 © Nokia 2016

Public

Auditing mobile services and associated infrastructure from an engineering perspective...

PrivacyOfficers & Lawyers

Privacy Engineers

Page 4: Using Safety-Critical Concepts in Privacy Engineering

4 © Nokia 2016

Public

The problem was (and still is, and will be) the lack of good (any?) techniques for reasoning about privacy in an engineering capacity

Page 5: Using Safety-Critical Concepts in Privacy Engineering

5 © Nokia 2016

So what is this privacy thing anyway?

Public

• vs Security...

• [[privacy]]

• Information wants to be free!• Freedom to do/be...?• Freedom from...?• Price, value

•Ownership

• You are the product

• ”Anti-privacy”

• Advertising, surveillance, hacking, oversharing

• Personal responsibility vs Technilogical complexity

• PII, personal data, pseudo-anonymous, anonymisation

•variability, entropy, Navier-Stokes

• f(p1...pn) -> R

•The Privacy Singularity•Unification of disciplines•Mathematical Foundations of Privacy•The Fundamental Theorem of Privacy

Page 6: Using Safety-Critical Concepts in Privacy Engineering

6 © Nokia 2016

Privacy as...

Public

• A legal construct •“The Right to Privacy” (Warren and Brandeis, 1890)• EU Data Protection Laws• Human Rights•...

Page 7: Using Safety-Critical Concepts in Privacy Engineering

7 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct

• morals, ethics etc• political science? Kant etc.

Page 8: Using Safety-Critical Concepts in Privacy Engineering

8 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct

• brand/shareholder value• customer relatonships• business• innovation

Page 9: Using Safety-Critical Concepts in Privacy Engineering

9 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle

Page 10: Using Safety-Critical Concepts in Privacy Engineering

10 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle• A sociological construct

Page 11: Using Safety-Critical Concepts in Privacy Engineering

11 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle• A sociological construct• A game theoretic construct

Page 12: Using Safety-Critical Concepts in Privacy Engineering

12 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle• A sociological construct• A game theoretic construct• A systems engineering construct

char collectDataFlag = 'Y'; // Future proofed boolean// Y for yes, N for no

void collectDataFunction(){//collect IMEI, IMSI, MSISDN, TimeStamp and location//and send to the hardcoded IP address...

}

void checkDataCollection(){switch(collectDataFlag){

case 'N' :// don't do anything

case 'Y' :// ok to collect everythingcollectDataFunction();

}}

compliance

Page 13: Using Safety-Critical Concepts in Privacy Engineering

13 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle• A sociological construct• A game theoretic construct• A systems engineering construct (pt.2)

• Ontological structures• Metrics / Risk Analysis• Modelling• Privacy Engineering• Compliance• Culture & Safety Critical

Systems• (Aviation, Medicine)

Page 14: Using Safety-Critical Concepts in Privacy Engineering

14 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle• A sociological construct• A game theoretic construct• A systems engineering construct• An optimisation construct

Page 15: Using Safety-Critical Concepts in Privacy Engineering

15 © Nokia 2016

Privacy as...

Public

• A legal construct• A philisophical construct• An economic construct• A guiding principle• A sociological construct• A game theoretic construct• A systems engineering construct• An optimisation construct• A mathematical construct

𝑡0

𝑡1

𝐷1 ×⋯ × 𝐷𝑛 < 𝜀𝑈

• metrics• topology• ontology• anonymisation & variability• turbulence, chaos theory• link back to economics & game theory• deanonymisation• information entropy

Page 16: Using Safety-Critical Concepts in Privacy Engineering

16 © Nokia 2016

Public

The problem was (and still is, and will be) the lack of good (any?) techniques for reasoning about privacy in an engineering capacity...

...so what did we do?

Page 17: Using Safety-Critical Concepts in Privacy Engineering

17 © Nokia 2016

We developed:

• Epics and Use cases for Privacy

• Checklists

• Software Development Process Integration

• Audit Procedures (non-functional aspects)

- privacy

- secuity

- performance

- continuity (resiliance)

and the result was...

Page 18: Using Safety-Critical Concepts in Privacy Engineering

18 © Nokia 2016

Failure

Page 19: Using Safety-Critical Concepts in Privacy Engineering

19 © Nokia 2016

Why didn’t it work?

• Despite highly trained personel

- Cessna Single Engine Failure

• FLY THE AIRCRAFT

- Air France AF447

• To much adherence to process

- Processes tell everyone the order of what to do

- Difficulty in handling exceptions and experts

- Aviation Checklists are status checks used to assist in due dilligence in preparation for the next and future phases of flight.

- Engineers aren’t stupid

• Checklist replaced responsibility and expertise

- For both the auditor and develoment teams

• Tick-box oriented

- Ask questions, Accept answers, TICK!

- Limited understanding and context of naswers

• Limited time-scale

- One-off review

Page 20: Using Safety-Critical Concepts in Privacy Engineering

20 © Nokia 2016

We developed:

• Simpler ”Checklists”

• Training Courses

• Realised that no-one understood each other

• Tried to ban (unsuccessfully) the term ”PII”

• Tried to formulate requirements

• Introduced more risk management ideas, eg: RCA, FMEA

and the result was...

Page 21: Using Safety-Critical Concepts in Privacy Engineering

21 © Nokia 2016

Failure2

Page 22: Using Safety-Critical Concepts in Privacy Engineering

22 © Nokia 2016

What’s the problem now?

• Communication

• Emphasis on process over method

• Lack of understanding of role

• Lack of legal and engineering techniques

• Lack of integration of legal and engineering

• The privacy organisation itself

• Humans

Page 23: Using Safety-Critical Concepts in Privacy Engineering

23 © Nokia 2016

What’s the problem now?

Actually it was much worse:

Page 24: Using Safety-Critical Concepts in Privacy Engineering

24 © Nokia 2016

What’s the problem now?

Actually it was much worse:

Total emphasis on ”compliance”

Page 25: Using Safety-Critical Concepts in Privacy Engineering

25 © Nokia 2016

What’s the problem now?

Actually it was much worse:

Total emphasis on ”compliance”

Whatever ”compliance” meant...

Page 26: Using Safety-Critical Concepts in Privacy Engineering

26 © Nokia 2016

Compliance

is fragile

Public

char collectDataFlag = 'Y'; // Future proofed boolean// Y for yes, N for no

void collectDataFunction(){//collect IMEI, IMSI, MSISDN, TimeStamp and location//and send to the hardcoded IP address...

}

void checkDataCollection(){switch(collectDataFlag){

case 'N' :// don't do anything

case 'Y' :// ok to collect everythingcollectDataFunction();

}}

Page 27: Using Safety-Critical Concepts in Privacy Engineering

27 © Nokia 2016

????!!!

Page 28: Using Safety-Critical Concepts in Privacy Engineering

28 © Nokia 2016

Help!

Not invented here!

Were there any industries or disciplines from which we could learn?

Or are software engineering and legal ’special’?

Page 29: Using Safety-Critical Concepts in Privacy Engineering

29 © Nokia 2016

29

Serendipity

© 2013 HERE | Title | Author | Company confidential

Page 30: Using Safety-Critical Concepts in Privacy Engineering

30 © Nokia 2016

Help!

Consider information to be a dangerous item

This has various meanings in aviation, medicine, civil engineering etc.

Page 31: Using Safety-Critical Concepts in Privacy Engineering

31 © Nokia 2016

31

A quick introduction to surgical infection control

© 2013 HERE | Title | Author | Company confidential

Page 32: Using Safety-Critical Concepts in Privacy Engineering

32 © Nokia 2016

32

A quick introduction to surgical infection control

© 2013 HERE | Title | Author | Company confidential

seriously!

Page 33: Using Safety-Critical Concepts in Privacy Engineering

33 © Nokia 2016

33

The Sterile Field

© 2013 HERE | Title | Author | Company confidential

Key:

• Sterile

• Non-sterile

Page 34: Using Safety-Critical Concepts in Privacy Engineering

34 © Nokia 2016

34

The Sterile Field

© 2013 HERE | Title | Author | Company confidential

Key:

• Sterile

• Non-sterile

Movement of materials from one area to the other must be controlled to prevent contamination of the sterile field with non-sterile items

Strict protocols prevent contamination

Page 35: Using Safety-Critical Concepts in Privacy Engineering

35 © Nokia 2016

Some things...

• Communication

• Culture

Page 36: Using Safety-Critical Concepts in Privacy Engineering

36 © Nokia 2016

Some things...

• Communication, Structure and Semantics

• Culture

Already solved...in other fields

Page 37: Using Safety-Critical Concepts in Privacy Engineering

37 © Nokia 2016

Standardised Communication

Public

Page 38: Using Safety-Critical Concepts in Privacy Engineering

38 © Nokia 2016

Standardised Communication

Probably not personal data/ Probably personal data

Page 39: Using Safety-Critical Concepts in Privacy Engineering

39 © Nokia 2016

Standardised Communication

Forget process, just get the information about what’s going on...

Page 40: Using Safety-Critical Concepts in Privacy Engineering

40 © Nokia 2016

Nokia Internal

Page 41: Using Safety-Critical Concepts in Privacy Engineering

41 © Nokia 2016

Nokia Internal

Page 42: Using Safety-Critical Concepts in Privacy Engineering

42 © Nokia 2016

Nokia Internal

Page 43: Using Safety-Critical Concepts in Privacy Engineering

43 © Nokia 2016

Public

Checklists

Page 44: Using Safety-Critical Concepts in Privacy Engineering

44 © Nokia 2016

Public

Checklists

Page 45: Using Safety-Critical Concepts in Privacy Engineering

45 © Nokia 2016

Public

Morbidity and MortalityAccident InvestigationReporting

Page 46: Using Safety-Critical Concepts in Privacy Engineering

46 © Nokia 2016

Public

Roles and Role Integration

R&D Team Checklist

(before review)

R&D Team Checklist

(post-review)

Audit Team Checklist(sign-in)

Audit Team Checklist

(time-out)

Audit Team Checklist(sign-out)

Project development & processes (time)

System

under

auditPrivacy

Officer

Legal

Security

Architects

Page 47: Using Safety-Critical Concepts in Privacy Engineering

47 © Nokia 2016

Public

Experience

DataCollection

CellID->Location

DataStorage

OperatorPrivacy

Preprocessing

Extraction Hashing

FileStorage

RawData

Processing &Enrichment

External Data

ExternalCross-

referencing

Atomic Data

Aggregation/Report

Generation

CustomerReception

ReportStorage

<<data subject>>Customer

Page 48: Using Safety-Critical Concepts in Privacy Engineering

48 © Nokia 2016

Public

Conclusions...

Page 49: Using Safety-Critical Concepts in Privacy Engineering

49 © Nokia 2016

Public

No heroes

Page 50: Using Safety-Critical Concepts in Privacy Engineering

50 © Nokia 2016

Public

Treat privacy as a safety-critical aspect

Page 51: Using Safety-Critical Concepts in Privacy Engineering