Protection and Security

Areas of Concern:
privacy: legal, social
security: external vs. internal
protection: mechanisms
Topics:
authentication: verifying a claim of identity
authorization: verifying a claim of permission
Models:
discretionary vs. non-discretionary
access control vs. flow control

<...many graphics missing...>

Safety

<...several graphics missing...>

Lattice Models

Lattice Model
subjects
objects
security classes (SC) (object x is in security class x)
Flow Policy:
(SC, -->)
--> is a reflexive, antisymmetric, transitive relation over SC
information is allowed to flow from object x to object y iff x --> y.
Lattice Flow Policy:
A flow policy is a lattice if there exists least upper bound and greatest lower bounds on SC

<...one graphic missing...>

Certification of Information Flow


For:
       b := f(a1,...,an)

verify that:
       a1 + ... + an --> b


For:
       if e then S1 else S2

verify that:
       e --> S1 x S2 

where:
       S1 = x { b | b is a target of an assignment in S1}
       S2 = x { b | b is a target of an assignment in S2}

Cryptography

<...cryptography graphic here...>

Forms of attack:
ciphertext-only
known-plaintext
chosen-plaintext

Forms of Cryptosystems

Private Key:
A single key is used for both encryption and decryption.
Key distribution problem - a secure channel is needed to transmit the key before secure communication can take place over an unsecure channel.
Public Key:
The encryption procedure (key) is public while the decryption procedure (key) is private.
Requirements:
  1. For every message M, D(E(M)) = M
  2. E and D can be efficiently applied to M
  3. It is impractical to derive D from E.

Secure Communication in a Public Key System

<...smiley graphic here...>

Rivest Shamir-Adleman (RSA) Method

<...RSA graphic here...>

Find RSA Method and Example
Secure Communication in a Public Key System
1. Choose two large (100 digit) prime numbers, p 
and q, and set
						n = p x q
2.	Choose any large integer, d, so that:
			GCD( d, ((p-1)x(q-1)) = 1
3.	Find e so that:
			e x d = 1 (modulo (p-1)x(q-1))
Example:
1.		p = 5, q = 11 and n = 55.
		(p-1)x(q-1) = 4 x 10 = 40
2.		A valid d is 23 since GCD(40, 23) = 1
3.		Then e = 7 since:
		23 x 7 = 161 modula 40 = 1

Authentication

Authentication Services:
digital signatures
interactive communication (client-server)
one-way communication (electronic mail)
Forms of Attack:
replay of messages
interference (inserting bogus messages)
Authentication Servers:
maintain a list of (user, key) pairs
securely distributes conversation keys

Digital Signatures (Public Key)

Requirements:

unforgable and unique
receiver: knows that a message came from the sender
sender: cannot deny authorship
message integrity
message signature unchangable
(e.g., cannot cut-and-paste a signature into a message)

Public Key System:

   sender, A:   (EA: public, DA: private)
   receiver, B:	(EB: public, DB: private)

   sender(A) ---- C= EB(DA(M)) ---> receiver(B)
   receiver(B) -- M = EA(DB(C)) ---> M

Secure Communication (Public Key)

Handshaking:

<...Handshaking graphic here...>

Obtaining a Public Key:

Suppose that A and B have not previously communicated. How does A securely obtain the public key of B?

An authentication server (AS) with a public key (PKAS) and a private, or secret, key (SKAS) is used as follows:

	A --> AS:					(A, B)
	AS --> A:					ESKAS(PKB, B)
Note: