throbber
=mmW
`
`ISSUECLASSIFICATION
`'
`AL6/V
`608880: \
`\\\\E
`\\\T\\x\\\\\\\\\\\\\\T\\\\\
`PAENT DATE
`
`*
`PATENT
`NUMBER
`JUL 11 Hm
`
`
`
`.%Ei‘n"§En
`
`
`
`ATTOHNEY‘S
`D as
`DOCKET NO.
`
`DJ
`
`
`
`Foreign priority claimed
`5 USC 119 oondiiiona me!
`
`U.S. DEPT. OF COMM./ PAT. &TM"’F’TO-436L (Rev.12-94)
`
`
`
`PARTS OF APPLICATION
`FILED SEPARATELY
`NOTICE OF ALLOWANCE MAILED A
`
`Assistant Examiner
`
`
`
`
`'1
`
`
`
`EY\Ll4LU
`PWMARYEXAMWER
`
`
`
`
`DRAWING
`
`Figs. Drwg.o
`
`//
`
`
`
`Print Fig.9
`
`ISSUE
`
`BATCH
`NUMBER
`
`
`
` FormaJ Drawi. s (_____sht§
`
` 1
`
`KINGSTON 1002
`
`1
`
`KINGSTON 1002
`
`

`

`vvgu.
`
`‘
`
`~
`

`
`_;,#_____ _,_. _‘
`
`PATENT APPLICATION
`
`APPROVED FOR LICENSE .
`Hill“||I|lilflmflflllllll||\|\|W
`
`
`
`
`
`
`Date
`Received
`or
`_ Mailed
`
`2
`
`

`

`
`
`
`
`T
`
`M
`
`Staplé lssue;S|ip Here
`
`VERIFIER
`conps CORR.
`
`
`DRAFTING
`
`SPEC. HAND
`FILE MAINT.
`
`INDEX OF CLAIMS
`
`g
`

`
`-
`
`__
`
`+ ”_
`
`1
`
`4
`
`‘E
`'
`‘
`
`‘
`
`Date
`
`—«—.
`
`’
`
`"‘
`
`L
`
`I
`
`h
`2
`
`A
`
`L
`
`__
`
`Claim
`E ~§.
`LE
`——
`
`51
`52
`53
`54
`55
`56
`57
`55
`L_ 59
`so
`61
`52
`es
`64
`65 J
`‘'56
`57
`631
`69
`70
`7‘
`72
`73
`74
`75
`76
`77
`We
`79
`80
`31
`82
`
`85
`as
`87
`53
`39
`£0
`91
`92
`
`93
`94
`95
`95
`97
`as
`99
`100
`
`
`
`\_ ‘Date
`ax
`Claim’
`éxifi ‘Q
`LT.
`'5
`.
`Pg)‘ »/
`J47 2 wk z?
`3 ;+ 2‘
`3%
`tab ,4_LV =
`Z
`.
`5
`=3
`‘"3 ” f”t}‘J"= ‘#7
`6 '
`‘ L *=
`I
`-
`ag / : ,
`id; 9’ i.—;« *‘
`'5 11
`‘ cu
`/5_19
`7+
`4:
`J Z
`V!
`121,12
`:2‘
`2
`3 9 ~*~
`2 _ A V’ 1;
`‘La’ 15 +£
`_
`39 we
`.1; =
`4,1 17 .
`'
`*3
`'3‘ 18
`2:
`--r
`_
`’_._
`1
`20 + -=
`W,
`‘\L
`17 22
`.L_‘=
`I23
`-
`=
`' .
`r/ ,
`2025 J *1
`g_ 6 M =
`I -3;
`V’
`
`’
`
`1
`
`:
`
`‘
`
`‘
`"=
`3
`’
`g,g_; J u
`:
`‘gig
`’
`:2
`L;
`:
`5
`__j____:__5
`E2 35
`2:
`H3 36
`"'5
`/35 37
`‘~‘‘
`/5 g: 33
`‘~‘
`gg 39
`_ m
`.27 40
`3
`I2._!—‘_f“
`_'“—' 44“
`”
`4
`5
`ll
`
`_,
`
`‘
`
`‘
`
`7 “~
`43
`7; 44‘L___ =‘
`" ' 45
`:i
`_4s
`_
`47
`48
`"”‘ 49 L
`50'
`
`EL
`v;,
`
`*
`
`4..
`
`fl
`__ _
`
`-———J——-J
`
`1
`
`A _
`
`_
`
`1
`
`" _+_7'
`
`J
`
`4
`
`SVMBOLS R’ mu
`:7:
`3337
`(Through numberan E'2?:aerIs\::iBe:lim
`."n‘2e"&‘.'fe°n“2‘Z
`Appeal
`Wohjecled
`
`
`
`:
`
`Z‘
`0
`
`(I FFT INQIDFS
`
`3
`
`3
`
`

`

`
`
`AREA
`
`..L£§..._i0VEFINMENT PRINTING OFFICE: I996—440*759
`I
`
`‘I
`
`cnoss aerenewcasn
`
`APPLICAN 'S NAME (PLEAS PRINT)
`
`IF REISSUE, ORIGINAL PATENT NUMBER
`
`
`
`INTERNATIONAL CLASSIFICATION
`
`FEEL! T171
`
`PTO 270
`(REV. 5-91)
`
`
`
`
`
`
`
`ART UNIT ASSISTANT EXAMINER (PLEASE STAMP OFI FFIINT FULL NAMEI
`
`
`
`PRIMARY XAMINER IPLEASEf:IAMP OR PRINT FULL NAME)
`
`
`L V U
`US. DEPARTMENT OF COMMERCE
`PATENT AND TRADEMARK OFFICE
`
`
`4
`
`

`

`' SEARCHED
`
`5
`
`

`

`-
`[[3
`
`lilllllllilllli,_
`
`ON
`-——_.
`___;;
`°§§e.l
`0 gg§zExs>
`===
`3?:-==
`I‘
`HEEE
`
`
`
`‘W
`
`M
`
`(Q)//(30!//ff’/Q
`
`Attorney Docket No.:
`
`SPY-O04
`
`IN THE UNIT*D STATHS PATPNT AND TRADEMARK OFFICE
`
`June 4, 1997
`
`Assistant Commissioner for Patents
`Washington, D. C.
`20231
`ATTN:
`BOX PATENT APPLICATION
`
`Transmitted herewith for filing is a patent application, as
`follows:
`
`Inventors: William P. Bialick, Mark J. Sutherland, Janet L.
`Dolphin—Peterson, Thomas K. Rowland, Kirk W. Skeba
`and Russell D. Housley
`PERIPHERAL DEVICE WITH INTEGRATED SECURITY FUNCTIONALITY
`
`Title:
`
`Enclosed with :his transmittal letter are:
`w> 2
`
`pages of specification, claims and abstract
`sheets of drawings:
`___ (Formal) _§
`(Informal)
`pages of Declaration and Power of Attorney (Unexecuted)
`Power of Attorney
`Assignment of invention to Spyrus,
`Small Entity Declaration
`Independent Inventor's Declaration
`PTO Form-1449
`Preliminary amendment
`
`IIIC
`
`llllllw
`
`The filing fee is calculated as follows
`claimed):
`
`(small entity status is
`4!
`
`CLAIMS As FILED (fees computed under §1.9(f))
`
`Number
`Filed
`
`Number
`Extra
`
`Rate
`
`Fee
`
`Basic Filing Fee:
`
`Total Claims:
`
`Independent Claims:
`
`32
`
`12
`
`~
`
`—
`
`20
`
`3
`
`=
`
`=
`
`12
`
`9
`
`X
`
`X
`
`$11
`
`$40
`
`=
`
`=
`
`Application contains one or more multiple
`dependent claims (S260 total fee)
`
`TOTAL FILING FEE:
`
`$ 385.00
`
`$ 132.00
`
`S 360.00
`
`S
`
`$
`
`0.00
`
`877.00
`
`A Return Post Card and this sheet in duplicate are also enclosed.
`
`I hereby certify that this correspondence is being
`deposited with the United States Postal Service as
`Express Mail
`in an envelope addressed to:
`Assistant Commissioner for Patents, Washington,
`D.C., 20231, on June 4, 1997.
`Express Mail
`Receipt No. EF 557 934 406 US
`wv
`fiaaaitmlaal Jlmzfi
`Davi
`R. Gra am
`Date
`
`Respectfully submitted.
`
`AW/%.»w~
`
`David R. Graham
`Reg. No. 36,150
`Attorney for Applicants
`
`6
`
`

`

`IN THE UNITED STATES PATENT AND TRADEMARK OFFICE
`
`Attorney Docket No.2
`
`June 4, 1997
`Assistant Commissioner for Patents
`Washington, D. C.
`20231
`ATTN:
`BOX PATENT APPLICATION
`
`Ci
`
`guh
`E
`“
`
`same/an
`
`
`
`Old'S'fl#6199
`
`Transmitted herewith for filing is a patent application, as
`follows:
`
`Inventors: William P. Bialick, Mark J. Sutherland, Janet L.
`Dolphin-Peterson, Thomas K. Rowland, Kirk W. Skeba
`and Russell D. Housley
`PERIPHERAL DEVICE WITH INTEGRATED SECURITY FUNCTIONALITY
`
`Title:
`
`Enclosed with this transmittal letter are:
`
`pages of specification; claims and abstract
`sheets of drawings:
`___ (Formal) _g
`(Informal)
`pages of Declaration and Power of Attorney (Unexecuted)
`Power of Attorney
`Assignment of invention to Spyrus,
`Small Entity Declaration
`Independent Inventor's Declaration
`PTO Form-1449
`Preliminary amendment
`
`Inc.
`
`'
`
`iH|ll‘”$
`
`The filing fee is calculated as follows (small entity status is
`claimed):
`
`CLAIMS AS FILED fee
`
`com uted under
`‘
`
`l.9 f
`
`Number
`Filed
`
`Number
`Extra
`
`Rate
`
`Fee
`
`Basic Filing Fee:
`
`Total Claims:
`
`Independent Claims:
`
`32
`
`12
`
`-
`
`-
`
`20
`
`3
`
`=
`
`=
`
`12
`
`9
`
`X
`
`X
`
`$11
`
`$40
`
`=
`
`=
`
`Application contains one or more multiple
`dependent claims (S260 total fee)
`
`TOTAL FILING FEE:
`
`S 385.00
`
`S 132.00
`
`S 360.00
`
`S
`
`$
`
`0.00
`
`877.00
`
`A Return Post Card and this sheet in duplicate are also enclosed.
`I hereby certify that this correspondence is being
`deposited with the United States Postak Service as
`Express Mail
`in an envelope addressed to:
`Assistant Commissioner for Patents, Washington,
`D.C., 20231, on June 4, 1997.
`Express Mail
`Receipt No. EF 55? 934 406 US
`-‘V
`flafimiéuxi _u1J_7_
`Devi
`R. Gra am
`Date
`
`/§LM;€.wW
`
`David R. Graham
`Reg. No. 36.150
`Attorney for Applicants
`
`Respectfully submitted,
`
`7
`
`

`

`
`
`PERIPHERAL DEVICE WITH INTEGRATED SECURITY FUNCTIONALITY
`
`._ 1 _
`
`William P. Bialick
`Mark J. Sutherland
`
`Janet L. Dolphin—Peterson
`Thomas K. Rowland
`Kirk W. Skeba
`
`Russell D. Housley
`
`CROSS~REFERENCE TO RELATED APPLICATION
`
`10
`
`This application is related to the commonly owned, co‘
`pending United States Patent Application entitled "Modular
`Security Device," by William P. Bialick, Mark J. Sutherland,
`
`Janet L. Dolphin-Peterson,
`Thomas K. Rowland, Kirk W. Skeba
`’
`and Russell D. Housley, filed on the same date as the present
`SPY-003,
`the
`application and having Attorney Docket No.
`disclosure of which is incorporated by reference herein.
`
`15
`
`BACKGROUND OF THE INVENTION
`
`1.
`
`Field of the Invention
`
`This invention relates to a peripheral, often portable,
`device (as well as the methods employed by such a peripheral
`device, and systems including such a peripheral device and a
`
`20
`
`host computing device with which the peripheral device
`communicates)
`that can communicate with a host computing
`device to enable one or more security operations to be
`performed by the peripheral device on data stored within the
`host computing device, data provided from the host computing
`device to the peripheral device, or data retrieved by the
`host computing device from the peripheral device.
`2.
`Related Art
`
`Computing capability is becoming increasingly portable.
`In particular,
`there are more and more portable peripheral
`devices that are adapted for communication with a host
`computing device (e.g., desktop computer, notebook computer
`or personal digital assistant) to enable particular
`
`8
`
`

`

`_ 2 _
`
`These portable Peripheral
`functionality to be achieved.
`(e.g., PCMCIA
`devices can take a variety of physical forms
`cards, smart cards, CD-ROMs)
`and can perform an assortment of
`functions (e.g., storage, communications and cryptography).
`
`However, while portable computing affords a number of
`advantages, it has a significant disadvantage in that the
`computational environment
`(including the portable peripheral
`devices,
`the host computing devices in which they are used,
`
`and any other computational devices that communicate with
`those devices)
`is more susceptible to security breaches,
`i.e., unauthorized access to, or modification of, programs
`and/or data resident within the environment. Consequently,
`cryptographic devices and methods have been developed for use
`with such computational environments (as well as other~
`computational environments)
`to enable increased levels of
`environment security to be obtained.
`FIG.
`1 is a block diagram of a prior art system for
`
`enabling a host computing device to provide secured data to,
`and retrieve secured data from,
`FIG. 1,
`
`In
`a portable device.
`a system 100 includes a host computing device 101 and
`a portable Gevice 102.
`The host computing device 101 and
`portable device 102 are adapted to enable communication
`between the devices 101 and 102.
`The host computing
`device 101 includes a security mechanism 101a (which can be
`embodied by appropriately configured hardware, software
`and/or firmware, such as, for example, a general purpose
`microprocessor operating in accordance with instructions of
`one or more computer programs stored in a data storage device
`such as a hard disk) which can be directed to perform one or
`more cryptographic operations.
`
`In the system 100, if it is desired to provide secured
`data from the host computing device 101 to the portable
`
`the host computing device 101 causes the security
`device 102,
`mechanism 101a to perform appropriate cryptographic
`operations on data before the data is transferred to the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`
`
`9
`
`

`

`_
`
`3
`
`_
`
`the host computing
`portable device 102. Similarly,
`device 101 can receive secured data from the portable
`device 102 and perform appropriate cryptographic operations
`on the data to convert the data into a form that enables the
`
`data to be accessed and/or modified by a person who is
`authorized to do so.
`
`A significant deficiency of the system 100 is that the
`security mechanism 101a is itself typically not adequately
`secure.
`It is commonly accepted that the components
`(including hardware, software and/or firmware) of most host
`Computing devices are inherently insecure. This is because
`
`10
`
`typically,
`the system design of host computing devices is,
`intentionally made.open so that components made by different
`
`15
`
`Thus, an _
`manufacturers can work together seamlessly.
`unauthorized person may obtain knowledge of the operation of
`the security mechanism 101a (e.g.,
`identify a cryptographic
`
`thereby enabling that person to gain access to, and/or
`key),
`modify,
`the (thought to be secured) data.
`
`2 is a block diagram of anotherfiprior art system
`FIG.
`for enabling a host computing device to provide secured data
`to, and retrieve secured data from, a portable device.
`In
`FIG. 2, a system 200 includes a host computing device 201, a
`portable device 202 and a security device 203.
`The host
`computing device 201,
`the portable device 202 and security
`device 203 are adapted to enable communication between the
`devices 201 and 202, and between the devices 201 and 203.
`
`The security device 203 includes appropriately configured
`hardware, software and/or firmware which can be directed to
`
`perform one or more cryptographic operations.
`In the system 200, if it is desired to provide secured
`data from the host computing device 201 to the portable
`device 202,
`the host computing device 201 first causes data
`to be transferred to the security device 203, where
`appropriate cryptographic operations are performed on the
`data.
`The secured data is then transferred back to the host
`
`20
`
`25
`
`30
`
`35
`
`
`
`10
`
`10
`
`

`

`11
`
`

`

`-
`
`5
`
`_
`
`one may
`is desired to perform a secure data exchange (e.g.,
`even if both
`
`Second,
`have been forgotten or misplaced).
`devices 202 and 203 are available, it may not be passible to
`connect both devices 202 and 203 at the same time to the host
`
`computing device 201, making use of the devices 202 and 203
`cumbersome and increasing the likelihood that unsecured data
`is provided by the host computing device 201 to the portable
`device 202.
`
`SUMMARY OF THE INVENTION
`
`l0
`
`A peripheral device according to the invention can be
`used to communicate with a host computing device to enable
`one or more security operations to be performed by the
`
`
`
`25
`
`30
`
`peripheral device on data stored within the host computing
`device, data provided from the host computing device to the
`
`for example, stored in
`peripheral device (which can then be,
`the peripheral device or transmitted to yet another device),
`
`or data retrieved by the host computing device from the
`peripheral device (e.g., data that has been stored in the
`
`data,
`
`peripheral device egltransmitted to the peripheral device
`In particular,
`the peripheral device
`from another devicfif.
`can be adapted to enable,
`in a single integral peripheral
`device,
`performance of one or more security operations on
`and a defined interaction with a host computing device
`that has not previously been integrated with security
`The defined
`operations in a single integral device.
`interactions can provide a variety of types of functionality
`data storage, data communication, data input and
`(e.g.,
`output,
`user identification), as described further below.
`
`The peripheral device can be implemented so that the
`
`peripheral device can be operated in any one of multiple
`user-selectable modes:
`a security functionality only mode, a
`target functionality mode, and a combined security and target
`functionality mode.
`The peripheral device can also be
`implemented so that the security operations are performed in-
`
`12
`
`12
`
`

`

`-6-
`
`the security operations are performed between the
`line, i.e.,
`communication of data to or from the host computing device
`and the performance of the defined interaction. Moreover.
`
`the peripheral device can be implemented so that the security
`functionality of the peripheral device is transparent to the
`host computing device.
`A peripheral device according to the invention can
`advantageously enable application of security operations to a
`wide variety of interactions with a host computing device.
`In particular, a peripheral device according to the invention
`can accomplish this without necessity to use two peripheral
`devices:
`one that’performs the security operations and one
`that performs the defined interaction. This can,
`for
`example, minimize the possibility that the device adapted to
`perform the defined interaction will be used with the host
`computing system without proper application of security
`operations to that interaction. Moreover,
`the provision of
`in-line security in a peripheral device according to the
`invention enables a more secure exchange of data between a
`host computing %evice and the peripheral device, overcoming
`the problems identified above in previous systems for
`performing security operations on data exchanged between such
`Additionally,
`devices.
`implementing a modular device
`according to the invention so that the performance of
`security operations by the modular device is transparent can
`reduce or eliminate the need to modify aspects of the
`operation of the host computing device (e.g., device drivers
`of the host computing device), making implementation and use
`
`of a data security system including the modular device
`Thus,
`simpler and easier.
`the possibility that a user will
`use the system incorrectly (e.g., fail to apply security
`operations to an interaction with the host computing device,
`or apply the security operations incorrectly or incompletely)
`
`10
`
`15
`
`2O
`
`25
`
`30
`
`is reduced. Making the security operations transparent can
`also enhance the security of those operations.
`
`35
`
`
`
`13
`
`13
`
`

`

`BRIEF DESCRIPTION OF THE DRAWINGS
`
`-7-
`
`FIG. 1/is a block diagram of a prior art system for
`enabling a host computing device to provide secured data to,
`
`and retrieve secured data from, a portable device.
`FIG. 2'is a block diagram of another prior art system
`for enabling a host computing device to provide secured data
`
`to, and retrieve secured data from, a portable device.
`FIG.
`3A is a block diagram of a system according to the
`invention.
`,/f
`FIG. 33/is a perspective View of a physical
`implementation of the system of FIG.
`3A according to one
`embodiment bI the invention.
`FIG.
`4 is a block diagram of a peripheral device
`according to ’n embodiment of the invention.
`
`FIG.
`
`5 is a flow chart of a method, according to an
`
`embodiment of_the invention,
`according tg/the invention.
`FIG.
`6’is a block diagram of a system, according to an
`
`for initiating use of a system
`
`illustratingvoperation of the
`embodiment of the invention,
`system during a method according to the invention as in
`FIG. 5.
`FIG.
`
`7 is a flow chart of a method, according to an
`
`for using a peripheral device
`
`embodiment of the invention,
`according tofithe invention.
`FIG. 8‘d§ a block diagram of a peripheral device
`according tofanother embodiment of the invention.
`FIG. 9A.§s a block diagram illustrating the flow of data
`through the interface control device of FIG. 8.
`FIG.
`9B is a block diagram of a particular embodiment of
`an interface control device for use in a peripheral device
`according to the invention.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`DETAILED DESCRIPTION OF THE INVENTION
`
`FIG.
`
`3A is a block diagram of a system 300 according to
`
`the invention.
`
`The system 300 includes a host computing
`
`
`
`14
`
`14
`
`

`

`,
`
`62
`
`61
`
`CL
`
`LL
`
`
`
`_ 8 _
`
`device 301 and a peripheral device 302 that communicate via a
`communications interface 303. Herein, "peripheral device”
`
`can re er to any device that operates outside of a host
`°‘3gR;§g§3$3§al device and that is connected to the host
`,4,
`‘
`,
`5 é:§§§é:§§§l device.
`The peripheral device 302 includes a
`I.
`security mechanism 302a that enables security operations
`(examples of which are described in more detail below)
`to be
`
`performed on data that is stored within the host computing
`device 301, data tha
`is transmitted from the host computing
`afib
`'
`3cnL
`10 device 501
`oflfi
`devicg, or data that is transmitted
`fromA_'
`device to the host computing device 301. As
`explained in more detail below,
`the peripheral device 302
`also provides additional functionality (referred to herein as
`"target functionality") to the system 300,
`such as,
`for
`15 example,
`the capability to store data in a solid—state disk
`storage device,
`the capability to enable communications from
`the host computing device 301 to another device,
`the
`
`capability to accept biometric input to enable user
`authentication to the host computing device 301, and the
`20 capability to receive and read a smart card inserted into the
`peripheral device 302.
`Generally,
`the communications interface 303 can be any
`
`embodied by any of a variety of communication interfaces,
`such as a wireless communications interface, a PCMCIA
`25 interface,
`a smart card interface, a serial interface (such
`
`as an RS-232 interface), a parallel interface, a SCSI
`interface or an IDE interface.
`Each embodiment of the
`
`communications interface 303 includes hardware present in
`each of the host computing device 301 and peripheral device
`30 302 that operates in accordance with a communications
`
`for example, by software
`(which can be embodied,
`protocol
`stored in a memory device and/or firmware that is present in
`the host computing device 301 and/or peripheral device 302)
`
`appropriate for that type of communications interface, as
`35 known to those skilled in the art.
`Each embodiment of the
`
`15
`
`15
`
`

`

`_
`
`9
`
`_
`
`communications interface 303 also includes mechanisms to
`
`enable physical engagement, if any, between the host
`computing device 301 and peripheral device 302.
`Generally,
`the security mechanism 302a can be configured
`to perform any electronic data security operation (herein,
`
`for
`including,
`referred to simply as "security operation")
`example, operations that provide one or more of the basic
`cryptographic functions,
`such as maintenance of data
`
`10
`
`confidentiality, verification of data integrity, user
`authentication and user non-repudiation. Particular security
`operations that can be implemented in a peripheral device
`according to the invention are described in more detail
`below.
`’
`
`for example,
`The security mechanism 302a can be,
`embodied as a security token. Herein, "security token"
`refers to a device that performs security operations and that
`includes one or more mechanisms
`use of
`(such as,
`for example,
`
`a hardware random number generator and/or‘protected memory)
`to provide security for the content of those operations.
`FIG.
`3B is a perspective view of a physical
`
`20
`
`implementation of the system 300 of FIG. 3A, according to one
`embodiment of the invention.
`In FIG.;§g,
`the peripheral
`device 302 is embodied as a card 312 that can be inserted
`into a corresponding slot 313 formed in a portable
`in FIG. 3B.
`computer 311 that,
`embodies the host computing
`device 301.
`Often a peripheral device according to the
`such as the card 312 shown in
`invention is a portable device,
`FIG. 3B.
`
`Herein, "portable device" can refer generally to
`any device that is capable of being easily carried by hand.
`FIG.
`4 is a block diagram of a peripheral device 400
`The peripheral
`according to an embodiment of the invention.
`
`25
`
`30
`
`target
`device 400 includes security functionality 401,
`functionality 402 and a host interface 403 that are formed
`
`For example,
`together as part of a single physical device.
`the security functionality 401 and target functionality 402
`
`35
`
`
`
`16
`
`16
`
`

`

`-
`
`_
`
`can be enclosed in a single,
`FIG.
`4 by the numeral 404) conforming to a PCMCIA card or
`smart card standard.
`
`card—like housing (designated in
`
`The peripheral device 400 can have a number of
`advantageous characteristics.
`The peripheral device 400 can
`be implemented in a manner that enables the security
`operations of the security functionality 401 to be performed
`in a manner that is transparent to a host computing device
`(and, depending upon the particular implementation of the
`peripheral device 400,
`to a user of a system including the
`of a system according to the
`peripheral device 400)
`so that the
`invention,
`host computing device (and, perhaps.
`the presence of the target
`is aware only of
`user)
`functionality 402. Additionally,
`the peripheral device 400
`can be implemented so that security operations are performed
`"in~line," i.e.,
`the security operations are performed
`between the communication of data to or from the host
`
`computing device and the performance of the target
`
`functionality provided by the peripheral device. Further,
`the peripheral device 400 enables a wide variety of secure
`target functionality to be easily provided to a host
`computing device.
`FIG.
`5 is a flow chart of a method 500,
`embodiment of the invention,
`
`according to an
`for initiating use of a system
`The method 500 enables an aspect
`according to the invention.
`of the invention in which the presence of security
`functionality as part of a peripheral device is not detected
`by a host computing device,
`thus making the security
`
`10
`
`15
`
`20
`
`25
`
`functionality transparent to the host computing device and.
`depending upon the particular manner in which the security
`functionality is implemented,
`to a user of the system.
`FIG.
`6 is a block diagram of a system 600, according to
`an embodiment of the invention,
`illustrating operation of the
`system 600 during a method according to the invention such as
`the method 500 of FIG. 5.
`The system 600 includes a host
`
`30
`
`35
`
`
`
`17
`
`17
`
`

`

`_
`
`_
`
`computing device 601 and a peripheral device 602.
`computing device 601 includes a display device 603a
`(e.g.. a
`conventional computer display monitor) and user input
`device 603b (e.g ,
`a keyboard, mouse,
`trackball,
`joystick or
`
`The host
`
`other appropriate device), referred to collectively
`hereinafter as user interface device 603.
`The host computing
`
`device 601 also includes, mounted within a housing 604, a
`processing device 605,
`a memory device 606, an input/output
`(1/0)
`device 607 for enabling communication with the user
`device 608
`interface device 603.
`and an input/output
`(1/0)
`The
`for enabling communication with peripheral device 602.
`606,
`devices 605,
`607 and 608 can each be implemented by
`
`conventional such devices and can communicate with each other
`via a conventional computer bus 609, as is well known and
`
`The peripheral device 602 includes security
`understood.
`(I/O)
`functionality 611, a memory device 612, an input/output
`device 613 for enabling communication with the host computing
`device 601 and target functionality 614.
`The security
`
`l0
`
`l5
`
`20
`
`I/O‘device 613 and
`functionality 611, memory device 612,
`target functionality 614 can each be implemented by
`conventional devices and can communicate with each other via
`
`a conventional computer bus 615, as is well known and
`
`The host computing device 601 and the peripheral
`understood.
`6 to
`device 602 aretshown in simplified form in FIG.
`facilitate
`clarity in illustration of this aspect of the
`as described in more detail below and as
`
`invention;
`
`understood
`device 601
`will -
`
`by those skilled in the art,
`
`the host computing
`and the peripheral device 602 can - and typically
`include other devices not shown in FIG. 6.
`
`Returning to FIG.
`
`5,
`
`use of a system according to
`invention begins when,
`as shown by step 501,
`a user of
`system connects a peripheral device according to the
`invention to a host computing device.
`Such connection can
`occur in any manner that enables the peripheral device to
`communicate with the host computing device. Frequently,
`
`the
`the
`
`this
`
`
`
`25
`
`30
`
`35
`
`18
`
`

`

`_
`
`_
`
`will occur as a result of a physical connection of the
`peripheral device to the host computing device.
`(In general,
`
`such physical connection can occur either before or after the
`host computing device begins operating; however,
`in the
`former case, subsequent steps of the method 500 — with the
`exception of, depending upon the implementation of the
`
`the step 503.~ cannot be performed until
`peripheral device,
`the host computing device begins operating.)
`For example,
`
`the peripheral device can be embodied in a card or disk
`(e g., a card conforming to a PCMCIA form factor as
`
`10
`
`that is inserted
`established by the appropriate standard)
`into a corresponding socket formed in the host computing
`device. Or,
`the peripheral device can be embodied in a
`
`15
`
`20
`
`25
`
`30
`
`housing from which a cord extends, a plug of the cord being
`inserted into a mating receptacle formed in the host
`computing device. However, such physical connection need not
`necessarily occur;
`the peripheral device can also be
`
`connected to the host computing device by any type of
`
`wireless communication for which the hostqcomputing device
`contains an appropriate interface.
`Once connection between the peripheral device and the
`host computing device is made,
`the host computing device
`detects the presence of the peripheral device, as shown by
`step 502.
`Such detection of the presence of a peripheral
`device is typically enabled as a standard aspect of the
`operating system software of the host computing device.
`Typically, once the presence of a new peripheral device
`is detected by the operating system software of the host
`computing device,
`the operating system software (or companion
`software program) also identifies the type of the peripheral
`
`for example, by a standard
`device. This can be accomplished,
`software device driver (hereinafter, "host driver")
`for
`
`devices of the type that use the host computing device
`
`interface that is being used by the peripheral device 602.
`In FIG. 6,
`the host driver is shown stored in the memory
`
`35
`
`
`
`19
`
`19
`
`

`

`_
`
`_
`
`section 606a of the memory device 606 of the host computing
`device 601.
`(The Card Services or Socket Services programs
`
`that often are bundled with the Windows95” operating system
`software for use in performing various "housekeeping"
`functions associated with a PCMCIA interface are an examples
`of such drivers.) However,
`
`in the method 500, before the
`operating system software can perform such identification,
`the peripheral device according to the invention suspends
`operation of this aspect of the operating system software,
`that the peripheral device can establish its identity. as
`shown by step 503, and explained further below.
`As will be
`
`so
`
`from that explanation, performance of the step 503
`apparent
`advantageously enables the peripheral device to assume"the
`identity of the target functionality that is part of the
`peripheral device.
`Since, as described elsewhere herein, a
`peripheral device according to the invention can include a
`
`variety of types of target functionality,
`device can take a variety of identities.
`
`the peripheral
`
`The particular manner in which operation of the
`operating system software is suspended so that the peripheral
`device can establish its identity can depend on the
`characteristics of the operating system software and/or the
`device interface. However,
`for many combinations of
`operating system software and device interface,
`the operating
`system software waits for confirmation that the device
`connected to the device interface is ready for further
`interaction with the operating system software before the
`
`operating system software seeks to identify the type of the
`device connected to the interface
`(the standard for PCMCIA
`In such
`for example,
`interfaces,
`specifies such operation).
`cases,
`the peripheral device can be configured to delay
`informing the operating system software that the peripheral
`device is ready for further interaction until the peripheral
`device has established its identity.
`The following description of one way in which the
`
`20
`
`
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`20
`
`

`

`-14-
`
`step 503 can be implemented can best be understood by
`
`reference to the system 6gg shown in FIG. 6. One way in
`which the operating system software of a host computing
`device can identify the type of a peripheral device is to
`access a known memory section of a memory device of the
`
`peripheral device, as established by an interface standard
`developed for that type of peripheral device,
`that stores
`data representing the type of the peripheral device. This is
`true for a variety of types of peripheral devices, such as,
`for example, peripheral devices that conform to the PCMCIA
`includes a
`(The PCMCIA standard.
`standard.
`for example,
`that
`called the Card Information Structure,
`specification,
`defines,
`among other things,
`
`a location in a portion of
`
`memory of a PCMCIA card, denoted as "attribute memory”.
`stores data identifying the type of the PCMCIA card.)
`600,
`system
`the peripheral device 602 is such a device.
`memory
`section of the memory device 612 of the peripheral
`device 602 which the host computing device 601 seeks to
`and the
`access is shown in FIG.
`6 as the memory section 612a,
`data stored therein is referred to herein as
`"peripheral
`device identification data."
`
`The
`
`that
`In the
`
`The peripheral device 602 can be implemented so that the
`peripheral device 602 assumes the identity of the target
`functionality 614 (whether or not the security functionality
`of the peripheral device is also being used). This enables
`the host computing device 601 to interact with the peripheral
`
`device 602 as though the peripheral device 602 were a device
`of the type of the target functionality 614, without
`recognizing that security functionality 611 is present that
`may be
`Thus,
`the need to
`performing security operations.
`aspects of the operation of the host computing device
`the host device driverf¢§s reduced or eliminated,
`implementation and use of a data security system
`
`modify
`(e.g.,
`making
`
`
`
`10
`
`15
`
`20
`
`25
`
`30
`
`including the peripheral device 602 simpler and easier.
`Since use of the data security system is easier (e.g., a user
`
`35
`
`21
`
`21
`
`

`

`..
`
`_
`
`need not provide input to cause the host driver to be
`appropriately tailored to enable desired interaction with a
`
`the possibility that a user will use the
`security device),
`system incorrectly (e.g., fail to apply security operations
`
`to an interaction with the host computing device, or apply
`the security operations incorrectly or incompletely)
`is
`reduced.
`
`Though, as shown in FIG. 6.
`the peripheral device 602
`includes security functionality 611 and target
`
`the system 690 can be operated so that
`functionality 614,
`The peripheral
`only the security functionality 611 is used.
`device 602 and peripheral device driver (discussed below) can
`
`be implemented so that, when the peripheral device 602”is
`operated in that way.
`the peripheral device identification
`data stored in the memory location 612a identifies the
`peripheral device 602 as a security device.
`Returning to FIG. 5, after the peripheral device has
`established its identity,
`the host computing device
`identifies the peripheral device, as shown by step 504. This
`can be implemented as part of the host driver, as indicated
`above.
`
`Once the host computing device has identified the
`peripheral device (and other host computing device operating
`the
`system software operations concluded, if applicable),
`(in particular,
`user can be

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