Wednesday, December 10, 2008

[OS-FA08]: Lampson92

The paper was well written and provides a thorough overview of authentication. The paper attempts to define a logic based approach to authentication in distributed systems.

The logic used to describe the system may be useful for designing the system but we are concerned that it doesn't help explain the system. We are unsure what the contribution is because it appears that most of the work was preexisting. It was interesting that they implemented most of the mechanisms.

Lampson91

SUMMARY
The paper “Authentication in Distributed Systems: Theory and Practice” by Lampson,et.al. describes the logic behind a computer security model for use in a distributed system. The authors also contend that they have implemented the logic in a real authentication system but offer little information about the implementation. The theory they present seems consistent with modern security implementations used currently in production systems.

They also present several conceptual trade-offs or pairings that are important in security system design. For example, a security system needs to distinguish between authentication and authorization, the first term representing the need to define who wants to access a particular resource while the second term defines whether the principal wanting to access the resource actually has the privilege of doing so. Another tradeoff they identify is balancing security and availability, especially if we extend the definition of availability to include ease-of-use. For example, a 25-character password that must be changed every 3 days is probably more secure than a 4-digit pin number that never changes; however, users would probably find the shorter, non-variable password easier to use. Finally, the authors distinguish between using encryption for secrecy versus integrity although encryption can be used for both.

The authors state that their theory has been implemented for a group of 50 researchers at DEC’s Systems Research Center in Palo Alto.


OBSERVATIONS
I think the major benefit of this paper is that it presents a framework for the various issues that a designer needs to consider in developing a security system. The authors also referenced several “state-of-the-art” security tools such as RSA, Kerberos and DES (3DES is actually the latest shared key encryption standard but it’s basically a multiple application of DES). It would be interesting to know if the authors used the work done in designing these tools as the basis for their theory. In other words, did they develop a theory to satisfy the application?

There were two security issues that seemed to be overlooked in the paper although that doesn’t imply that the theory doesn’t satisfy these needs. First, they don’t directly address the possibility of a person who lacks the authorization to access a given resource can still give that authorization to another user. This would be the equivalent of a user administrator adding a person to a group that allows its members to access a file without the administrator actually being a part of that group. While the administrator could theoretically add himself to the group as well, the administrator does not have any of that group’s privileges at the time he adds the user. Second, they didn’t discuss the use of roles as a set of privileges assigned by a third party to a user. Their focus was on roles as a construct assigned by a user to control his or her own privileges.

Another observation that I found important was the relative difference in speed between public and shared key encryption. On p. 13, the authors show the results of tests that indicate that shared key encryption is 1000-5000 times faster than public key encryption. While those tests utilized MD4 and DES which have subsequently been replaced by MD5 and 3DES, even these later technologies are probably several orders of magnitude faster than RSA.


ISSUES
There is still a tremendous need for the Lampson model to be implemented in a robust production system. There are many security subsystems which address a portion of their theory (e.g. IPSec) but I’m not aware of a single vendor that presents a comprehensive solution.

While I believe their model extends to biometric authentication means, it would have been interesting to have the authors consider methods of authentication that are independent of the workstation and server.

Finally, there might be an opportunity to develop corollaries to the Lampson theory that could reduce the steps involved in authentication/authorization or improve the integration between user names and public keys.

Jerry Kruczek

Lampson91

The paper defines the notion of principals as sources for requests. These requests are performed on objects such as files, devices or processes. A reference monitor that examines each request and decides whether to grant it. The paper also introduces the concept of a Trusted Computing Base. Lampson defines the trusted computing base of a computer system as simply a small amount of software and hardware that security depends on and that we distinguish from a much larger amount that can misbehave without affecting security. The theory described in the paper explains how to reason about a principal’s authority by deducing the other principals that it can speak for. An authenticating a channel is one important application They use the theory to explain many existing and proposed mechanisms for security.

Lampson91

The authors describe a language to help talk about the problems of authentication in distributed systems, and subsequently state some of those problems, their solutions, and some of their own work. Their work is based on the idea of objects, request, principals and monitors, where an object is something like a file or a device, a request is to use an object, a principal is the entity making the request, and the monitor is in charge of validating requests. They define a language for this using terms like "Channel C speaks for principal A", etc, and set up the logical framework for much of the previous work in this area.

I liked that they were able to define a standardized way to talk about these security problems, but because I don't have much background in security issues I found a lot of it very hard to follow.

[OS-FA08]: Lampson 91

A theory of authentication and a system to implement that is discussed. Theory consists of principals and relation between principlas. Simple and compound principals,channels etc are defined. Also they've used this theory to explain many existing and proposed mechanisms of security. Theory deals with principals and statements. Principlas can say things and statements are the things they say. A "speaks for" relation exist between principals.The concept of encryption is also explained mainly that of shared and public key. Another important fact that has an impact on security is "trusted computing base" (TCB)-a small amount of software and hardware. One of the popular public encryption scheme, Rivest-Shamir-Adleman or RSA and other schemes like Needham-Schroeder and Kerbos are given in detail. Finally,they've described the system they built and its features like passing principals as arguements efficiently, handles public and shared key encryption etc.On the whole the paper was interesting.

[OS-FA08]: Lampson91

This paper proposed a theory of authentication in distributed systems, and it started with basic concepts like channels, principals, etc. The most interesting part of this paper is its discussion in section 8, authenticating inter-process communication, which is still an important aspect of today's research especially in terms of network security, which has some kind of similarity with web service communications, but web services are usual at a large level. And more interestly, they have a system implemented based on the theory.

[OS-FA08]: Lampson92

This paper explains the theory behind authentication in distributed systems.

The basic idea of the paper is to discuss the underlying theory behind the authentication protocols in the various distributed systems of the time, including Needham-Schroeder and Kerberos. It also described basic concepts that increase the security of the systems, such as refreshing keys and public/private key cryptography.

They then go onto explain how this theory fits into their new method of authentication. That is, treating almost everything about the machine as untrusted, and thus requiring more security via revoking certificates and requiring secure machine booting.

In all it was an interesting paper, that was perhaps too long winded and could have gotten away with being much more concise.