throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2003/0093690 A1
`Kemper
`(43) Pub. Date:
`May 15, 2003
`
`US 20030093690A1
`
`(54) COMPUTER SECURITY WITH LOCAL AND
`REMOTE AUTHENTICATION
`(76) Inventor: Stefan Kemper, Boise, ID (US)
`Correspondence Address:
`HEWLETTPACKARD COMPANY
`Intellectual Property Administration
`P.O. BOX 272400
`Fort Collins, CO 80527-2400 (US)
`(21) Appl. No.:
`10/003,138
`(22) Filed:
`Nov. 15, 2001
`
`Publication Classification
`
`(51) Int. Cl." ....................................................... H04L 9/00
`(52) U.S. Cl. .............................................................. 713/201
`(57)
`ABSTRACT
`A Secure computer System including a client having a client
`database for locally-authenticating a user; and a Server, in
`communication with the client, having a Server database for
`remotely-authenticating the user in response to a request
`from the client. The System also provides updating of the
`client database according to results of the local and remote
`authentication.
`
`200
`
`
`
`
`
`
`
`REGUEST USERNAME
`AND PASSWORD
`102
`
`OUERY LOCAL
`DATABASE
`104
`
`LOCAL
`AUTHENTICATION
`
`RECORD
`FOUNDP
`106
`
`PASSWORDS
`MATCHP
`108
`
`GRANT ACCESS
`110
`
`
`
`QUERY REMOTE - 1.
`DATABASE
`114
`YES
`REMOTE
`AUTHENTCAT
`ICATION
`
`
`
`RECORD
`FOUNDP
`116
`
`MO
`
`-—----->
`
`
`
`
`
`
`
`
`
`
`
`|
`|
`:
`
`GRANTICONTINUE
`ACCESS
`128
`
`
`
`
`
`:
`
`y
`DENTERNATE
`120
`
`
`
`PASSWORDS
`MATCHP
`118
`--------- - YES
`w
`----
`y
`ADDRECORD TO LOCAL | DELETE RECORD FROM
`DATABASE
`:
`LOCAL DATABASE
`122
`124
`
`IPR2018-00067
`Unified EX1034 Page 1
`
`

`

`Patent Application Publication May 15, 2003 Sheet 1 of 3
`
`US 2003/0093.690 A1
`
`,
`
`CLIENT
`10
`
`
`
`CLIENT
`DATABASE
`12
`
`SERVER
`20
`
`
`
`SERVER
`DATABASE
`22
`
`L
`
`FIG. 1
`
`IPR2018-00067
`Unified EX1034 Page 2
`
`

`

`Patent Application Publication May 15, 2003 Sheet 2 of 3
`
`US 2003/0093.690 A1
`
`100 Y
`
`
`
`RECQUEST USERNAME
`AND PASSWORD
`102
`
`wo- or roos - - - - -w- ww.
`
`alth is a as or m as
`
`m or aws was a
`
`an
`
`FIG. 2
`
`LOCAL
`
`NO - - - - - - -
`
`OUERY LOCAL
`DATABASE
`104
`
`RECORD
`FOUND?
`106
`
`Ya
`
`PASSWORDS
`MATCH2
`N108
`
`
`
`
`
`
`
`GRANT ACCESS
`110
`
`
`
`QUERY REMOTE
`DATABASE
`114
`
`REMOTE
`AUTHENTCATION
`
`1
`RECORD
`FOUNDP
`116
`
`
`
`
`
`GRANT/CONTINUE
`ACCESS
`128
`
`1 PASSWORDS
`MATCH2
`118
`
`
`
`DENYITERMINATE
`ACCESS
`120
`
`ADD RECORD TO LOCAL
`DATABASE
`122
`
`DELETE RECORD FROM
`LOCAL
`DATABASE
`124
`
`IPR2018-00067
`Unified EX1034 Page 3
`
`

`

`Patent Application Publication May 15, 2003 Sheet 3 of 3
`
`US 2003/0093.690 A1
`
`200
`
`
`
`
`
`
`
`RECQUEST USERNAME
`AND PASSWORD
`102
`
`:
`
`FIG. 3
`
`LOCAL
`AUTHENTICATION
`
`OUERY LOCAL
`DATABASE
`104
`
`
`
`RECORD
`FOUND 2
`106
`
`
`
`M
`
`V YES
`u1
`PASSWORDS
`MATCH7
`108
`
`YES
`
`
`
`GRANT ACCESS
`110
`------------------ |------
`QUERY REMOTE
`SAME AS
`DATABASE
`- Y -
`LAST OUERY
`114
`YES
`112
`t
`REMOTE
`AUTHENTCATION
`RECORDS
`FOUND7
`116
`
`
`
`
`
`- - - - - - -
`
`NO
`
`YES
`
`
`
`
`
`--
`
`
`
`GRANT/CONTINUE
`ACCESS
`128
`
`:
`
`
`
`
`
`PASSWORDS
`MATCH2
`118-1
`YES
`
`
`
`NO
`:
`
`DENYITERMINATE
`ACCESS
`120
`
`ADDRECORD TO LOCAL
`DATABASE
`122
`
`DELETE
`RECORD FROM
`LOCAL DATABASE
`124
`
`IPR2018-00067
`Unified EX1034 Page 4
`
`

`

`US 2003/0093690 A1
`
`May 15, 2003
`
`COMPUTER SECURITY WITH LOCAL AND
`REMOTE AUTHENTICATION
`
`TECHNICAL FIELD
`0001. The subject matter disclosed here generally relates
`to Security Support for electrical computers and digital
`processing Systems, and, more particularly, to an apparatus,
`method, and logic for authentication and authorization of a
`USC.
`
`BACKGROUND
`0002 Authentication and authorization are important
`aspects of any Security System, including computer Security
`systems. “Authentication” refers to the verification of the
`identity of a perSon or proceSS before they perform other
`System actions. In a communication System, authentication
`may involve simply verifying that a message comes from its
`Stated Source. For example, a bank might compare the
`Signature on a hand-written check to a Sample signature on
`file. Like Signatures, however, many other forms of personal
`identification can also be forged. Consequently, So-called
`"strong authentication' uses a combination of items belong
`ing to at least two of the following three categories: 1)
`personal knowledge (such as a password or personal iden
`tification number); 2) personal possessions (such a cardkey
`or other physical token); and 3) personal characteristics
`(Such as a handwriting Sample, voiceprint, fingerprint, or
`retina Scan).
`0003. In general terms, “authorization' is the process of
`enforcing policies for authenticated entities, Such as policies
`for determining what types of activities, resources, or Ser
`vices may be used. Typically, once an entity has been
`authenticated, the authorization process will determine
`whether that entity has the authority to issue certain com
`mands. For example, in the check-writing Scenario described
`above, a bank might confirm the availability of funds in the
`payer's account before following the instruction on the
`check to transfer funds to the payee. Similarly, in an elec
`tronic computer System, the authorization process may auto
`matically provide an authenticated individual (who is logged
`on with the correct username and password) with the author
`ity to issue any command. In fact, “acceSS control” is the
`primary means for enforcing authorization policies by grant
`ing, denying, and/or terminating access to an unauthorized
`proceSS or device.
`0004 Authentication, authorization, and accounting
`(“AAA”) is a term that is sometimes used to describe a
`general framework for intelligently controlling access to
`computer resources, enforcing policies, auditing usage, and
`providing the information necessary to manage those
`resources. Various Requests for Comments (“RFCs) of the
`Internet Engineering Task Force (“IETF) discuss such a
`framework and are incorporated by reference here, including
`RFC 2903 entitled “Generic AAA Architecture,” RFC 2904
`entitled “AAA Authorization Framework,” RFC 2905
`entitled “AAA Authorization Application Examples, and
`RFC 2906 entitled “AAA Authorization Requirements.” In
`general terms, these documents describe a System where an
`“AAA Server' is used to provide authentication, authoriza
`tion, and/or accounting Services in response to a user's
`request. The AAA Server inspects the contents of the request,
`determines what authorization is requested, retrieves policy
`
`rules from a repository, and then either grants the requested
`acceSS or passes along the request to another AAA Server.
`0005 One standard protocol by which many devices and
`applications communicate with an AAA Server is the
`Remote Authentication Dial-In User Service (“RADIUS”)
`described in Request for Comment (“RFC) 2865, and
`others, of the Internet Engineering Task Force (“IETF)
`which is also incorporated by reference here. RADIUS is a
`client/server protocol that enables remote access Servers to
`communicate with a central Server in order to authenticate
`dial-in users and authorize their access to a requested System
`or Service. RADIUS allows an organization to maintain user
`profiles in a central database that all remote Servers can
`share. It thus provides for improved Security by allowing
`computer resource owners to administer their authorization
`policies at a single network point.
`0006 RADIUS and other such security protocols that
`rely on centralized databases for authorization can be quite
`Slow, especially when implemented with low capacity com
`munications networks. For example, in many prior art
`Systems, authentication requires digitally signing the
`request, as well as the eXchange of information called
`“credentials” between the requester and the server. The
`authentication process can therefore impose Significant over
`head on the operation of distributed computer Systems,
`especially when the number of requests transmitted is high.
`0007 U.S. Pat. No. 5,235,642 to Wobber et al. discloses
`an apparatus and method for making Such access control
`Systems more efficient by caching authentication credentials.
`A computer at each node of a distributed System has a trusted
`computing base that includes an authentication agent for
`authenticating requests received from principals at other
`nodes in the System. Requests are transmitted to the Servers
`as messages that include a first identifier (called an Auth ID)
`provided by the requester and a Second identifier provided
`(called the Subchannel value) by the authentication agent of
`the requester node.
`0008 Each server process has an associated local cache
`that identifies requesters whose previous request messages
`have been authenticated. When a request is received, the
`Server checks the request's first and Second identifiers
`against the entries in its local cache. If there is a match, then
`the request is known to be authentic, without having to
`obtain authentication credentials from the requester's node.
`0009 If the identifier in a request message does not
`match any of the entries in the Server's local cache, then the
`Server node's authentication agent is called to obtain authen
`tication credentials from the requester's node to authenticate
`the request message. Upon receiving the required credentials
`from the requester node's authentication agent, the principal
`identifier of the requester and the received credentials are
`Stored in a local cache by the Server node's authentication
`agent. The Server proceSS also stores a record in its local
`cache indicating that request messages from the Specified
`requester are known to be authentic, thereby expediting the
`process of authenticating received requests.
`0010 Although the Wobber et al. server cache may help
`minimize Server loads, it does not address the problem of
`communication load and/or lag times between the client
`requester and the Server.
`
`IPR2018-00067
`Unified EX1034 Page 5
`
`

`

`US 2003/0093690 A1
`
`May 15, 2003
`
`SUMMARY
`These and other drawbacks of conventional
`0.011
`approaches are addressed here by providing a Secure com
`puter device including means for locally-authenticating a
`user of the device; and means for generating an authentica
`tion request to a Server. The disclosure also relates to a
`computer Security method including the Steps of locally
`authenticating a user of a client device, and generating an
`authentication request to a Server. In another embodiment,
`the disclosure relates to a computer readable medium,
`including logic for locally-authenticating a user of a client
`device, and logic for generating an authentication request to
`a Server. In yet another embodiment, the disclosure relates to
`a Secure computer System including a client having a client
`database for locally-authenticating a user; a Server, in com
`munication with the client, having a Server database for
`remotely-authenticating the user in response to a request
`from the client; and means for updating the client database
`according to results of the local and remote authentication.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`0012 Various aspects of the invention will now be
`described with reference to the following figures (“FIGS.")
`which are not necessarily drawn to Scale, but use the same
`reference numerals to designate corresponding parts
`throughout each of the FIGS. and
`0013 FIG. 1 is a schematic block diagram an architec
`ture for implementing a an authentication and authorization
`System;
`FIG. 2 is a flow chart illustrating one embodiment
`0.014
`of an authentication and authorization System; and
`0015 FIG. 3 is a flow chart for another embodiment of
`an authentication and authorization System.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`0016 FIGS. 1-3 illustrate various aspect of an authenti
`cation and authorization (AA') system that provides fast
`(but potentially unwarranted) local authentication followed
`by slower (but more accurate) remote authentication. Upon
`a Successful local authentication, immediate access will be
`provided and the remote authentication will be carried out in
`the background. Any unwarranted acceSS based upon a
`Successful local authentication is Subsequently terminated
`by an unsuccessful remote authentication. The local authen
`tication data may also be modified when the results of one
`of the local and remote authentications are different from
`each other.
`0017. The terms “local” and “remote” are used here to
`convey that communication between, and/or processing by,
`various parts of a distributed System. It is not necessary that
`any part of the System be arranged at physically distant
`locations from other parts of the System. However, greater
`communications distances often require more communica
`tion resources and/or longer communications intervals. In
`any event, local authentication will typically occur relatively
`quickly, and/or require leSS resources, than remote authen
`tication.
`Various aspects of the AA system are described
`0.018
`below with respect to the computer architecture shown in
`
`FIG. 1. The computer architecture shown in FIG. 1 is based
`upon a client/server computer network model. However, a
`variety of other distributed configurations, topologies, and/
`or communications Systems may also be used. Non-com
`puterized architectures may also be used including mechani
`cal,
`pneumatic,
`hydraulic,
`chemical,
`biological,
`electromagnetic, and/or electrical System architectures.
`0019 For the computer system 1 illustrated in FIG. 1, the
`client 10 is a local device that sends requests for action to a
`remote server device 20 which then replies to the request.
`The requests and the replies are typically communicated
`over a network 30 according to a variety of protocols
`including, but not limited to, the TCP/IP protocol. However,
`the client 10 and server 20 may communicate via other
`technologies. For example, the client 10 and the server 20
`may be in direct communication, Such as by a cable, without
`the network 30. Additional clients 10 (not shown) may also
`be arranged in communication with one or more Servers 20.
`0020. The client 10 provides for interaction with a “user”
`(not shown) Seeking authorization for certain activities,
`Services, and/or resources available on the System 1. The
`term “user' includes a perSon, process, another computer,
`and or other device Seeking authorization. In the example
`described here, authorization is provided by granting or
`continuing access to Some, or all, of the computer System 1
`via the client 10. However, various other authorization
`policies may also be implemented.
`0021
`For example, the client 10 could be a physical
`control device (such as a door lock), Windows NT work
`Station, automatic teller machine, or a Digital Sender com
`munication device (available from Hewlett-Packard Com
`pany) that receives input directly from a person. Granting or
`continuing access to these users would, respectively, allow
`the user to change control parameters (such as unlocking the
`lock), access network resources, conduct banking transac
`tions, or Send communications. Alternatively, human input
`may be provided indirectly to the client 10 from another
`device (not shown) or process that may have direct interac
`tion with a user, Such as a proximity Sensor. In yet another
`implementation, input to the client device may be received
`from another device or process (or other device) without
`human interaction, Such as by a timing Signal.
`0022 FIGS. 1-3 generally refer to a local client 10 having
`a client database 12 and a remote Server 20 having a Server
`database 22. For the illustrated example, the databases 12
`and 22 contain usernames and passwords. However, either
`or both of the username and password may be other forms
`of identification including, but not limited to, personal
`knowledge, personal possessions or personal characteristics
`as described above with regard to Strong authentication.
`Similarly, any other number of identification items may also
`be requested from the user and/or made available in the
`corresponding databases 12 and 22. Alternatively, the iden
`tification information represented by the databases 12 and 22
`could be the expected result of a calculation, or other
`process, based upon identification inputs provided by a user.
`0023 The server database 20 is typically used as a large,
`central repository for the most current identification data for
`all authorized users. This allows an administrator to main
`tain a Single Server, Such as the AAA Server discussed above,
`that can be used by all clients. The identification data in the
`client database 12 may then be updated an/or Synchronized
`
`IPR2018-00067
`Unified EX1034 Page 6
`
`

`

`US 2003/0093690 A1
`
`May 15, 2003
`
`with current data from the Server database 22 on an as
`needed basis, Such as by adding or deleting records (or
`changing other information) from the client database 10. In
`addition, the client database 10 may be periodically updated
`and/or synchronized with the current data from the server 22
`on a less frequent basis.
`0024 FIGS. 2 and 3 are flow charts illustrating two
`embodiments of authentication and authorization (“AA')
`systems 100 and 200. More specifically, these figures show
`the architecture, functionality, and operation of AA Systems
`100, 200 that may be implemented with the secure computer
`system 1 shown in FIG.1. However, as noted above, the AA
`systems 100, 200 may be implemented in a wide variety of
`electrical, electronic, computer, mechanical, and/or manual
`configurations. Nonetheless, in a preferred embodiment, the
`AA systems 100, 200 are at least partially computerized with
`various aspects of the Synchronization System being imple
`mented by Software, firmware, hardware, or a combination
`thereof. For example, the Software may be a program that is
`executed by the client 10 and/or server 20 including a special
`purpose or general-purpose digital computer, Such as a
`personal computer (PC, IBM-compatible, Apple-compat
`ible, or otherwise), workStation, minicomputer, or main
`frame computer.
`0025. Each block in FIGS. 2 and 3 represents an activity,
`Step, module, Segment, or portion of computer code that will
`typically comprise one or more executable instructions for
`implementing the specified logical function(s). It should also
`be noted that, in various alternative implementations, the
`functions noted in the blocks will occur out of the order
`noted in the figures. For example, multiple functions in
`different blocks may be executed Substantially concurrently,
`in a different order, incompletely, or over an extended period
`of time, depending upon the functionality involved. Various
`StepS may also be completed manually or with the aid of
`other devices and/or processes.
`0.026 Turning now to FIG. 2, the authentication and
`authorization system 100 begins at step 102 with the local
`client device 10 waiting to receive authorization data, Such
`as a user name and password, from a user who wants
`authorization for (i.e. access to) the system 1 shown in FIG.
`1. Once the user name and password (or other authentication
`data) is entered, or otherwise provided, then the client
`database 12 is queried at step 104 in order to determine
`whether records corresponding to that authentication data
`reside in the client database 12.
`0027. The client database 12 is also referred to as a
`“local database, or “cache,” in order to indicate that this
`query takes place relatively quickly, typically without oth
`erwise time-consuming communications. For example, the
`client database 12 will typically include less than all of the
`records that are contained in the Server database 22 and/or
`may be implemented with a fast memory device. Thus, if a
`username, or other record identifier is found in the client
`database 12 at Step 106, along with the appropriate password
`at Step 108, then the user is granted immediate access at Step
`110. This “local authentication” will occur in the foreground
`while the user is waiting for access at Step 110.
`0028. As shown in the figures, the username and pass
`word queries are preferably performed Sequentially. How
`ever, they may also be formed Substantially simultaneously
`and/or in reverse order.
`
`0029) If immediate access (or other authorization) is not
`granted during the local authentication, then more time
`consuming communications are initiated in conjunction with
`through the server 20. This “remote authorization” will
`occur in the background, when the user has already been
`granted access at Step 110. The user may therefore experi
`ence a fast, local authorization, even though access may be
`terminated during the slower, remote authorization. If access
`was not granted at Step 110, the remote authorization will
`occur in the foreground while the user continues to wait for
`CCCSS.
`0030. More specifically, if it is determined that step 106
`that there is no record in the client database 12 having the
`queried username, then the client 10 will formulate and send
`an authentication request to the server 20 at step 114. The
`authentication request may be a complete query, or simply
`contain enough information for the server 20 to formulate a
`query, of the server database 22. If the record is found in the
`Server database 22 at Step 116, and the passwords match at
`step 118, then the client database 12 will be updated by the
`addition of the record at step 122. The process 100 may also
`be Supplemented with procedures for limiting the number of
`times that a particular client database 10 and/or record in
`any, or all, of the client databases 10 will be updated during
`any period of time and/or total number of updates.
`0031) If access has not been previously granted at step
`110, and the remote authentication is Successful, then access
`will be granted at Step 128. Conversely, if acceSS has already
`been granted at Step 110, then a Successful remote authen
`tication will continue that access before returning to Step 102
`where the System 1 continues working on the authorized
`activity. During Such authorized activities, the client 10 may
`wait for a new username and password in order to begin a
`new activity, or the client may simply deny access for any
`new activities until the authorized activity is completed. The
`client 10 may also be configured to receive and/or Store
`identification data from a Subsequent user while the previous
`user's activity is being completed.
`0032. Returning to step 108, if the username has been
`found in the client database 12, but the password entered by
`the user at Step 102 does not match the corresponding
`password in the client database, then acceSS will be denied
`at Step 120. Next, at Step 124, the record corresponding to
`that username will be deleted from the local database at Step
`124. Similarly, if it is determined at step 116 or step 118 that
`the username or password does not match what is Stored in
`the Server database 22, then acceSS will be denied or
`terminated (if previously granted at step 110) at step 120
`before the record is deleted from the local database at step
`124. If access was granted at step 110, then the remote
`authentication can be performed in the background with the
`user unaware, unless the remote authorization is unsuccess
`ful and access is terminated at Step 120.
`0033. The record additions and/or deletions at steps 122
`and 124 may be implemented by an instruction from the
`server 20 or completed locally by the client 10 depending
`upon whether there has been a query of the Server database
`22 at step 114. For example, the server 20 may formulate and
`send a message to the client 10 with sufficient information
`for instructing that the record be deleted. The illustrated
`process 100 may also be modified so that if access was not
`previously granted at step 110, then deletion of the record
`
`IPR2018-00067
`Unified EX1034 Page 7
`
`

`

`US 2003/0093690 A1
`
`May 15, 2003
`
`from the local database at step 124 is skipped before the
`client 10 returned to the waiting state at step 102. Similarly,
`addition of records at StepS 122 could also be skipped if
`access at Step 110 was previously granted.
`0034 FIG. 3 illustrates another embodiment of an
`authentication and authorization system 200 including all of
`the steps shown in FIG. 2 and an additional step 112. This
`added Step operates So that, if there is a username match at
`step 106 and no password match at step 108, then a
`determination is made at Step 112 as to whether the same
`password has been entered for consecutive authentication
`queries by the same user. If the password is the Same as the
`last query at Step 104, then the remote database is queried at
`Step 114. If the consecutive passwords were not the same,
`then access is denied at Step 120 (without sending a request
`to the server).
`0035. This additional feature prevents an old password in
`the client database 12 from “hiding a newer password on
`the Server. For example, passwords in the Server database 22
`may be set to automatically expire after a certain period of
`time. Under these circumstances, a new password would
`then be entered for an authorized user in the database 22
`while an old password may still exist in the database 10.
`0.036 The first time that the user enters the new password
`at step 102 in FIG. 3, there will not be a match at step 108
`and access will be denied at Step 120 without attempting
`remote authorization. The Second time that the user enters
`new password, it will be the same as the last query at Step
`112 and a Successful remote authorization will be initiated at
`step 114, resulting in the new password being added to the
`local database at Step 122.
`0037. As noted above, the AA systems shown in FIGS. 2
`and 3 are preferably implemented by Software stored in
`memory and containing instructions that are executed by a
`processor, typically in connection with a Suitable operating
`system, arranged with the client 10 and/or server 20. The
`memory may have volatile memory elements (e.g., random
`access memory, or “RAM.” Such as DRAM, SRAM, etc.),
`nonvolatile memory elements (e.g., hard drive, tape, read
`only memory, or “ROM,” CDROM, etc.), or any combina
`tion thereof. The memory may also incorporate electronic,
`magnetic, optical, and/or other types of Storage devices. A
`distributed memory architecture, where various memory
`components are situated remote from one another, may also
`be used.
`0038. The processor(s) is preferably a hardware device
`for implementing Software that is Stored in the memory. The
`processor can be any custommade or commercially available
`processor, including Semiconductor-based microprocessors
`(in the form of a microchip) and/or macroprocessors. The
`processor may be a central processing unit (“CPU”) or an
`auxiliary processor among Several processors associated
`with the client 10 and/or server 20. Examples of suitable
`commercially-available microprocessors include, but are not
`limited to, the PA-RISC series of microprocessors from
`Hewlett-Packard Company, U.S.A., the 80x86 and Pentium
`Series of microprocessors from Intel Corporation, U.S.A.,
`PowerPC microprocessors from IBM, U.S.A., Sparc micro
`processors from Sun MicroSystems, Inc, and the 68XXX
`Series of microprocessors from Motorola Corporation,
`U.S.A.
`0039. As noted above, the memory stores the Software in
`the form of instructions and/or data for use by the processor
`
`in connection with a Suitable operating System that may also
`be stored in the memory. The instructions will generally
`include one or more Separate programs, each of which
`comprises an ordered listing of executable instructions for
`implementing one or more logical functions. The operating
`System implements the execution of these computer pro
`grams and may also provide various Scheduling, input
`output control, file and data management, memory manage
`ment, communication control, and other related Services.
`Various commercially-available operating Systems may be
`used, including, but not limited to, the Windows operating
`system from Microsoft Corporation, U.S.A., the Netware
`operating System from Novell, Inc., U.S.A., and various
`UNIX operating systems available from vendors such as
`Hewlett-Packard Company, U.S.A., Sun Microsystems, Inc.,
`U.S.A., and AT&T Corporation, U.S.A.
`0040. The program(s) stored in memory may include a
`Source program (or "Source code’), executable program
`(“object code’), Script, or any other entity comprising a set
`of instructions to be performed as described in more detail
`below. In order to work with a particular operating System,
`any Such Source code will typically be translated into object
`code Via a conventional compiler, assembler, interpreter, or
`the like, which may (or may not) be included within the
`memory. The programs may be written using an object
`oriented programming language having classes of data and
`methods, and/or a procedure programming language, having
`routines, Subroutines, and/or functions. For example, Suit
`able programming languages include, but are not limited to,
`C, C++, Pascal, Basic, Fortran, Cobol, Perl, Java, and Ada.
`0041 When any portion of the AA system is imple
`mented in Software, it can be stored on any computer
`readable medium for use by, or in connection with, any
`computer-related System or method. In the context of this
`document, a “computer readable medium' includes any
`electronic, magnetic, optical, or other physical device or
`means that can contain or Store a computer program for use
`by, or in connection with, a computer-related System or
`method. The computer-related System may be any instruc
`tion execution System, apparatus, or device, Such as a
`computer-based System, processor-containing System, or
`other System that can fetch the instructions from the instruc
`tion execution System, apparatus, or device and then execute
`those instructions. Therefore, in the context of this docu
`ment, a computer-readable medium can be any means that
`will Store, communicate, propagate, or transport the program
`for use by, or in connection with, the instruction execution
`System, apparatus, or device.
`0042. For example, the computer readable medium may
`take a variety of forms including, but is not limited to, an
`electronic, magnetic, optical, electromagnetic, infrared, or
`Semiconductor System, apparatus, device, or propagation
`medium. More specific examples of a computer-readable
`medium include, but are not limited to, an electrical con
`nection (electronic) having one or more wires, a portable
`computer diskette (magnetic), a random access memory
`(“RAM”) (electronic), a read-only memory (“ROM") (elec
`tronic), an erasable programmable read-only memory
`(“EPROM,”“EEPROM,” or Flash memory) (electronic), an
`optical fiber (optical), and a portable compact disc read-only
`memory (“CDROM") (optical). The computer readable
`medium could even be paper or another Suitable medium
`upon which the program is printed, as the program can be
`
`IPR2018-00067
`Unified EX1034 Page 8
`
`

`

`US 2003/0093690 A1
`
`May 15, 2003
`
`electronically captured, for instance via optical Sensing or
`Scanning of the paper, and then compiled, interpreted or
`otherwise processed in a Suitable manner before being Stored
`in a the memory.
`0043. Where any portion of the AA system is at least
`partially implemented in hardware, the System may be
`implemented using a variety of technologies including, but
`not limited to, discrete logic circuit(s) having logic gates for
`implementing logic functions upon data Signals, application
`Specific integrated circuit(s) ("ASIC) having appropriate
`combinational logic gates, programmable gate array(s)
`(“PGA'), and/or field programmable gate array(s)
`(“FPGA).
`0044) It should be emphasized that the embodiments
`described above, and particularly any “preferred” embodi
`ments, are merely examples of various implementations that
`have been Set forth here to provide a clear understanding of
`various aspects of the invention. One of ordinary skill will
`be able to alter many of these embodiments without Sub
`Stantially departing from Scope of protection defined Solely
`by the proper construction of the following claims.
`1. A Secure computer device, comprising:
`means for locally-authenticating a user of the device; and
`means for generating a remote authentication request after
`a Successful local authentication of the user.
`2. The device recited in claim 1 further comprising means
`for authorizing the user in response to the Successful local
`authentication.
`3. The

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket