Abstract:
Disclosed is a system for accurately storing and reading digital identifications and permissions with an access rights management component that protects the privacy and integrity of the data stored. Aspects of the invention enable effective use of smart cards for applications such as air travelers identity, medical information such as history and prescriptions, or secure employee access cards. Multiple levels of security are permitted to ensure that users of the data, programs, and other resources stored on the card may access only that data that they have been authorized to. The use of a single card for multiple user roles may be used in conjunction with multiple access methods.

Description:
RELATED APPLICATIONS  
       [0001]     This application is a continuation of U.S. application Ser. No. 10/846,005, filed May 14, 2004, currently pending, which is a continuation under 35 U.S.C. 111(a) of PCT/US02/36054, filed Nov. 12, 2002 and published on Jun. 12, 2003 as WO 03/048892, which claimed the benefit of U.S. Provisional Application No. 60/332,210, filed Nov. 14, 2001, which applications and publications are incorporated herein by reference. 
     
    
     FIELD OF THE INVENTION  
       [0002]     This invention relates to smart devices and more particularly to methods and systems for securing access to data on smart devices.  
       BACKGROUND OF THE INVENTION  
       [0003]     Currently, personal identity checks used in systems such as airline security or any activity for which tickets are required at best rely on a visual check with a photo ID together with a short person-to-person question and answer dialog to determine if a person seeking entry is the person he claims to be. There is rarely any further or extended validation completed to confirm the identity of the individual. Identity checks and information transferals for medical applications such as prescription fulfillment at a pharmacy are still being accommodated by a handwritten slip of paper.  
         [0004]     Distractions, visual fatigue, and the very subjective nature of identifying an individual by visual examination of a drivers license or other picture ID makes this an error prone and unreliable means of accomplishing the task of individual identification. Individuals may also fairly easily and effectively disguise either themselves or the graphical picture identification card to forge their identity for the purposes of traveling undetected and virtually untraceable. Furthermore, even if identity is established accurately, current identification systems do not support the storage of information relevant to the characteristics of the individual (e.g. felony convictions, potential terrorist threat). Also, because the information contained on the ID is visually read and interpreted, inaccuracies arise because information may be handwritten, or could be simply misread by the inspecting authority.  
         [0005]     The existing identity system using printed ID cards assumes only two roles: one of the cardholder and one of the inspector. Most commonly, everyone who inspects an ID has access to the same information. There is no means of securing card-bound identity data for use only for those with the proper authority to inspect this data. For this reason, the amount and type of data stored on an ID card is constrained to the lowest common denominator.  
         [0006]     Furthermore, the current system of visual inspection by an agent or employee of the airline only provides limited information about the cardholder. The information is typically static, in that it relies on printed media, and cannot be easily updated without a reissuance of the card or identification.  
         [0007]     The present disclosure relates generally to smart cards, smart card applets, applications, programs, files, and resources, computer security, identity cards, biometric identity systems, computer transactions, computer software applications, and the like. It describes variety of ways to address one or more of these problems.  
       SUMMARY OF THE INVENTION  
       [0008]     The present invention provides a software system and method for enabling an entity (an “authorizing agent,” e.g.) to efficiently and accurately identify an individual and one or more characteristics about the individual by using, for example, a secure smart card and a computing device. Once an authorizing agent has secured the identity of the individual data may be read, written, updated, or deleted on the individual&#39;s smart card for future identification, portable data storage, or as a step in an asynchronous transaction. An example of an asynchronous transaction with respect to the present invention might be the process of a medical prescription being written and later filled. One step in the transaction involves the doctor writing the information, amount, and conditions of the drug prescription at his or her office. The next step involves removing the card from the device and the patient taking it to a pharmacy, having the pharmacist insert the card into his or her computing device, and reading the data so that the prescription may be filled. The smart card may then be updated by the pharmacist to show where and when the prescription had been filled, or via electronically communicating the data from the smart card to a computer system that the doctor may access. Because these steps happen over an extended time period, and its component steps are not part of a single discrete system, it may be characterized as asynchronous.  
         [0009]     The present invention describes a method and system that allows for greater security via more and better means of identifying an individual and reporting characteristics of that individual. The invention optionally provides an infrastructure for even greater control and audit of controlled access to venues which require ticketing and other secure access means by providing a writable, updatable apparatus, the smart card, which can be accessed quickly and accurately through a computer network to contain new or updated information about an individual which may affect his or her qualification to gain access to the controlled or ticketed venue, or to take a particular drug. For instance, record of a felony conviction that prohibits international travel can very quickly and easily be written to the individual&#39;s travel card so that this restriction can be easily brought to the attention of an operator or agent of the airline at any point, from purchase of a ticket to the departure site. The present invention may also allow for the storage and retrieval of history, biometric data, and other data which may be updated at any point that the card is authenticated and inserted into a reader with an agent who is authorized to update card records.  
         [0010]     In accordance with one aspect of the disclosure, a smart device is provided, comprising: a data storage apparatus on the smart device; a plurality of data resources in the data storage apparatus on the smart device; a user role determination apparatus on the smart device for determining the role of a user requesting access to at least one of the plurality of data resources; and at least one permission apparatus on the smart device operative to receive the role of the user from the user role determination apparatus and to control based on the role of the user the access of the user to the plurality of data resources.  
         [0011]     In accordance with another aspect of the disclosure, a method is provided for selectively controlling access by multiple users to a plurality of data resources on a smart device, the method comprising the steps of: determining the identity of a user requesting access to at least one of the plurality of data resources on the smart device; determining the role of the user; and controlling, based on the role of the user, the access of the user to the plurality of data resources.  
         [0012]     In accordance with another aspect of the disclosure, a system for operating a smart device containing a plurality of data resources is provided, comprising: receiving apparatus connected to receive a user request to access at least one of the plurality of data resources on the smart device; determining apparatus connected to receive the request from the user and determine a role of the user; a memory on the smart device storing a plurality of permissions; and permissioning apparatus responsive to the role of the user and the plurality of permissions to provide access to the user to at least one of the plurality of data resources.  
         [0013]     These and other features and advantages will now be described with reference to the drawings of certain preferred embodiments, which are primarily intended to illustrate various embodiments and not to limit the invention. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0014]      FIG. 1  is a block diagram of a smart card system using a standard desktop computer configuration.  
         [0015]      FIG. 2  is a diagram of a smart card system using a standard desktop computer configuration connected to a network.  
         [0016]      FIG. 3  is a diagram showing an exemplary organization which graphically explains the relationship between user roles and smart card resource types in a healthcare prescription smart card application.  
         [0017]      FIG. 4  is a diagram showing an exemplary organization which graphically explains the relationship between user roles and smart card resource types hi an airline travel smart card application.  
         [0018]      FIG. 5  is an exemplary diagram showing multiple means of access to a smart card.  
         [0019]      FIG. 6  is an exemplary chart showing multiple default permission relationships for card data. 
     
    
     DETAILED DESCRIPTION  
       [0020]     The present disclosure describes a smart card based access system that enables identity and prejudicial access to data stored on the card based on the authority of the party who has requested card access. In this context, a smart-card enabled system  10  may be a stand-alone unit of the type shown in  FIG. 1 , including a host computer  12 , user input/output devices such as a keyboard  14 , a pointing device or mouse  16  and a display screen  18 . A conventional smart card reader or terminal  20  is connected to host computer  12 , with a smart card  22  shown inserted for reading and/or writing in terminal  20 .  
         [0021]     Alternatively, computer system  10  may be connected to a network  24  as shown in  FIG. 2  (wherein like elements to  FIG. 1  are indicated by like reference numerals). Network  24  may comprise one or more of many networks such as the Internet, a VPN (Virtual Private Network), an enterprise network, or an intranet.  
         [0022]     The identity and access system disclosed herein is accomplished by means of a simple, yet comprehensive permissioning system, which involves multiple access levels, and can be even further customized by an administrative user. The permissioning system is realized by the relationship between two defined entities, one example of which is illustrated in  FIG. 3 .  
         [0023]     With reference now to  FIG. 3 , a two entity system  25  includes an entity, represented by block  26 , that illustrates data resource types stored on the smart card. A block  30  illustrates the user role of the person or system attempting to access the card. This is based on the premise that more than one type of user may need access to an individual&#39;s card for any example application, but that any given user may have legitimate rights to access certain card resources, but have no rights to access others.  
         [0024]     Continuing with the example illustrated in  FIG. 3 , if a smart card is used to store medical prescription information, such prescription information includes physician data  26 - 1  and cardholder data  26 - 2 . The cardholder data  26 - 2  includes private data  26 - 3  of limited access and public data  26 - 4  of general access, the balance of the card holder data  26 - 2  accessible to the card holder. Prescription data  26 - 5 , for example, may include data available only for access by the physician as well as data only accessible by an authorized private party such as a pharmacist.  
         [0025]     The user entities illustrated in user block  26  include the card holder  30 - 1 , one or more pharmacists  30 - 2 , one or more doctors  30 - 3  and others  30 - 4  with access to the public data. The card holder  30 - 1 , in this case the patient, and her doctor  30 - 3  may have rights to examine the drug and prescription fulfillment information which is stored on the card, but a representative of the insurance company may not have rights to view or change this information. Pharmacist  30 - 2  may, for example, have access to read and update fulfillment information within private data  26 - 3  of prescription data  26 - 2 , but read-only access to the prescription entered as physician data  26 - 1  of prescription data  26 - 2 .  
         [0026]     The cardholder (patient)  30 - 1  will have all rights to public data and may have rights to certain or all private cardholder data, but may have only read access to data to prescriptions that her doctor has written. Conversely, some data that is stored on the card may be characterized as ‘public,’ i.e. the data stored in public data  26 - 4 , so that anyone who reads the card may quickly and easily find this data. An example of ‘public’ data may be organ donor information, blood type, drug allergies, the cardholder&#39;s basic information (name, insurance ID and Group numbers), and emergency telephone and contact information.  
         [0027]     With reference now to  FIG. 4 , another two entity system  40  includes an entity, represented by block  42 , that illustrates data resource types stored on the smart card. A block  44  illustrates the user role of the person or system attempting to access the card. This is based on the premise that more than one type of user may need access to an individual&#39;s card for any example application, but that any given user may have legitimate rights to access certain card resources, but have no rights to access others.  
         [0028]     Continuing with the example illustrated in  FIG. 4 , if a smart card is used to store airline travel and ticketing information, such information includes securities and customs data  42 - 1  and cardholder data  42 - 2 . The cardholder data  42 - 2  includes private data  42 - 3  of limited access and public data  42 - 4  of general access, the balance of the card holder data  42 - 2  accessible to the card holder. Travel restriction data  42 - 5 , for example, may include data available only for access by securities and customs as well as data only accessible by an authorized private party.  
         [0029]     The users entities illustrated in user block  44  include the card holder or traveler  44 - 1 , one or more airline ticketing agents  44 - 2 , one or more government agencies  44 - 3  and others  44 - 4  with access to the public data.  
         [0030]     The cardholder (patient)  44 - 1  will have all rights to public data and may have rights to certain or all private cardholder data, but may have only read access to data to travel restrictions. Conversely, some data that is stored on the card may be characterized as ‘public,’ i.e. the data stored in public data  44 - 4 , so that anyone who reads the card may quickly and easily find this data. An example of ‘public’ data may be the cardholder&#39;s basic information and emergency telephone and contact information.  
         [0031]     A detailed view of a permissioning system for the preferred embodiment is shown in  FIG. 6  which explains a comprehensive set of rules that can easily be encoded into a software development kit so that the underlying fundamentals of security and accuracy are preserved, while allowing a custom application to be developed to meet unique business requirements. With particular reference now to  FIG. 6 , a first exemplary table  6 - 1  is shown including four rows  60 - 1  through  60 - 4  showing user roles and seven columns  62 - 1  through  62 - 7  showing permissions granted those users to various data resources. More particularly, the user roles include: public, cardholder, order fulfillment and administrative. The permissions include: read, insert, update, delete, grant, grant with grant option and revoke. The intersections in table  6 - 1  of user roles and permissions contain codes indicating the particular user type having the permission, the codes described in a second table  6 - 2  showing a column  64 - 1  of five codes and a corresponding column  64 - 2  of code descriptions. More particularly, code “ALL” corresponds to “EVERYONE WITH CARD ACCESS,” “C” corresponds to “CARDHOLDER”, “OF” corresponds to “ORDER FULFILLMENT,” “AU” corresponds to “ADMINISTRATIVE AUDIT,” and “AS” corresponds to “ADMINISTRATIVE SUPERUSER.” 
         [0032]     The intersections of columns  60 - 1  through  60 - 4  with the rows  62 - 1  through  62 - 7  thus indicate who, as identified in table  6 - 2 , is authorized to perform the function.  
         [0033]     The permissioning system described in  FIG. 6  relies on rules that determine any ‘role’ to access data that has been classified as any given ‘data resource type’. The terms are defined below.  
         [0034]     With respect to data resource types, a data resource can be a file, applet, application, program, directory, folder or any accessible data component to be stored on the smart card. If a data resource is a directory or folder, the files it contains inherit the permissions and access rights of the folder. File access rights can never supersede the rights of their container folders or directories. Thus, permissions include access to data resources. For example, one could never create a folder with type ‘Order Fulfillment’ and give users of role ‘Member’ insert rights into files in that folder.  
         [0035]     With respect to public data access ( 60 - 1 ), in the described embodiment of the invention, anyone can read public data. Access to Public data on a smart card typically is not protected by PIN. Access to the various permissions are set out in rows  62 - 1  through  7  of column  60 - 1 .  
         [0036]     With respect to order fulfillment data access ( 60 - 3 ), in the described embodiment of the invention, data resources classified as ‘Order Fulfillment’ is data that has use or relevance to order fulfillment authorities such as authorized ticketing, customs, or medical personnel. Ordinarily, a Cardholder can read some or all of the data but often will not be able write Order Fulfillment data. For example data classified as Order Fulfillment may not be available for the cardholder to read. For example, with respect to travel, only airline or security personnel may view this data. Cardholder role members can grant some permissions to members of Order Fulfillment role. Members of Order Fulfillment role can read and write. Access to the various order permissions are set out in rows  62 - 1  through  7  of column  60 - 3 .  
         [0037]     With respect to cardholder data access ( 60 - 2 ), in the described embodiment of the invention, Cardholder Data is that which has use or relevance to cardholder and may be changed by the cardholder (e.g. a list of proxies for living will, organ donation information. Ordinarily, information such as prescriptions and travel itineraries while of use to the cardholder are not candidates for this data resource type because the cardholder ordinarily does not have authority to change, delete, or add this data. Ordinarily, it should instead be assigned to the Order Fulfillment data resource type). Access to the various cardholder permissions is set out in rows  62 - 1  through  7  of column  60 - 2 .  
         [0038]     With respect to administrative data resource ( 60 - 4 ), in the described embodiment of the invention, Administrative Data Resources can only be read, inserted, updated, or deleted by the administrative role. Access to the various administrative permissions is set out in rows  62 - 1  through  7  of column  60 - 4 .  
         [0039]     With respect to user permissions, again shown at the intersections of columns  60 - 1  through  60 - 5  with rows  62 - 1  through  62 - 7  hi table  6 - 1 , hi the described embodiment of the invention, any user who may access any card data resource must be assigned to one or more user roles. The role under which a user requests the privilege of reading, writing, altering, deleting, or granting determines his or her authority to perform that activity.  
         [0040]     With respect to the public user role, in the described embodiment of the invention, members of the Public role can read data which is typically considered unsecure or publicly available. Access is Read-Only to data resources marked Public. There is no write access available to Public Roles unless a data resource, is created explicitly for this purpose (e.g. electronic coupons, loyalty points, etc.)  
         [0041]     With respect to the cardholder user role, in the described embodiment of the invention, the cardholder can read all data areas that are not marked ‘administrative’ and can grant or revoke access permission to members of Order Fulfillment role.  
         [0042]     With respect to the order fulfillment user role, in the described embodiment of the invention, the Order Fulfillment role is reserved for trusted parties who use card data for specific, trusted activities. For a healthcare card, Order Fulfillment may be a pharmacist who uses card data to fill or update a prescription. For travel, the Order Fulfillment role may be a ticketing authority. Order Fulfillment members can read and write data only in Order Fulfillment data resources, while having read-only access in Public and Cardholder data resources. In alternative embodiments of the invention, there may be multiple levels of authority who are not characterized as Cardholder or Administrative that may be accurately characterized as “Order Fulfillment” or “Enabling Authority” roles (e.g. “Order Fulfillment 1”, “Order Fulfillment 2” or “Enabling Authority 1”, “Enabling Authority 2”). Each of these roles may have separate and discrete rights to data stored on the card.  
         [0043]     With respect to the administrative audit role, in the described embodiment of the invention, Administrative Audit has been granted access to all card data resources. Can write temporary or permanent access or use restrictions or permissions in all public and private data areas on the card.  
         [0044]     With respect to the administrative superuser (root) role, in the described embodiment of the invention, Administrative Superuser is an extremely trusted role, reserved for parties with absolute authority over card use and permissions. For travel applications, this may be specially entrusted FBI or FAA employees. For healthcare applications, this may be the card issuing authority. Administrative Superusers can write all public and private card data areas, can create new roles, including administrative roles and grant specific access privileges to each.  
         [0045]     The chart shown in  FIG. 6  thus shows the rights management organization in terms of user roles and pre-defined data resource types. The concept is that there are generally definable categories of users and smart card data resources upon can be applied a simple set of access rules that will apply in a broad range of instantiations of the invention.  
         [0046]     In the embodiment of the invention described by  FIG. 6 , the Cardholder role indicated at C* (column  60 - 2 , rows  64 - 5 ,  6 , and  7 ) may grant a ‘Cardholder Proxy’ role to another individual for specific Power of Attorney or Living Will circumstances. The purpose of this type of grant is not to identify the Cardholder Proxy as the Cardholder, but rather to allow the Cardholder Proxy to make decisions or to make Order Fulfillment grants on behalf of the Cardholder, should that individual not be able to personally conduct those activities.  
         [0047]     In the embodiment of the invention described by  FIG. 6 , the grants indicated as “**” at row  60 - 3 , columns  62 - 5 ,  6  and  7  can occur if member was given grant with grant option.  
         [0048]     In the embodiment of the invention described by  FIG. 6 , the Administrative role grants indicated as “***” at row  60 - 4 , columns  62 - 5  and  7 , may only grant/revoke Read access to all non-public roles. This, in effect, makes the resource an ‘Administrative Read-Window’ to members of non-Administrative, non-Public roles.  
         [0049]     With respect to administrative roles, in the described embodiment of the invention, Administrative Superuser role also has Create Role, Create Data Resource Type authority. Administrative Audit role may not create roles or resource types. This is why there is a distinction between the two Administrative roles.  
         [0050]     With respect to grants and revokes, in the described embodiment of the invention, allowable Grants for any data resource are: Grant Read, Grant Insert, Grant Update, Grant Delete, Grant Resource (grants all of Read, Insert, Update, and Delete), and Grant Resource with Grant Option (same as Grant Resource, but allows Grantee to make grants to other users).  
         [0051]     In the described embodiment of the invention, allowable Revokes are: Revoke Read, Revoke Insert, Revoke Update, Revoke Delete, Revoke Grant Option, Revoke Resource (this revokes Grant Option if it was granted) and Revoke All (which revokes all privileges that have been granted).  
         [0052]     Further in the described embodiment of the invention, grants may also be given with Session Access Tokens. This allows the patient to determine how long a trusted party has access to a card data resource.  
         [0053]     The underlying system and method enables many embodiments of the invention. Throughout the disclosure, the reader has seen examples of medical healthcare and travel ID embodiments, but the reader can easily deduce embodiments, for example, for corporate or government identification, event security management, driver&#39;s license applications, or international import/export applications, where an authority&#39;s rights and discrete levels of access need to be quickly, easily, and accurately discerned, and decisions may be authorized based on these determinations.  
         [0054]     From the description above, key advantages of the invention become evident.  
         [0055]     The use and implementation is direct enough to be deployed widely.  
         [0056]     The invention is comprehensive enough so that it can be used, implemented, and customized to suit a variety of applications requiring access rights management for users and administrators. The invention does not require extensive programming to add additional functionality or customizations.  
         [0057]     The invention is flexible. Built-in primitives must provide enough immediate utility for a broad variety of personal access management applications (e.g. Healthcare, Travel, Government ID).  
         [0058]     The invention allows for extensibility of application. Definitions and rules must be able to be easily extended for special-purpose applications without disqualifying the basic tenets of the invention. For example, a Government ID card application would certainly require custom user roles, which could not be practically defined prior to a custom implementation. The invention must make provisions for defining custom roles that are subject to built-in access rights management standards.  
         [0059]     Specifically, new applications of smart card technology are enabled by the invention.  
         [0060]     Applications requiring multiple access methods are made possible. While enabling the flexibility of allowing multiple roles of users to access card data, a permissioning system consisting of discrete grants and revokes can maintain the data security and separation of data required for each accessing role.  
         [0061]     The reader will see that the methods described herein will enable a more robust, accurate, and simple system for describing identity and authorized smart card data resource access than was possible before in that:  
         [0062]     Cardholder identity can be discerned quickly and easily.  
         [0063]     Multiple levels of card access are permitted, ensuring that the rights associated with the user&#39;s role are strictly enforced.  
         [0064]     Multiple means of accessing the card are made possible. For example, as illustrated in  FIG. 5 , a PIN access  70  may be required for a user to access his/her own card data  72 . An authorized third party may have a secure key in a 3DES embodiment  74  that may be submitted to a card  73  to only allow access to a first secure data type  76  within the predetermined rights of that role. A different authorized party may have a secure key in a PKI embodiment  78  that may be submitted to the card to only allow access to a second secure data type  80  within the predetermined rights of that role. An administrative ‘super user’ such as a representative of an authorized government body may gain administrative access to the card via: 
        a) a special PIN reserved for administrative access users     b) another key in a 3DES embodiment, or     c) a private key in a Public Key Infrastructure (PKI) embodiment.        
 
         [0068]     The cardholders stored data may be updated quickly and easily within the constraints of the rights of an authorized accessing entity.  
         [0069]     Smart card use and access is more flexible, being able to be used in a plurality of situations, with multiple types of access in multiple scenarios, while still maintaining the security and privacy enabled by single user access scenarios of the past.  
         [0070]     Default roles (e.g. “cardholder”, “order fulfillment”, “administrative super-user”) may be used to satisfy the access requirements of a number of applications.  
         [0071]     Custom user roles, data resource types, and access requirements may be written to the card for a specific application (commonly called “pre-issuance customization” or “personalization”).  
         [0072]     Administrative users may create new roles, data resource types, and access requirements after the card has been issued.  
         [0073]     There has thus been provided new and improved methods and systems for storing and accessing data on devices such as smart cards. The invention has been shown to have application in a variety of industries, including the travel industry, medical industry and others.  
         [0074]     While the invention has been shown and described with respect to particular embodiments, it is not thus limited. Numerous modifications changes and improvements within the scope of the invention will occur to the reader.