USC CSci599 Trusted Computing Lecture notes Spring 2007

22
Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE USC CSci599 Trusted Computing Lecture notes Spring 2007 Dr. Clifford Neuman University of Southern California Information Sciences Institute

description

USC CSci599 Trusted Computing Lecture notes Spring 2007. Dr. Clifford Neuman University of Southern California Information Sciences Institute. Administration. Class home page http://ccss.usc.edu/599tc Preliminary Syllabus Assigned Readings Lecture notes Assignments - PowerPoint PPT Presentation

Transcript of USC CSci599 Trusted Computing Lecture notes Spring 2007

Page 1: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

USC CSci599Trusted ComputingLecture notesSpring 2007

Dr. Clifford Neuman

University of Southern California

Information Sciences Institute

Page 2: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Administration

• Class home pagehttp://ccss.usc.edu/599tc– Preliminary Syllabus– Assigned Readings– Lecture notes– Assignments

• See me for D Clearance

Page 3: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Administration

• Class e-mail: [email protected]

• Instructor

– Dr. Clifford Neuman

– Office hours Friday 10:45-11:45 SAL 212

Page 4: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

USC CSci599Trusted ComputingLecture Two – Trusted HardwareJanuary 19, 2007 - PRELIMINARY

Dr. Clifford Neuman

University of Southern California

Information Sciences Institute

Page 5: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

NOTE

• These are place holders for the topics we will discuss today.

• There will be more slides by lecture.

Page 6: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

The Hardware Basis

• Trusted computing is proof by induction

– Each attestation stage says something about the next level

– Just like PKI Certification hierarchy

• One needs a basis step

– On which one relies

– Hardware is that step

▪ (well, second step anyway)

Page 7: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Hardware Topics

• Trusted Platform Module

• Discussion of Secure Storage

• Boot process

Page 8: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Trusted Platform Module

• Basically a Key Storage and Generation Device

• Capabilities:

–Generation of new keys

–Storage and management of keys

▪ Uses keys without releasing

Page 9: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Endorsement Key

• Every TPM has unique Endorsement key

–Semi-root of trust for system

–Generated and installed during manufacture

▪ Issues

–Real root is CA that signs public key associated with Endorsement key

Page 10: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Identity Key

• Key associated with certificate from a CA attesting to identity of the TPM and version / security attributes.

(I’m not sure of the relationship with the EK)

Page 11: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Storage Root Key

• Root of Key Hierarchy for managing keys related to TPM (except EK)

–Root key never leaves TPM

–Can be changed to reinitialize ownership.

Page 12: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Storage Keys

• Can protect data

• Can protect other keys

• Some storage keys may be migrated.

Page 13: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Binding Key

• Private key to decrypt data perhaps encrypted by others using a public key

Page 14: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Using Encryption

• LoadKey

–Generated or imported

• Sign

–Signs Data Presented to TPM

• Unbind

–Decrypt data from elsewhere in a public key

Page 15: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Using Encryption

• Seal/Unseal– Encrypt and subsequent decrypt– This TPM Only– PCRs must be correct

• Platform Configuration Register (PCR)– 20 by storage inside TPM is digest of

accumulated data.– Contains information about the programs and

other state of the processor.

Page 16: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Using Encryption

• Extend

–Add data to a PCR

– 20 byte hash hashed into current PCR

–As each module loaded its hash extends the PCR

• Quote

–Sign current value of PCR

Page 17: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Using Encryption

• CreateWrapKey–Creates and encrypts for transfer a new

RSA key• MakeIdentity–Creates an Attestation Identity key for a

user• TakeOwnership–Reinitialize TPM, and erases old keys

Page 18: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Using Encryption

• Other Functions

–OIAP/OSAP

–GetCapability

–GetRandom

Page 19: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

How to Use it For Atestation

• As modules loaded, their hashes extend the PCR.

• When attestation needed, remote entity can ask the TPM to sign PCR.

Page 20: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Peripheral Authenication

• TPM’s can be embedded in peripherals too, so a system knows it is dealing with an authentic biometric scanner or other kinds of devices.

Page 21: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

Exercise - Secure Storage

• Full Disk Encryption– Key in register in disk– Or key in TPM and data

encrypted/decrypted by TPM• Seagate Drive uses register in Disk– Key must be loaded– User prompt at BIOS– Or managed by TPM▪ But OS image maybe on disk, how to get

Page 22: USC CSci599 Trusted Computing Lecture notes Spring 2007

Copyright © 1995-2006 Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE

The Boot Process

–Work and example using the functions described already.