Polyinstantiation
Encyclopedia
Polyinstantiation in computer science
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...

 is the concept of type (class, database row or otherwise) being instantiated into multiple independent instances (objects, copies). It may also indicate, such as in the case of database polyinstantiation, that two different instances have the same name (identifier, primary key).

Operating system security

In Operating system security, polyinstantiation is the concept of creating a user or process specific view of a shared resource. I.e. Process A cannot affect process B by writing malicious code to a shared resource, such as UNIX
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 directory /tmp.

Polyinstantiation of shared resources have similar goals as process isolation
Process isolation
Process isolation is a set of different hardware and software technologies designed to protect each operating system process from other processes...

, an application of virtual memory
Virtual memory
In computing, virtual memory is a memory management technique developed for multitasking kernels. This technique virtualizes a computer architecture's various forms of computer data storage , allowing a program to be designed as though there is only one kind of memory, "virtual" memory, which...

, where processes are assigned their own isolated virtual address space
Virtual address space
Virtual address space is a memory mapping mechanism available in modern operating systems such as OpenVMS, UNIX, Linux, and Windows NT...

 to prevent process A writing into the memory space of process B.

Database

In databases, polyinstantiation is database-related SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....

 (structured query language) terminology. It allows a relation to contain multiple rows with the same primary key; the multiple instances are distinguished by their security levels . It occurs because of mandatory policy. Depending on the security level established, one record contains sensitive information, and the other one does not, that is, a user will see the record's information depending on his/her level of confidentiality previously dictated by the company's policy

Consider the following table, where primary key is Name and λ(x) is the security level:
Name λ(Name) Age λ(Age) λ
Alice S 18 TS TS
Blob S 22 S S
Blob S 33 TS TS
Trudy TS 15 TS TS


Although useful from a security standpoint, polyinstantiation raises several problems:

- Moral scrutiny, since it involves lying;

- Providing consistent views;

- Explosion in the number of rows;

Cryptography

In cryptography
Cryptography
Cryptography is the practice and study of techniques for secure communication in the presence of third parties...

, polyinstantiation is the existence of a cryptographic key in more than one secure physical location.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK