throbber
6,075,862
`[11] Patent Number:
`[19]
`United States Patent
`
`Yoshida et al.
`[45] Date of Patent:
`Jun. 13, 2000
`
`USOO6075862A
`
`[54] DECRYPTION KEY MANAGEMENT
`SCHEME FOR SOFTWARE DISTRIBUTION
`SYSTEM
`
`[75]
`
`Inventors: Hideki Yoshida, KanagaWa-ken; Hideo
`Segawa, Tokyo; Toru Imai,
`Kanagawa-ken, all of Japan
`
`[73] Assignee: T{abushiki Kaisha Toshiba, Kawasaki,
`apan
`
`[21] Appl No . 08/689 118
`.
`N
`’
`22
`F'l d:
`l. 30 1996
`’
`1 e
`Ju
`Foreign Application Priority Data
`
`]
`[
`[30]
`
`10/1997 Dolphin ...................................... 380/4
`5,677,953
`
`12/1997 Dolphin ................ 380/4
`5,703,951
`
`..... 380/4
`4/1998 O’Connor et a1.
`5,745,568
`
`5/1998 Cooper et al. ............ 380/4
`5,757,908
`....................... 380/4
`7/1998 Blumenthal et 8.1.
`5,784,460
`FOREIGN PATENT DOCUMENTS
`
`7—93148
`
`4/1995
`
`Japan .
`
`OTHER PUBLICATIONS
`Mori et al., “Superdistribution: The Concept and the Archi-
`tecture”, The Transactions of the IEICE, vol. E73, No. 7, pp.
`1133—1146, Jul. 1990.
`Primary Examiner—Max Noori
`Attorney, Agent, or Firm—Foley & Lardner
`
`Jul. 31, 1995
`
`[JP]
`
`Japan ............................... P07-194695
`
`[57]
`
`ABSTRACT
`
`Int. Cl.7 ........................................................ H04L 9/00
`[51]
`[52] US. Cl.
`.................................... 380/28; 380/25; 380/4
`[58] Field of Search .................................... 380/4, 21, 23,
`380/25, 28, 30
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`............................ 380/4
`3/1989 Chandra et a1.
`4,817,140
`7/1989 Hampson .................................... 380/4
`4,847,902
`4,888,798 12/1989 Earnest ........................................ 380/4
`570107571
`4/1991 Katznelson
`380/4
`‘
`590589162
`10/1991 5‘11“?“ et al‘
`" 380/25
`5,103,392
`4/1992 MorI ..........
`395/725
`5
`,199,066
`3/1993 Logan ......................................... 380/4
`5 319 705
`6/1994 Halter et al
`380/4
`5,457,746
`10/1995 Dolphin
`380/4
`59555304
`9/1996 Hasebe et a1.
`380/4
`5,586,186
`12/1996 Yuvalet al.
`380/4
`5,598,470
`1/1997 Cooper et a1.
`.. 380/4
`
`..
`
`
`
`
`
`A decryption key management scheme for a software dis-
`tribution system utilizing the decryption key, which can
`enable the re-install of the software that was decrypted once
`by a proper procedure, without requiring a re-acquisition of
`the decryption key from the software vender, so that a user
`can freely delete and re-install the software that was prop-
`erly obtained once. The decryption key 1s searched In a
`memory deVIce of a user s computer, or acquired from a
`distribution source of the encrypted software when the
`decryption key is not found in the memory means. Then, the
`encrypted software is decrypted by using the obtained
`decryption key, and a decrypted software content is installed
`into the memory deVice, while the decryption key acquired
`.
`.
`.
`.
`.
`from the distribution source 1s stored Into the memory
`.
`.
`.
`deV1ce, such that the decryption key stored In the memory
`deVice is utilizable in decrypting the encrypted software at
`a time of re-installing the encrypted software.
`
`34 Claims, 8 Drawing Sheets
`
`
`.4 12
`7717A-SOFTWARE CONTENT MFMT)R;{ UNIT - ‘
`
`
`
`
`
`SOFTWARE CONTENTAI
`SOFTWARE lDrl
`DECRYPTION KLle
`
`‘
`
`‘
`
`SOFTWARE IDv3
`
`DECRYPTION KEY—3
`
`SOFTWARE CON’l‘tN I13
`
`
`
`SOFTWARE CONTENT»\II-|)
`DECRYPTION KEYrtnrl)
`SOFTWARE lDrUIrl)
`
`‘fiHHAWNH, A
`
`,,,,,,,
`E
`,
`_
`!
`T ,,,,,,,, 5
`
`,H W _DECRYPTION, ,
`
`
`,,,,,,,,,
`
`
`
`, THI .
`72
`KEY
`73
`<74 1!
`
`SOFIWARE CONTENT
`DECRYPTION
`DECRYPTION
`l!
`
`
`
`‘ ACQUISITION UNIT
`KEY
`I|
`KEY
`
`
`ACQUISITION
`MANAGEMENT
`I
`i
`|
`UNIT
`UNIT
`;.
`
`_ _______
`'\
`,3 Ti
`_
`_
`_
`14 DECRYPTION
`-
`SOFTWARE
`V
`
`KEY
`CONTENT
`1
`l
`SOFTWARE
`i
`
`
`
`VENDOR
`l
`__________ ,
`,
`,
`,
`,
`i
`
`
`
`
`
`
`
`
`
`
`
`
`
`.
`-
`
`.
`.
`
`v
`-
`'
`.
`
`-
`'
`
`75 .
`
`l
`
`]
`
`W ,1
`
`DECRYPTION KEY—n
`SOFTWARE ID-n
`DECRYPTION KEY
`,MFMoRr UNIT,
`
`,
`
`,
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`US. Patent
`
`Jun. 13, 2000
`
`Sheet 1 0f 8
`
`6,075,862
`
`
`
`>m—MZOEATrN—UM
`
`a\
`
`H.mvwnw
`
`
`
`
`
` \meaomm>5.98:05>zQEEomQ205355E2930
`
`
`
`VEOBEmZZOF<U_ZDEZOU
`
`mm<>>rEOm
`
`MODZm>
`
`mibmahma\
`
`x/
`
`3$2NE2::HZmElZOU
`
`HI
`
`[L
`
`nmmzh>mUZmk 02mm$§Eom
`
`4<ZOmmmm
`
`MMEDLEOU
`
`a9820mmEM
`ZOEERE
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`
`
`
`
`
`

`

`US. Patent
`
`Jun. 13,2000
`
`Sheet 2 0f8
`
`6,075,862
`
`FIG.2
`
`100
`
`101
`
`102
`
`103
`
`INSTALLER n SOFTWARE CONTENT
`
`
`
`DECRYPTION KEY RETRIEVAL PROGRAM
`
`COMMUNICATION PROGRAM
`
`DECRYPTION KEY REQU EST
`
`DECRYPTION KEY ACQUISITION
`
`DECRYPTION & INSTALL PROGRAM
`
`DECRYPTION KEY STORING PROGRAM
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`US. Patent
`
`Jun. 13,2000
`
`Sheet 3 0f8
`
`6,075,862
`
`SOFTWARE 100
`
`INSTALLER
`
`FIGS
`
`l RETRIEVAL
`U
`
`(2)
`COMMUNICA-
`TION
`
`13
`
`SOFTWARE DECRYPTION
`ID
`KEY
`
`(3)
`DECRYPTION
`& INSTALL
`
`(4)
`DECRYPTION KEY
`
`REGISTRATION
`
`SOFTWARE VENDOR
`
`HARD DISK
`
`13
`
`SOFTWARE
`ID
`
`DECRYPTION
`KEY
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`US. Patent
`
`Jun. 13, 2000
`
`Sheet 4 0f 8
`
`6,075,862
`
`FIG.4
`
`DECRYPTION KEY REQUEST MESSAGE 20
`
`
`
`HEADER MACHINE ID SOFTWARE ID USER NAME CREDIT NUMBER
`
`21
`
`22
`
`23
`
`24
`
`25
`
`
`
`FIGS
`
`
`
`16
`
`CREDIT
`COMPANY
`
`14
`CHARGING
`
`DECRYPTION KEY
`INFORMATION
`RE. UEST MESSAGE
`
`
`
`
`SOFTWARE VENDER
`
`
`DECRYPTION KEY
`<
`
`
`CHARGING
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`US. Patent
`
`Jun. 13, 2000
`
`Sheet 5 0f 8
`
`6,075,862
`
`>m¥ZOFE>MUmQ
`
`n:mm<>>EOm
`4<>m=mrrmm2V"_
`
`-<UflZDEEO
`
`20:
`
`AS
`
`___
`
`
`
`
`
`2mkm>mFZmEmO<Z<E.
`
`
`
`
`Mmek—ZOO4<ZOmmmmOOHmm<>>EOm
` >m¥ZOEL>MUMD"H_n_"
`
`N;
`
`2
`
`
`
`>m¥ZOTE>MUMQn:mm<>>EOm
`
`QUE
`
`
`
`MOM—2m;mm<>>EOm
`
`x90QM<I
`
`ZOELA>MUMQ
`
`15<HmZHem
`
`a;
`
`
`
`>m¥ZOFE>MUMQ
`
`zoifiFmem
`
`aI.
`
`02mm<3E0m
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`
`
`
`
`
`

`

`US. Patent
`
`Jun. 13,2000
`
`Sheet 6 0f8
`
`6,075,862
`
`DECRYPTION KEY & SOFTWARE
`
`CONTENT MEMORY UNIT
`
`
`SOFTWARE lD-l
`
`DECRYPTION KEY-l
`
`SOFTWARE CONTENT-1
`
`SOFTWARE ID-2
`
`DECRYPTION KEY—2
`
`TS-OTTHTV-ARE-EON—TENT-ZE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`63
`
`DECRYPTION KEY
`
`
`MANAGEMENT UNIT
`
`
` -
`
`SOFTWARE
`
`CONTENT
`
`SOFTWARE
`VENDOR
`
`
`
`
`14
`
`DECRYPTION
`KEY
`
`_
`
`_\-
`
`_
`
`_
`‘1 1
`
`_
`
`_
`
`_
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`US. Patent
`
`Jun. 13, 2000
`
`Sheet 7 0f 8
`
`6,075,862
`
`
`
`SOFTWARE ID—3
`
`DECRYPTION KEY—3
`
`SOFTWARE CONTENT-3
`
`SOFTWARE ID—(n-l) DECRYPTION KEY—(n—I)
`
`SOFTWARE CONTENT—(n-I)
`
`
`
`
`
`
`
`DECRYPTION
`KEY
`
`i
`
`I
`
`| I I
`
`DECRYPTION
`KEY
`MANAGEMENT
`UNIT
`
`DECRYPTION
`KEY
`ACQUISITION
`UNIT
`
`SOFTWARE
`
`
`
`DECRYPTION KEY
`
`_MEM(_)RY U_N1T_
`
`Petitioner Apple - EX. 1015
`
`
`
`
`
`
`
`SOFTWARE ID—l
`
`DECRYPTION KEY-l
`
`SOFTWARE CONTENT-l
`
`
`
`Petitioner Apple - Ex. 1015
`
`

`

`US. Patent
`
`Jun. 13, 2000
`
`Sheet 8 0f 8
`
`6,075,862
`
`550%
`
`Ex29:2qu
`
`4<>mEme
`
`mmmUUDm
`
`Ex2052qu
`
`
`
`:2:zoEmSOU<
`
`m_m
`
`mmzdfi4<>mEEm
`
`
`>m¥ZOFL>-UND
`
`w95—me
`
`:m
`
`QQE
`
`
`
`
`
`>m¥ZOEL>-UMQMmELQOm—m
`
`
` MUZMQZOmemMOUZ—A>m¥ZOELL>MUmDV0%m:
`
`mm<>>rrm0mmmOFm
`
`2m
`
`FZmELZOU
`
`
`
`mm<>fih0mmmorrm
`
`HZMFZOU
`
`
`
`mm<>>EOmHm>mUmQ
`
`
`
`2528mm<3Eom
`
`
`
`:2:2952303
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`
`
`
`
`
`
`

`

`6,075,862
`
`1
`DECRYPTION KEY MANAGEMENT
`SCHEME FOR SOFTWARE DISTRIBUTION
`SYSTEM
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`
`The present invention relates to a decryption key man-
`agement scheme for managing a decryption key for decrypt-
`ing an encrypted software in a software distribution system.
`2. Description of the Background Art
`Conventionally, a software to be used by a computer is
`individually stored in a recording medium such as floppy
`disks and usually sold at a retail store in a form of a software
`package which contains the recording medium along with a
`manual and other necessary items.
`In a case of such a software package, the licensing to give
`a permission to use the software is usually made in a form
`which is inseparable from the sale of the software package.
`For instance, there are cases in which a document describing
`that a contract to use the software is established as soon as
`
`the software package is opened is distributed along with the
`software package itself, or cases in which a user is required
`to sign a contract to use the software with the software
`vender by using a user registration form enclosed in the
`software package.
`there are propositions for a new
`In contrast, recently,
`software distribution scheme aimed at realization of a freer
`
`distribution style and a tighter software right owner protec-
`tion. As a representative example of such a new software
`distribution scheme, the so called superdistribution scheme
`is well known (see: R. Mori and M. Kawahara, “Superdis-
`tribution: The Concept and the Architecture”, The Transac-
`tions of the IEICE, Vol. E73, No. 7, pp. 1133—1146, July
`1990; and US. Pat. No. 5,103,392).
`The superdistribution scheme utilizes a software structure
`formed by an encrypted software content and a header
`portion having a function to decrypt the encrypted software
`content. In addition,
`two concepts called “S-credit” and
`“Software Usage Monitor” are utilized to realize the licens-
`ing between a user and a software right owner and the
`management of software usage charges.
`“S-credit” is realized in a form of a memory card such as
`an IC card which stores information as to quantitatively how
`much software usage is to be permitted to a user. Auser who
`wishes to use the software distributed by the superdistribu-
`tion first pays an appropriate fee at a service center of the
`superdistribution system, and receives the “S-credit” which
`registers the information corresponding to the paid fee.
`“Software Usage Monitor” is a program which recognizes
`a balance of the user’s contract from a value of the infor-
`
`mation registered in the “S-credit”, and permits or prohibits
`the execution of the software according to the recognized
`balance of the user’s contract. This program permits the
`execution of the software after confirming the availability of
`the “S-credit” indicating a balance greater than a certain
`value on the computer, and decreases the value of the
`information registered in the “S-credit” (indicating the
`balance) as much as a fee to be charged for this software.
`However, in such a method for managing the software
`usage charges using “S-credit”, there is a need to provide a
`protection against illegal copying of “S-credit” or illegal
`rewriting of data of “S-credit”, and to this end, it has been
`necessary to use a specialized hardware mechanism for
`limiting read/write with respect to “S-credit”, for example.
`For this reason, recently, there is a proposition for a new
`software distribution system in which the encrypted soft-
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`ware content is distributed to users for free or for a very
`small charge, and a key for decrypting the encrypted soft-
`ware content is issued to a user who wishes to use this
`
`software in exchange for the payment of the software usage
`charge.
`In this software distribution system, the software vender
`can save costs required for production and distribution of
`individual software packages, and in addition, an effective
`means for advertising the software can be provided by
`packaging a non-encrypted demonstration version of this
`software for demonstrating the encrypted software content
`in a medium such as CD-ROM which stores the encrypted
`software content. From a viewpoint of a user, this feature can
`provide an advantage in that there is a chance to try and see
`if the software is worth purchasing before actually purchas-
`ing the software.
`The user receives the decryption key in exchange for the
`payment of the software usage charge for a desired software,
`and installs this software into a hard disk device of his own
`computer by decrypting the encrypted software content
`using the received decryption key.
`In this manner, the software distribution system utilizing
`the decryption key can manage the software usage charge in
`a form of the exchange of the decryption key, so that there
`is no need for “S-credit” and a specialized hardware for
`managing “S-credit” required by the superdistribution
`scheme, and therefore it is possible to realize a freer soft-
`ware distribution style.
`Now, considering a usual manner by which a user uses a
`computer, it often becomes necessary to delete the already
`installed software once in order to increase a usable capacity
`of the hard disk device, and then re-install the same software
`back to the hard disk device later on when a need to use this
`
`software arises. In a case of using the usual non-encrypted,
`packaged software,
`the user still possesses the recording
`medium contained in the software package itself, so that the
`deletion of the installed software on the hard disk device
`
`causes no problem, because it is possible to re-install the
`software from the recording medium when this software
`becomes necessary later on.
`In contrast, in a case of the above described software
`distribution system utilizing the decryption key,
`the
`decrypted software which was installed on the hard disk
`device by using the decryption key is the only executable
`software available for a user. Consequently, when the user
`loses the decryption key which was acquired from the
`software vender in exchange for the software usage charge
`and wishes to re-install the same software, it is necessary to
`acquire the decryption key by paying the software usage
`charge for the same software again. This fact can lead to a
`lower reliability of the software distribution system utilizing
`the decryption key, which in turn can present a hindrance to
`a spread of this software distribution system utilizing the
`decryption key.
`SUMMARY OF THE INVENTION
`
`It is therefore an object of the present invention to provide
`a decryption key management scheme for a software distri-
`bution system utilizing the decryption key, which can enable
`the re-install of the software that was decrypted once by a
`proper procedure, without requiring a re-acquisition of the
`decryption key from the software vender, so that a user can
`freely delete and re-install the software that was properly
`obtained once.
`
`According to one aspect of the present invention there is
`provided a method for managing a decryption key for
`
`Petitioner Apple - Ex. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`6,075,862
`
`3
`decrypting an encrypted software to be installed into a
`computer, comprising the steps of: searching the decryption
`key in a memory device of said computer; acquiring the
`decryption key from a distribution source of the encrypted
`software when the decryption key is not found in the
`memory means by the searching step; decrypting the
`encrypted software by using the decryption key obtained at
`the searching step or the acquiring step, and installing a
`decrypted software content into the memory device; and
`storing the decryption key acquired by the acquiring step
`into the memory device, such that the decryption key stored
`in the memory device is utilizable in decrypting the
`encrypted software at a time of re-installing the encrypted
`software.
`
`According to another aspect of the present invention there
`is provided a computer for managing a decryption key for
`decrypting an encrypted software to be installed into said
`computer, comprising: a memory device for storing a soft-
`ware content of each currently installed software, and a
`decryption key for decrypting each previously installed
`software; decryption key retrieval means for retrieving the
`decryption key for decrypting the encrypted software from
`the memory device; decryption key acquisition means for
`acquiring the decryption key corresponding to the encrypted
`software from a distribution source of the encrypted soft-
`ware when the decryption key is not found in the memory
`means by the decryption key retrieval means; decryption and
`install means for decrypting the encrypted software by using
`the decryption key obtained by the decryption key retrieval
`means or the decryption key acquisition means, and install-
`ing a decrypted software content into the memory device;
`and decryption key storing means for storing the decryption
`key acquired by the decryption key acquisition means into
`the memory device, such that the decryption key stored in
`the memory device is utilizable in decrypting the encrypted
`software at a time of re-installing the encrypted software.
`According to another aspect of the present invention there
`is provided an article of manufacture, comprising: a com-
`puter usable medium having computer readable program
`code means embodied therein for causing a computer to
`function as a system for managing a decryption key for
`decrypting an encrypted software to be installed into said
`computer,
`the computer readable program code means
`including: first computer readable program code means for
`causing said computer to search the decryption key in a
`memory device of said computer; second computer readable
`program code means for causing said computer to acquire
`the decryption key from a distribution source of the
`encrypted software when the decryption key is not found in
`the memory means by the first computer readable program
`code means; third computer readable program code means
`for causing said computer to decrypt the encrypted software
`by using the decryption key obtained by the first computer
`readable program code means or
`the second computer
`readable program code means, and install a decrypted soft-
`ware content into the memory device; and fourth computer
`readable program code means for causing said computer to
`store the decryption key acquired by the second computer
`readable program code means into the memory device, such
`that the decryption key stored in the memory device is
`utilizable in decrypting the encrypted software at a time of
`re-installing the encrypted software.
`According to another aspect of the present invention there
`is provided a method for distributing a software from a
`distribution source to users, comprising the steps of:
`encrypting a software to be distributed to users at a distri-
`bution source side, and distributing an encrypted software to
`
`4
`users; searching a decryption key for decrypting the
`encrypted software in a memory device of a user’s computer
`at an individual user side; providing the decryption key
`corresponding to the encrypted software from the distribu-
`tion source side to the individual user side when the decryp-
`tion key is not found in the memory means by the searching
`step; decrypting the encrypted software distributed at the
`encrypting step by using the decryption key obtained at the
`searching step or the providing step, and installing the
`decrypted software content into the memory device at the
`individual user side; and storing the decryption key acquired
`by the acquiring step into the memory device at the indi-
`vidual user side, such that the decryption key stored in the
`memory device is utilizable in decrypting the encrypted
`software at a time of re-installing the encrypted software.
`According to another aspect of the present invention there
`is provided a system for distributing a software from a
`distribution source to users, comprising: a distribution
`source computer center for encrypting a software to be
`distributed to users, and distributing an encrypted software
`to users; and a plurality of user’s computers connected with
`the distribution source computer center via a communication
`network, each user’s computer having: a memory device for
`storing a software content of each currently installed
`software, and a decryption key for decrypting each previ-
`ously installed software; decryption key retrieval means for
`retrieving the decryption key for decrypting the encrypted
`software from the memory device; decryption key acquisi-
`tion means for acquiring the decryption key corresponding
`to the encrypted software from the distribution source com-
`puter center when the decryption key is not found in the
`memory means by the decryption key retrieval means;
`decryption and install means for decrypting the encrypted
`software distributed by the distribution source computer
`center by using the decryption key obtained by the decryp-
`tion key retrieval means or the decryption key acquisition
`means, and installing a decrypted software content into the
`memory device; and decryption key storing means for
`storing the decryption key acquired by the decryption key
`acquisition means into the memory device, such that the
`decryption key stored in the memory device is utilizable in
`decrypting the encrypted software at a time of re-installing
`the encrypted software.
`Other features and advantages of the present invention
`will become apparent from the following description taken
`in conjunction with the accompanying drawings.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`FIG. 1 is a block diagram of one embodiment of a
`software distribution system according to the present inven-
`tion.
`
`50
`
`FIG. 2 is a diagram showing a program structure of an
`installer in an encrypted software used in the system of FIG.
`1.
`
`55
`
`60
`
`65
`
`FIG. 3 is a diagram illustrating functions to be realized by
`programs included in the installer shown in FIG. 2.
`FIG. 4 is a diagram showing a data structure of a
`decryption key request message used in the system of FIG.
`1.
`
`FIG. 5 is a diagram showing an operation of a software
`vender side in a case of receiving the decryption key request
`message of FIG. 4.
`FIG. 6 is a diagram showing an alternative configuration
`using a common installer for all encrypted softwares.
`FIG. 7 is a block diagram of one exemplary detailed
`configuration of the system of FIG. 1 relevant to the decryp-
`tion key management processing.
`
`Petitioner Apple - EX. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`6,075,862
`
`5
`FIG. 8 is a block diagram of another exemplary detailed
`configuration of the system of FIG. 1 relevant to the decryp-
`tion key management processing.
`FIG. 9 is a flow chart of a procedure for the encrypted
`software install processing in the system of FIG. 1.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`Referring now to FIG. 1 to FIG. 9, one embodiment of a
`decryption key management scheme for a software distri-
`bution system according to the present invention will be
`described in detail.
`
`FIG. 1 shows an overall configuration of a software
`distribution system in this embodiment, which realizes a
`software distribution scheme in which the encrypted soft-
`ware content is distributed to users for free or for a very
`small charge, and a decryption key for decrypting the
`encrypted software content is issued to a user who wishes to
`use this software in exchange for the payment of the
`software usage charge for this software. This software
`distribution system of FIG. 1 generally comprises a plurality
`of subscribing user terminals, a software vender, and a
`communication network connecting each user terminal and
`the software vender. Note here that the encrypted software
`content implies encrypted information such as encrypted
`program and/or encrypted data.
`In FIG. 1, one personal computer 11 is shown as a
`representative of the subscribing user terminals, where this
`personal computer 11 is connected with a computer center
`provided at the software vender 14 side, through the com-
`munication network 15 such as a telephone network or an
`ISDN.
`
`The software vender 14 distributes a plurality of
`encrypted softwares 100 to users for free or for very small
`changes, where each encrypted software 100 can be pro-
`vided in a form of a large capacity memory medium such as
`CD-ROM 10 in which the encrypted software content is
`contained, possibly along with a demonstration version of
`this software for demonstrating the encrypted software
`content, or in a form of data transferred through the com-
`munication network 15.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`The software vender 14 also maintains and manages the
`decryption key for decrypting each encrypted software 100
`distributed to users.
`
`45
`
`As shown in FIG. 1, each software 100 recorded in the
`CD-ROM 10 includes an installer 101, a software ID 102,
`and a software content 103. Here, the software content 103
`is encrypted, but the installer 101 and the software ID 102
`are not. When the demonstration version of the software is
`to be included,
`this demonstration version is also not
`encrypted.
`The installer 101 is a program for decrypting the
`encrypted software content 103 and installing the decrypted
`software content into the personal computer 11 of the user.
`The software ID 102 is a unique ID for identifying each
`encrypted software 100.
`The software content 103 is information such as an
`
`application program or a utility program which can be
`operated under a prescribed operating system, or various
`types of data files such as those of image data.
`The personal computer 11 has a hard disk device 12 which
`is used as a secondary memory device. On this hard disk
`device 12,
`the operating system and various application
`programs to be executed on the personal computer 11, and/or
`various data files are installed. In addition, in a memory
`
`50
`
`55
`
`60
`
`65
`
`6
`region of this hard disk device 12, a decryption key memory
`unit 13 is provided.
`The decryption key memory unit 13 is a kind of indepen-
`dent data file which can be referred by the installer 101. This
`decryption key memory unit 13 stores the software ID of
`each encrypted software 100 which was installed once, in
`correspondence to the decryption key for decrypting each
`encrypted software 100 that was acquired from the software
`vender 14. The decryption key stored in this decryption key
`memory unit 13 will be utilized in decrypting the encrypted
`software 100 to be re-installed.
`
`The storing of the software ID and the decryption key into
`the decryption key memory unit 13 is made when the
`decryption key is acquired form the software vender 14. In
`practice, it suffices for the decryption key memory unit 13 to
`store only the decryption key which corresponds to the
`deleted software, so that the software ID and the decryption
`key corresponding to the software to be deleted can be stored
`into the decryption key memory unit 13 at a time of actually
`deleting this software.
`FIG. 2 shows a program structure of the installer 101,
`which includes a decryption key retrieval program, a com-
`munication program, a decryption and install program, and
`a decryption key storing program. In the following,
`the
`function realized by executing each of these programs will
`be described with reference to FIG. 3.
`
`The decryption key retrieval program searches through
`the decryption key memory unit 13, and retrieves the
`decryption key for decrypting the encrypted software con-
`tent 103 (operation (1) of FIG. 3). As described above, the
`decryption key memory unit 13 registers the software IDs
`and the decryption keys corresponding to the encrypted
`softwares 100 that were already installed. Therefore, the
`decryption key retrieval by the decryption key retrieval
`program can be realized by a sequential search for sequen-
`tially comparing the software ID 102 of a desired software
`with each software ID registered in the decryption key
`memory unit 13, or by a binary search through the software
`IDs registered in the decryption key memory unit 13.
`The communication program carries out a communication
`with the software vender 14 through the communication
`network 15 so as to acquire the decryption key from the
`software vender 14 in exchange for the payment of the
`software usage charge (operation (2) of FIG. 3). This com-
`munication program includes a routine for transmitting a
`decryption key request message to the software vender 14,
`and a routine for receiving the decryption key from the
`software vender 14. This communication program is to be
`executed when the decryption key retrieval by the decryp-
`tion key retrieval program fails, that is, when the corre-
`sponding decryption key does not exist in the decryption key
`memory unit 13.
`The decryption and install program decrypts the software
`content 103, by using the decryption key retrieved by the
`decryption key retrieval program in a case of a retrieval
`success, or the decryption key acquired from the software
`vender 14 by the communication program in a case of a
`retrieval failure, and installs the decrypted software content
`into the hard disk device 12 (operation (3) of FIG. 3). In a
`case of re-installing the software, the encrypted software
`content 103 to be decrypted and installed by this decryption
`and install program is to be acquired from the software
`vender 14 again, for free or for a very small charge.
`The decryption key storing program registers the decryp-
`tion key acquired from the software vender 14 by the
`communication program into the decryption key memory
`
`Petitioner Apple - Ex. 1015
`
`Petitioner Apple - Ex. 1015
`
`

`

`6,075,862
`
`7
`unit 13 in corresponding to the corresponding software ID
`(operation (4) of FIG. 3).
`According to the installer 101 which has a program
`structure as described above, the decryption key acquired
`from the software vender 14 is used for decrypting the
`software content 103, and then stored in the decryption key
`memory unit 13 as a separate file from the decrypted
`software content 103. For this reason, even when the
`decrypted software content is deleted from the hard disk
`device 12, the decryption key stored in the decryption key
`memory unit 13 is maintained therein, without being
`deleted.
`
`Consequently, in a case of re-installing the software which
`was already installed once,
`it is possible to decrypt the
`encrypted software content 103 to be re-installed immedi-
`ately by utilizing the decryption key stored in the decryption
`key memory unit 13. As for the encrypted software 100 to
`be installed for the first time, the decryption key will be
`automatically acquired from the software vender 14 by the
`installer 101.
`
`In this embodiment, the decryption key request message
`to be transmitted to the software vender 14 by the commu-
`nication program has a data structure as shown in FIG. 4,
`where the decryption key request message 20 includes a
`header portion 21 containing information necessary for
`communication, a machine ID 22 of the personal computer
`11, a software ID 23 of an encrypted software 100 to be
`installed, a user name 24, and a user’s credit number 25.
`Now, the operation of the software vender 14 in a case of
`receiving this decryption key request message will be
`described with reference to FIG. 5.
`
`Namely, the software vender 14 detects the software ID
`23 from the received decryption key request message, and
`identifies a desired software of the user. Then, the software
`vender 14 generates a charging information necessary for
`the charging processing from the software usage charge for
`the identified software, the user name 24, and the user’s
`credit number 25. Then, the charging processing according
`to this charging information is carried out by the software
`vender 14 itself, or by a credit company 16 to which the
`charging processing is entrusted.
`Then, the software vender 14 transmits the decryption key
`corresponding to the software ID 23 to the user who issued
`the decryption key request message. In this case, it is also
`possible to adopt a scheme in which the decryption key is
`encrypted by using the machine ID 22 of the user before
`being transmitted to the user, and the installer 101 uses the
`decryption key after decrypting the encrypted decryption
`key by using the machine ID.
`In this manner, the management of the software usage
`charge can be automatically realized by utilizing the request
`and the issuance of the decryption key.
`FIG. 6 shows an alternative configuration in which the
`function of the installer 101 is implemented in the personal
`computer 11 and utilized as a common installer for installing
`all the encrypted softwares into the personal computer 11.
`Namely, in FIG. 6, a decryption key management system
`51 is implemented in the personal computer 11, and used to
`realize the function of the common installer with respect to
`all the encrypted softwares. This decryption key manage-
`ment system 51 can be realized as a program which is to be
`installed into the personal computer 11 of each user at a time
`of forming the software distribution system of this embodi-
`ment.
`
`In this case, the decryption key management system 51
`includes a group of programs similar to those included in the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`installer 101 of FIG. 2, that is, the decryption key retrieval
`program, the communication program, the decryption and
`install program, and the decryption key storing program.
`In a case of utilizing this decryption key management
`system 51, it suffices for each encrypted software 100 to
`include the software content 103 and the software ID 102,
`and the installer 101 is unnecessary. In this case, the soft-
`ware ID of each encrypted software will be utilized in the
`decryption key retrieval from the decryption key memory
`unit 13 similarly as described above.
`N

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