DRAFT DRAFT DRAFT
CREATED: 4/10/1998
UPDATED: 3/10/1999
BY: Jonathan A. Ives
MIT ID Home Page
The History of the MIT ID
Purpose of an Identifier
Most distributed computing systems use an identifier other than a person's
name to associate related records about an individual across multiple systems.
In database terminology, this identifier is called a key and it
has certain attributes including that each person must have one of these
unique identifiers. Since it is difficult to change a primary key once
it has been established, primary keys are usually not based upon something
that is likely to change.
MIT's Use of Social Security Numbers as an Identifier
Historically (at least through 1994), many of MIT's departmental
computing systems relied on a person's Social Security Number (SSN),
or other identifying number, to maintain information about individuals
and where necessary to match records between systems. Many of these
systems are now available via the Institute computing network
(MIT-NET) and the Internet at large. Privacy concerns have increased
the awareness as to the sensitivity of a person's Social Security
Number especially since many governmental and some commercial systems
also use Social Security Numbers.
In reaction to these privacy concerns, MIT began to restrict the
use of a person's SSN which is now considered to be part of the
personal data which is protected by Institute privacy policies (MIT Policy and
Procedures: Privacy and Disclosure of Information). Not all
departments have legitimate business needs to keep a person's SSN and
those that do usually only need it for a subset of the MIT community.
The Inception of the MIT ID Number
Since SSN can no longer be used as an Institute wide identifier, MIT's
Data Administrator initiated the creation of an MIT ID to identify people
across the Institute's departmental systems. MIT ID assignment and lookup
are discussed along with a number of other projects in the Tech Info document
People Related Projects: 37707.txt
which was emailed to MIT Information Systems Directors in August, 1994.
That document outlines the establishment of the MIT ID and a common identification
service to enable MIT ID lookup and assignment. This service was
initially called the People Database but was then renamed as the MIT ID
Database in the fall of 1997.
People Database V1.0
The initial development of the People Database V1.0 was completed in about
August 1995 by Kee Luk and Jenny Khuon working with the MIT Data
Administrator Scott Thorne. Initial deployment of the stand-alone application
was to User Accounts. Initial deployment of the Microsoft Windows DLL which
implemented the API was to the Athletic Lottery. During the summer and
fall of 1997, the stand-alone application was further deployed to the Personnel
Office and to the Card Office by Jonathan Ives.
MIT ID V2.0
Through the deployment of V1.0, it became apparent that in order to
better integrate MIT ID numbers with departmental systems, some
enhancements were needed. During 1998, V2.0 development enabled the
integration of the Graduate Admissions back-end service with a new
V2.0 MITID Database Service which also provided better support for
existing V1.0 client applications. During this timeframe, the
Atheletic Lottery application was migrated from using the V1.0 Windows
DLL (16 bit) to the new V2.0 Windows DLL (32 bit). The V2.0 DLL
supports enhancements to the search algorithm and provides an easier to use
Application Programmer Interface. ( See the Project Notebook for more
details: V2 Project Notebook)
MIT ID V2.1
While V2.0 development met the bulk of the Graduate Admissions needs,
some areas still needed improvement. One of the barriers for people
who used the service was that it required the installation of the
PowerBuilder application on the end user's desktop machine and this
application only supports Windows users. The primary focus of V2.1 was
to provide an alternative Web interface that would be accessible
across platforms and would meet the needs of most users. The web
interface for V2.1 consists of a CGI program running on an Apache SSL
server. The CGI program is written in C and calls a Unix version of
MITID Application Programmer Interface. The previous Windows DLL was
ported to a Unix library.