SEC: object security
Chris Harris
chharris@u.washington.edu
Mon, 31 Oct 1994 16:04:37 -0800 (PST)
As for securing object handles, I propose the following: each object,
process, or whatever our unit of allocation for security, would have a
patch of memory that could only be accessed by the OS. When you first
access an object, you specify what offset into this protected area to use
as the handle. If access is allowed, the appropriate area of the secure
memory is updated to include the handle. From then on, you could pass
the offset into the protected area instead of a handle. The OS
would decode this, and use what it finds as the handle. While it might
be slightly slower, it would be impossible to "guess" an object's handle,
and it would make it easier to remove privlidges at the same time. The
dependence on compilers for security would also be removed, and this,
imho, is a VERY important. Backdoors are not a good idea....
-Chris
"If patterns of 1s and 0s were 'like' patterns of human lives and death,
if everything about an individual could be represented in a computer by a
long string of 1s and 0s, then what kind of creature would be represented
by a long string of lives and deaths?" --Thomas Pynchon
On Mon, 31 Oct 1994, Francois-Rene Rideau wrote:
> To me we only need one security scheme:
> "if you can access the object, you can access it",
> i.e. if you were given a handler for an object, you can use it
> as you like. If an object is to be secure, just don't give away
> handles to it, but handles of objects that will filter accesses to it.
> Lazy evaluation and optimization will automatically resolve levels of
> indirections when possible, so no performance loss is present.
> But with this protection scheme, we need be sure binaries won't forge
> object handles. That's why the system should only run binaries with
> some secure PGP signature, that only a safe compiler can produce.
>
>