US5680453A - Software delivery system, center device, relaying device and user terminal device - Google Patents
Software delivery system, center device, relaying device and user terminal device Download PDFInfo
- Publication number
- US5680453A US5680453A US08/510,868 US51086895A US5680453A US 5680453 A US5680453 A US 5680453A US 51086895 A US51086895 A US 51086895A US 5680453 A US5680453 A US 5680453A
- Authority
- US
- United States
- Prior art keywords
- software
- ciphering
- deciphering
- mode
- specified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000004891 communication Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims description 58
- 230000006870 function Effects 0.000 description 45
- 238000013478 data encryption standard Methods 0.000 description 37
- 230000003287 optical effect Effects 0.000 description 17
- 230000010365 information processing Effects 0.000 description 12
- 238000010276 construction Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 101000581817 Rattus norvegicus Regenerating islet-derived protein 3-alpha Proteins 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 101001044053 Mus musculus Lithostathine-1 Proteins 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 101100412394 Drosophila melanogaster Reg-2 gene Proteins 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/04—Billing or invoicing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/101—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Definitions
- the present invention relates to a technology effective for and applicable to a distribution system for software such as computer programs, video works or the like, particularly for digitalized software information.
- the broadcasting station provides video works to the users via communication satellites.
- information provided to the users from the communication satellites is ciphered and decipherers are provided to the contracted users.
- keys for deciphering the ciphered information sent via the communication satellites are sent to them, and the decipherers decipher the information based on the keys. In this way, the contracted users are allowed to watch the deciphered video information on home TV.
- a uniform paying system is adopted, and further due to one-way characteristic of a broadcasting medium the users can only watch the programs specified by the broadcasting station. Thus, in order to obtain information they want, the users must wait until the time determined by the broadcasting station.
- the present invention is to provide a technology effective for realizing a software distributing form involving at least a center for providing images and sounds, a distributor of software storing media such as CD-ROM, MO or the like and a communication company for providing software by utilizing communication lines, thereby improving security and reducing the time burdens imposed on the users.
- a software delivery system includes a center and a user terminal device.
- the center is provided with a function for ciphering the software the user wants.
- the center includes ciphering key generating means, utilization mode identifying means and ciphering processing means.
- the ciphering key generating means is provided with a function for generating ciphering keys used for software ciphering.
- the utilization mode identifying means is provided with a function for determining a ciphering mode in accordance with the form of software provision.
- the ciphering processing means is provided with a function for ciphering software based on ciphering key information and modes.
- the user terminal device is provided with a function for deciphering software offered from the center and outputting it. It includes charging information processing means, deciphering key generating means, utilization mode identifying means and deciphering processing means.
- the charging information processing means is provided with a charging table for registering the amount of money each user can use (charging information storing means) and a control part for identifying whether the balance value of the charging table is over a specified value or not at the time of software provision and giving permission to deciphering of the software if it is over the specified value.
- the control part is provided with a function for charging for every title relating to software whose deciphering is permitted. Specifically, the title of software is detected, and whenever deciphering of the software having this title is permitted, subtraction will be made from the balance of the charging table.
- the deciphering key generating means is provided with a function for generating deciphering keys used for software deciphering.
- the utilization mode identifying means is provided with a function for identifying the mode of the software provided by the center.
- the deciphering processing means is for deciphering software based on a deciphering key generated by the deciphering key generating means and a mode identified by the utilization mode identifying means only in the case where deciphering is permitted by the charging information processing means.
- the ciphering key generating means and the deciphering key generating means may be made to detect software ID specifying each software or information on software titles, etc., and to generate ciphering and deciphering keys based on these bits of information.
- the utilization mode identifying means may be made to identify whether software is sent to the user using a storing medium or via a communication medium and to determine a ciphering mode based on this identification result.
- the system according to the present invention may be provided with a relaying device between the center and the user terminal device.
- This relaying device is provided with a function for transferring software provided from the center using a storing medium or a communication medium further to a single or a plurality of user terminal devices.
- deciphering key generating means input side utilization mode identifying means, deciphering processing means, ciphering key generating means, output side utilization mode identifying means and ciphering processing means.
- the deciphering key generating means is provided with a function for generating a deciphering key used to decipher software supplied from the center.
- the input side utilization mode identifying means is provided with a function for identifying the ciphering mode of software supplied from the center.
- the deciphering processing means is for deciphering software based on a deciphering key generated by the deciphering key generating means and a mode identified by the input side utilization mode identifying means.
- the ciphering key generating means is provided with a function for generating a ciphering key used to cipher deciphering software.
- the output side utilization mode identifying means is for determining a ciphering mode based on the form of software provision.
- the ciphering processing means is provided with a function for ciphering software based on a ciphering key and a mode.
- the user terminal device according to the present invention will be described hereinbelow.
- the user terminal device includes an input device, charging information processing means, deciphering key generating means, utilization mode identifying means and deciphering processing means.
- the input device is for inputting software the user wants, and it may be a driving device for reading software from a storing medium or it may be a communication device for receiving software data sent via a communication medium, for example.
- the charging information processing means is provided with a function for identifying whether or not to give permission to software deciphering by consulting a user's charging balance when the software is input. Specifically, it includes a charging table for registering the amount of money the user can use and a control part for identifying whether the balance is over a specified value or not (or not "0") by consulting this charging table and giving permission to deciphering of the software if it is found to be over the specified value (not "0").
- the deciphering key generating means is provided with a function for generating deciphering key used to deciphering software. Specifically, deciphering keys are generated based on the software IDs or titles of pieces of software.
- the utilization mode identifying means is provided with a function for identifying the mode of input software.
- the deciphering processing means is provided with a function for deciphering software based on a deciphering key generated by the deciphering key generating means and a mode identified by the utilization mode identifying means only when the charging information processing means gives permission to deciphering of the software.
- the center ciphers the software the user wanted by and provides it to the user. That is, the center generates ciphering keys based on the software IDs or the titles of pieces of software and determines ciphering modes based on the data structures of pieces of software. Also, based on ciphering keys and modes it ciphers software.
- Software ciphered at the center is provided to the user terminal device through storing media or communication media.
- the user terminal device when software is provided from the center, will consult the user charging balance and give permission to deciphering of the software if the balance is over the specified value (not "0"). Then, it will carry out subtraction from the user charging balance for each title of permitted software. Next, the user terminal device will generate a deciphering key based on the software ID or the title of the software and identify the mode of this software. It will decipher the software based on the deciphering key and the mode and output it to such output devices as a display, a speaker or the like.
- FIG. 1 is a view showing the principle(1) of the present invention.
- FIG. 2 is a view showing the principle(2) of the present invention.
- FIG. 3 is a block diagram showing the hardware construction of a center, a relaying device and a user terminal device at the embodiment according to the present invention.
- FIGS. 4A, 4B, 4C and 4D are views showing DES modes.
- FIG. 5 is a view showing the detail of DES.
- FIG. 6 is a flow chart showing input and output timings of DES.
- FIG. 7 is a view showing software provision routes according to the present invention.
- FIG. 8 is a table showing a mode conversion at each provision route.
- FIGS. 9A, 9B and 9C are views showing concepts of mode conversion at a relaying device at the embodiment.
- FIGS. 1 and 2 Prior to description of the preferred embodiment, a basic construction according to the present invention will be described with reference to FIGS. 1 and 2.
- a software delivery system is constructed by a center 91 and a user terminal device 92.
- the center 91 is provided with a function for ciphering the software the user wants.
- the center includes ciphering key generating means 91a, utilization mode identifying means 91c and ciphering processing means 91b.
- the ciphering key generating means 91a is provided with a function for generating ciphering keys used to cipher software.
- the utilization mode identifying means 91c is provided with a function for determining ciphering modes in accordance with the forms of software provisions.
- the ciphering processing means 91b is provided with a function for ciphering software based on ciphering key information and modes.
- the user terminal device 92 is provided with a function for deciphering software provided from the center 91. Specifically, it includes charging information processing means 92a, deciphering key generating means 92b, utilization mode identifying means 92c and deciphering processing means 92d.
- the charging information processing means 92a includes a charging table 8 (charging information storing means) registering the amount of money the user can use and a control part 921 for identifying whether a balance value on the charging table 8 is over a specified value or not at the time of software provision and giving permission to deciphering of the software if it is over the specified value.
- control part 921 is provided with a function for executing charging for each title of software given deciphering permission. Specifically, it detects the title of software and makes subtraction from a balance on the charging table 8 whenever deciphering of the title is given permission.
- the deciphering key generating means 92d is provided with a function for generating deciphering keys used to decipher software.
- the utilization mode identifying means 92c is provided with a function for identifying the mode of software provided from the center 91.
- the deciphering processing means 92d is for deciphering software based on deciphering keys generated by the deciphering key generating means 92b and modes identified by the utilization mode identifying means 92c only when the charging information processing means 92a.
- the ciphering key generating means 91a and the deciphering key generating means 92b may be made to detect information on software ID specifying each individual software, titles or the like, and then generate ciphering keys and deciphering keys based on these bits of information.
- the center 91 As for a method of providing software from the center 91 to the user terminal device 92, there exist the one of providing it by storing software in a storing medium 93 of CD-ROM, MO, etc., the one through a communication medium 94 of communication lines, etc., and others. Accordingly, the center 91 must be provided with functions for writing software into the storing medium 93 and transmitting it. Then, the utilization mode identifying means 91c may be made to identify whether software will be provided to the user by means of the storing medium 93 or via the communication medium 94 and determine a ciphering mode based on this identification result.
- the system according to the present invention may be provided with a relaying device 95 as shown in FIG. 2 between the center 91 and the user terminal device 92.
- This relaying device 95 is provided with a function for further transferring the software provided from the center 91 using the storing medium 93 or the communication medium 94 to a single or a plurality of user terminal devices 92.
- the relaying device 95 includes deciphering key generating means 95a, input side utilization mode identifying means 95c, deciphering processing means 95b, ciphering key generating means 95d, output side utilization mode identifying means 95e and ciphering processing means 95f.
- the deciphering key generating means 95c is provided with a function for generating deciphering keys used to decipher software supplied from the center 91.
- the input side utilization mode identifying means 95c is provided with a function for identifying ciphering modes of software supplied from the center 91.
- the deciphering processing means 95b is for deciphering software based on deciphering keys generated by the deciphering key generating means 95a and modes identified by the input side utilization mode identifying means 95c.
- the ciphering key generating means 95d is provided with a function for generating ciphering keys based on ciphering decipher software.
- the output side utilization mode identifying means 95e is for determining ciphering modes based on the forms of software provisions.
- the ciphering means 95f is provided with a function for ciphering software based on ciphering keys and modes.
- the user terminal device 92 according to the present invention will be described hereinbelow.
- the user terminal device 92 includes an input device 92e, charging information processing means 92a, deciphering key generating means 92b, utilization mode identifying means 92c and deciphering processing means 92d.
- the input device 92e is for inputting the software the user wants, and it may a driving device for reading software from the storing medium 93 or a communication device for receiving software data transmitted via the communication medium 94.
- the charging information processing means 92a is provided with a function for identifying whether or not to give permission to software deciphering by consulting the user charging balance. Specifically, it includes a charging table 8 registering the amount of money the user can use and a control part 921 for identifying whether a balance is over a specified value (or not "0") consulting this charging table 8 and giving permission to software deciphering if it is over the specified value (not "0").
- the deciphering key generating means 92b is provided with a function for generating deciphering keys used to decipher software. Specifically, it generates deciphering keys based on software IDs, titles of software, etc.
- the utilization mode identifying means 92c is provided with a function for identifying modes of input software.
- the deciphering processing means 92d is provided with a function for deciphering software based on deciphering keys generated by the deciphering key generating means 92b and modes identified by the utilization mode identifying means 92c only when the charging information processing means 92a gives permission to software deciphering.
- the center 91 ciphers the software the user wants and provides it thereto. That is, the center 91 generates ciphering keys based on software IDs, titles, etc., of software and determines ciphering modes based on data structures, etc., of software. Then, based on ciphering keys and modes it ciphers software.
- the software thus ciphered at the center is provided to the user terminal device through the storing medium 93 or the communication medium 94.
- the user terminal device 92 when the software is provided from the center 91, will consult the charging balance of the user and give permission to deciphering of the software if it identifies that the balance is over the specified value (not "0"). Then, a subtraction will be made from the user's charging balance for each title of software given permission for deciphering. Then, the user terminal device 92 will generate deciphering keys based on software IDs or titles of software and identify modes for the software. The user terminal device 92 will decipher the software based on deciphering keys and modes and output it to such output devices as a display, a speaker or the like.
- the center 91, the relaying device 95 and the user terminal device 92 can be realized by almost similar hardware constructions.
- FIG. 3 is a block diagram showing the internal functional construction of the user terminal device 92 as one such example.
- a switch 57(SW1) functions as an input interface as well, and is used to input software information through such various providing routes as a communication line 51, a CD-ROM 52, MO, IC-card(PCMCIA type), DVD or the like. Also, by this switch 57 (SW1), reading and writing of software information into an optical magnetic disk 58 are allowed with an optical magnetic disk driving device (not shown in the Figure).
- a receiver 79 as a signal processing means, an MO converter 59 and a CD/MO demodulator 60 are arranged.
- the receiver 79 is for transforming software information provided as a received signal via the communication line 51 into a data form processable by the device while the MO converter 59 is modulating means for writing into the optical magnetic disk 58.
- the CD/MO demodulator 60 is for demodulating data read from the CD-ROM 52 or the optical magnetic disk 58, which is controlled by the control circuit.
- a switch 61 (SW2) is for selectively outputting data output from the respective signal processing means described previously to various error processing means. In the case of writing into the optical magnetic disk 58, transfer of data in a direction reverse to the error processing means the signal processing means is also controlled.
- the error processing means is divided into a communication system error processing part 62, an optical magnetic disk error processing part 62 (62a, 62b) and a magnetic disk/CD system error processing part 63.
- the optical magnetic disk system error processing part 62 includes an error check code generating part 62a and an error check code correcting part 62b, and the former will be made to function when writing into the optical magnetic disk 58 is carried out while the latter will be made to work when reading the optical magnetic disk is carried out.
- error check code correction, bit rearraying, etc. are executed.
- a switch 64(SW3) is arranged on a part following the error processing means.
- This switch 64(SW3) is provided with a function for controlling routes so that software information processed at the signal processing means and the error processing means can be output to a software control part 3 on a stage next to it, or to a later mentioned switch 65(SW4), or an output from the error check code correcting part 62b can be returned to the error check code generating part 62a.
- data read from the CD-ROM 52 is input to the CD/MO demodulator 60 with the route changed by the switch 57(SW1).
- the data demodulated here will be sent to the magnetic disk/CD system error processing part 63 with the route changed by the switch 61 (SW2).
- the data for which error check code correction and bit rearraying are carried here will be sent to the error check code generating part 62a with the route changed by the switch 64 (SW3), and an error check code corresponding to the optical magnetic disk will be added thereto.
- this data will be sent to the MO modulator 59 with the route changed by the switch 61 (SW2), transformed into a data form to be written into the optical magnetic disk 58, and written thereinto by the switch 57 (SW1).
- the software control part 3 is constructed in a module structure made of an IC card or a board, etc., including on its center DES as a deciphering part 7 having an input buffer 21 and an output buffer 24.
- DES "46 DATA ENCRYPTION STANDARD NIST" by FIP'S PUB, INC., may be used.
- the DES is provided with a mode identifying part 18(MODE) having a function for selecting out of a plurality of DES modes the ones most suited to data forms, etc.
- MODE mode identifying part 18
- this DES functions not only as a deciphering part 7 (deciphering processing means 95b) but also as a ciphering part (ciphering processing means 95f).
- the mode identifying part 18 is made to function as the input side utilization mode identifying means 95c and the output side utilization mode identifying means 95e.
- the control CPU is made to function as the ciphering key generating means 95d and the deciphering key generating means 95a, as well.
- FIG. 4(a) shows a basic ECB mode, which is a mode for ciphering (or deciphering) an input data string of 64 bit as an output data string of 64 bit by key information 16 of 64 bit at the DES 7.
- FIG. 4(b) shows a CBC mode, which is a mode for ciphering (or deciphering) an input data string of 64 bit by a key information 16 of 64 bit at the DES 7, and then returning it again to the DES 7.
- This is a system by which feedbacking is carried out until inputting of ali data is finished, and then a final result is output, and thus it is suited to data processings for files, etc.
- FIG. 4(c) shows an OFB mode suited to communication data for which errors are easily generated, audio data whose one error gives big influence on others, etc.
- FIG. 4(d) shows a CFB mode suited to self synchronous type of data.
- the mode identifying part 18 reads the best ones of these modes stored in a mode table 20 by analyzing data forms, etc., and sends them to the deciphering part (DES). At the DES 7, based on these selected modes ciphering and deciphering processings are carried out.
- DES deciphering part
- FIG. 5 is a block diagram showing the hardware construction of the deciphering part 7.
- a shift register (REG 1) of 64 bit connecting 8 registers of 8 bit is disposed as an input buffer 21, and on a following part a selector se1 is disposed.
- the selector se1 allows selective inputting of either outputs from a later described DES processing main circuit 25 or those from the shift register (REG1).
- a register 23 (REG 2) of 8 bit is disposed, and on a part next to it the DES processing main circuit 25 is disposed.
- This DES processing main circuit 25 functions as a central DES of the deciphering part 7. That is, in the DES processing main circuit 25 various DES modes are registered as ROM (Read Only Memory) as described referring to FIG. 4, and in accordance with instructions from the control CPU 4 a deciphering processing is carried out by selecting the logic of the optimal DES mode.
- the output of the DES processing main circuit 25 is branched to the selector sel and an output register (REG 3) as the output buffer 24. Then, the output of the output register(REG 3) is used as ciphered or deciphered data.
- the output of the input register (input buffer 21) is given DES processing as an output from the register 23 by the first clock of the next cycle. Then, it will be output from the output register (output buffer 24) by the next clock. At the time of outputting from this output register (output buffer 24), on the input side ciphered data of the next cycle is being fetched from the input register (input buffer 21).
- the DES 7 described above is controlled by the control CPU 4, and to the bus of this control CPU 4 in addition to the DES 7 the charging table 8 constructed by a memory and an interface 72(I/O) are connected.
- the charging table 8 In the case where the charging table 8 is not provided within an SD circuit 3, it is necessary to output the charging value information to a floppy disk, etc., and record it. In this case, if the charging value information is registered in such media as a floppy disk and so on in a state allowing the user to read, it is hard to maintain security. Thus, if the user information on the charging value, etc., is output to the outside, the control CPU 4 may be made to cipher such information at the DES 7, and then output it as ciphered data.
- the deciphering part(DES) is made to function as a ciphering part when the charging information is output to the outside.
- this charging table 8 may be omitted when the present device is used only as the center 91 or the relaying device 95.
- the interface 72(I/O) is connected to a host CPU 10 outside the software control part 3. Also, it is allowed to use the host CPU 10 on a host device side (i.e., software amount-base charging/reproducing device main body) as the control CPU 4.
- a host device side i.e., software amount-base charging/reproducing device main body
- an interface(IO) is connected to the bus of the host CPU 10, and through this and an outside interface 75 an input device 74 and a modem 73 are connected.
- the output of the software control part 3 is output through a switch 65(SW4) to an audio image separating part 66(DE-MUX) which is an information transforming part, an image expanding part 67a, an audio expanding part 76b(MPEG), etc.
- Image data separated at the audio image separating part 66 is expanded at the image expanding part 67a (MPEG) and output to such analog displayers as a TV display or the like as an NTSC signal transformed at an D/A converter 68a.
- MPEG image expanding part
- audio data is expanded at an audio expanding part 67b(MPEG) and output to such analog audio equipment as a speaker and so on as an NTSC transformed at a D/A converter 68b. Then, synchronization between images and audio is controlled by a synchronization control part 70(VRC).
- VRC synchronization control part
- the output of the audio image separating part 66 (DE-MUX) is output to the outside with no changes as digital data, it will be output to digital equipment such as personal computers or the like through an interface 71 (SCSI).
- FIGS. 7 to 9 modes for providing software according to the present invention will be described.
- FIG. 7 as forms of providing software from the center 91 to the end user 121, there are first a route via a communication company 122, second a route wherein software is purchased directly from the center 91 and third a route via a shop 123.
- the first route via the communication company 122 from the center 91 to the communication company 122 there are cases where software is provided via a communication line C1 and by a medium form P1.
- a communication line C1 various communication means are conceivable including public lines, optical communication lines, satellite communications, or the like.
- a medium form P1 various medium means are conceivable including CD-ROMs, optical magnetic disks, floppy disks, or the like.
- the center 91 when the center provides software to the communication company 122, if it is via the communication line C1, as a ciphering mode the OFB mode as shown in FIG. 4(c) is best suited.
- the center 91 generated ciphered data on the OFB mode by its own DES 7 and outputs it to the communication line C1.
- the communication company 122 Upon receiving the ciphered data via the communication line C1, the communication company 122 will output the ciphered data as it is to the communication line C2 using the relaying device 95 (FIG. 9(a)).
- a processing at the user terminal device 92 which has received the ciphered software data via the communication line C2 is as described previously.
- the CBC mode as shown in FIG. 4(b) is best suited as a ciphering mode.
- the center 91 ciphers software data on the CBC mode at its own DES 7 and stores this data in a medium such as a CD-ROM or the like.
- the communication company 122 Upon receiving the ciphered software data stored in the medium of a CD-ROM, MO, IC-card(PCMCIA type), DVD or the like the communication company 122 will convert the ciphering mode using its own DES 7 in order to supply the ciphered software data to the communication line C2 (see FIG. 9(b)).
- the OFB mode is best suited to distributing data to the communication line C2 as a ciphering mode as mentioned previously, after the received ciphered software data is deciphered on the CBC mode first, it is ciphered again on the OFB mode.
- the end user 121 Upon receiving the software data thus ciphered, the end user 121 will execute deciphering based on the OFB mode selected by the mode identifying part 18(MODE) at the DES 7 of his own user terminal device 92.
- the center 91 sends software data ciphered on the OFB mode at its own DES 7 to a communication line C3.
- the shop 123 When receiving this ciphered software data at its own relaying device 95, the shop 123 will store it in a medium (P2) such as an optical magnetic disk, or the like (FIG. 9(c)). Open receiving this data by the medium (P2), the user terminal device 92 of the end user 121 will execute deciphering of the ciphered software data on the OFB mode at its own DES 7.
- a medium such as an optical magnetic disk, or the like
- a list of mode conversions at the relaying device 95 is shown in FIG. 8. That is, the description thus made was limited to the cases of one-way distribution of software. In the case of two-way distribution, however, it is predetermined that the CBC mode must be always used.
Abstract
In order to realize an optimal software distributing form involving a software storing medium distributor and a communication company which provides software by utilizing communication lines, a center device for providing specified software to a user by ciphering it, a relaying device and a user terminal device are provided, and the center and the relaying device are made to carry out ciphering in a mode optimal to the software supply mode.
Description
The present invention relates to a technology effective for and applicable to a distribution system for software such as computer programs, video works or the like, particularly for digitalized software information.
With the developments of large-scale storage media such as CD-ROM, MO or the like, large-capacity and high-speed communication technologies such as B-ISDN or the like and cable television technologies, etc., it is expected that images and sounds, to say nothing of computer programs will be distributed as digital information by using these means.
That is, video works and others which have hitherto been supplied in the form of video tapes have now come to be sold as they are in such storing media as CD-ROM, MO or the like, or distributed on the market as games utilizing the interactive characteristic (two-way characteristic) of CD-ROM, MO or the like.
The same is true for communication lines, and the present situation is such that video works as mentioned above can now be sent to the users via communication lines.
As it is very easy to copy this kind of digital information on other media and there is no possibility of quality deterioration at the time of copying as in the case of analog information, copying of the same information is possible so that there is every possibility that the profits of the makers will be impaired due to such copying operation. In other words, as long as large-capacity and rewritable optical magnetic disks and magnetic disk devices are provided, the content of CD-ROM, MO or the like can be easily copied with only minimum knowledge of DOS commands.
Thus, in almost all cases, the renting of these kinds of digital information media is prohibited by the manufacturers because sufficient security checking is impossible.
On the other hand, as this kind of software is still very expensive, the end users more often than not hesitate to buy it until they are sure that the software is really what they want or it is usable for the hardware they have.
In this connection, a new software distributing system has begun to be realized, wherein a number of function-limited pieces of software stored in CD-ROM, MO or the like are sold at low prices, the end users send fees for the kind of software they want, and then codes for releasing the functional limitation for the software are reported to them.
Further, in the field of broadcasting, a system has been realized, wherein the broadcasting station provides video works to the users via communication satellites. According to this system, as video works are provided only to those users who have made contracts with the broadcasting station, information provided to the users from the communication satellites is ciphered and decipherers are provided to the contracted users. Also, keys for deciphering the ciphered information sent via the communication satellites are sent to them, and the decipherers decipher the information based on the keys. In this way, the contracted users are allowed to watch the deciphered video information on home TV. As for a charging system, however, irrespective of the period of watching time on the part of the users, etc., a uniform paying system is adopted, and further due to one-way characteristic of a broadcasting medium the users can only watch the programs specified by the broadcasting station. Thus, in order to obtain information they want, the users must wait until the time determined by the broadcasting station.
The present invention is to provide a technology effective for realizing a software distributing form involving at least a center for providing images and sounds, a distributor of software storing media such as CD-ROM, MO or the like and a communication company for providing software by utilizing communication lines, thereby improving security and reducing the time burdens imposed on the users.
A software delivery system according to the present invention includes a center and a user terminal device.
The center is provided with a function for ciphering the software the user wants. The center includes ciphering key generating means, utilization mode identifying means and ciphering processing means.
The ciphering key generating means is provided with a function for generating ciphering keys used for software ciphering.
The utilization mode identifying means is provided with a function for determining a ciphering mode in accordance with the form of software provision.
The ciphering processing means is provided with a function for ciphering software based on ciphering key information and modes.
The user terminal device is provided with a function for deciphering software offered from the center and outputting it. It includes charging information processing means, deciphering key generating means, utilization mode identifying means and deciphering processing means.
The charging information processing means is provided with a charging table for registering the amount of money each user can use (charging information storing means) and a control part for identifying whether the balance value of the charging table is over a specified value or not at the time of software provision and giving permission to deciphering of the software if it is over the specified value.
The control part is provided with a function for charging for every title relating to software whose deciphering is permitted. Specifically, the title of software is detected, and whenever deciphering of the software having this title is permitted, subtraction will be made from the balance of the charging table.
The deciphering key generating means is provided with a function for generating deciphering keys used for software deciphering.
The utilization mode identifying means is provided with a function for identifying the mode of the software provided by the center.
The deciphering processing means is for deciphering software based on a deciphering key generated by the deciphering key generating means and a mode identified by the utilization mode identifying means only in the case where deciphering is permitted by the charging information processing means.
Further, the ciphering key generating means and the deciphering key generating means may be made to detect software ID specifying each software or information on software titles, etc., and to generate ciphering and deciphering keys based on these bits of information.
As for a method of providing software from the center to the user terminal device, there exist the one of providing software by storing it in such storing media as CD-ROM, MO or the like, the one of providing it via communication media of communication lines, etc. Accordingly, the center must be provided with functions for writing software into a storing medium and transmitting it. The utilization mode identifying means may be made to identify whether software is sent to the user using a storing medium or via a communication medium and to determine a ciphering mode based on this identification result.
Furthermore, the system according to the present invention may be provided with a relaying device between the center and the user terminal device. This relaying device is provided with a function for transferring software provided from the center using a storing medium or a communication medium further to a single or a plurality of user terminal devices. Specifically, it includes deciphering key generating means, input side utilization mode identifying means, deciphering processing means, ciphering key generating means, output side utilization mode identifying means and ciphering processing means.
The deciphering key generating means is provided with a function for generating a deciphering key used to decipher software supplied from the center.
The input side utilization mode identifying means is provided with a function for identifying the ciphering mode of software supplied from the center.
The deciphering processing means is for deciphering software based on a deciphering key generated by the deciphering key generating means and a mode identified by the input side utilization mode identifying means.
The ciphering key generating means is provided with a function for generating a ciphering key used to cipher deciphering software.
The output side utilization mode identifying means is for determining a ciphering mode based on the form of software provision.
The ciphering processing means is provided with a function for ciphering software based on a ciphering key and a mode.
The user terminal device according to the present invention will be described hereinbelow.
The user terminal device includes an input device, charging information processing means, deciphering key generating means, utilization mode identifying means and deciphering processing means.
The input device is for inputting software the user wants, and it may be a driving device for reading software from a storing medium or it may be a communication device for receiving software data sent via a communication medium, for example.
The charging information processing means is provided with a function for identifying whether or not to give permission to software deciphering by consulting a user's charging balance when the software is input. Specifically, it includes a charging table for registering the amount of money the user can use and a control part for identifying whether the balance is over a specified value or not (or not "0") by consulting this charging table and giving permission to deciphering of the software if it is found to be over the specified value (not "0").
The deciphering key generating means is provided with a function for generating deciphering key used to deciphering software. Specifically, deciphering keys are generated based on the software IDs or titles of pieces of software.
The utilization mode identifying means is provided with a function for identifying the mode of input software.
The deciphering processing means is provided with a function for deciphering software based on a deciphering key generated by the deciphering key generating means and a mode identified by the utilization mode identifying means only when the charging information processing means gives permission to deciphering of the software.
At the software delivery system according to the present invention, the center ciphers the software the user wanted by and provides it to the user. That is, the center generates ciphering keys based on the software IDs or the titles of pieces of software and determines ciphering modes based on the data structures of pieces of software. Also, based on ciphering keys and modes it ciphers software.
Software ciphered at the center is provided to the user terminal device through storing media or communication media.
The user terminal device, when software is provided from the center, will consult the user charging balance and give permission to deciphering of the software if the balance is over the specified value (not "0"). Then, it will carry out subtraction from the user charging balance for each title of permitted software. Next, the user terminal device will generate a deciphering key based on the software ID or the title of the software and identify the mode of this software. It will decipher the software based on the deciphering key and the mode and output it to such output devices as a display, a speaker or the like.
According to the present invention, irrespective of forms for providing software, be it communication media or other media, it will be possible to uniformly manage software distribution. Further, by making it possible to change providing forms setting a relaying device, a software distribution in an optimal form will be allowed.
FIG. 1 is a view showing the principle(1) of the present invention.
FIG. 2 is a view showing the principle(2) of the present invention.
FIG. 3 is a block diagram showing the hardware construction of a center, a relaying device and a user terminal device at the embodiment according to the present invention.
FIGS. 4A, 4B, 4C and 4D are views showing DES modes.
FIG. 5 is a view showing the detail of DES.
FIG. 6 is a flow chart showing input and output timings of DES.
FIG. 7 is a view showing software provision routes according to the present invention.
FIG. 8 is a table showing a mode conversion at each provision route.
FIGS. 9A, 9B and 9C are views showing concepts of mode conversion at a relaying device at the embodiment.
DESCRIPTION OF THE PREFERRED EMBODIMENT
Prior to description of the preferred embodiment, a basic construction according to the present invention will be described with reference to FIGS. 1 and 2.
First, a software delivery system according to the present invention is constructed by a center 91 and a user terminal device 92.
Then, the center 91 is provided with a function for ciphering the software the user wants. The center includes ciphering key generating means 91a, utilization mode identifying means 91c and ciphering processing means 91b.
The ciphering key generating means 91a is provided with a function for generating ciphering keys used to cipher software.
The utilization mode identifying means 91c is provided with a function for determining ciphering modes in accordance with the forms of software provisions.
The ciphering processing means 91b is provided with a function for ciphering software based on ciphering key information and modes.
The user terminal device 92 is provided with a function for deciphering software provided from the center 91. Specifically, it includes charging information processing means 92a, deciphering key generating means 92b, utilization mode identifying means 92c and deciphering processing means 92d.
The charging information processing means 92a includes a charging table 8 (charging information storing means) registering the amount of money the user can use and a control part 921 for identifying whether a balance value on the charging table 8 is over a specified value or not at the time of software provision and giving permission to deciphering of the software if it is over the specified value.
Further, the control part 921 is provided with a function for executing charging for each title of software given deciphering permission. Specifically, it detects the title of software and makes subtraction from a balance on the charging table 8 whenever deciphering of the title is given permission.
The deciphering key generating means 92d is provided with a function for generating deciphering keys used to decipher software.
The utilization mode identifying means 92c is provided with a function for identifying the mode of software provided from the center 91.
Further, the deciphering processing means 92d is for deciphering software based on deciphering keys generated by the deciphering key generating means 92b and modes identified by the utilization mode identifying means 92c only when the charging information processing means 92a.
Still further, the ciphering key generating means 91a and the deciphering key generating means 92b may be made to detect information on software ID specifying each individual software, titles or the like, and then generate ciphering keys and deciphering keys based on these bits of information.
As for a method of providing software from the center 91 to the user terminal device 92, there exist the one of providing it by storing software in a storing medium 93 of CD-ROM, MO, etc., the one through a communication medium 94 of communication lines, etc., and others. Accordingly, the center 91 must be provided with functions for writing software into the storing medium 93 and transmitting it. Then, the utilization mode identifying means 91c may be made to identify whether software will be provided to the user by means of the storing medium 93 or via the communication medium 94 and determine a ciphering mode based on this identification result.
Furthermore, the system according to the present invention may be provided with a relaying device 95 as shown in FIG. 2 between the center 91 and the user terminal device 92. This relaying device 95 is provided with a function for further transferring the software provided from the center 91 using the storing medium 93 or the communication medium 94 to a single or a plurality of user terminal devices 92. Specifically, the relaying device 95 includes deciphering key generating means 95a, input side utilization mode identifying means 95c, deciphering processing means 95b, ciphering key generating means 95d, output side utilization mode identifying means 95e and ciphering processing means 95f.
The deciphering key generating means 95c is provided with a function for generating deciphering keys used to decipher software supplied from the center 91.
The input side utilization mode identifying means 95c is provided with a function for identifying ciphering modes of software supplied from the center 91.
The deciphering processing means 95b is for deciphering software based on deciphering keys generated by the deciphering key generating means 95a and modes identified by the input side utilization mode identifying means 95c.
The ciphering key generating means 95d is provided with a function for generating ciphering keys based on ciphering decipher software.
The output side utilization mode identifying means 95e is for determining ciphering modes based on the forms of software provisions.
The ciphering means 95f is provided with a function for ciphering software based on ciphering keys and modes.
The user terminal device 92 according to the present invention will be described hereinbelow.
The user terminal device 92 according to the present invention includes an input device 92e, charging information processing means 92a, deciphering key generating means 92b, utilization mode identifying means 92c and deciphering processing means 92d.
The input device 92e is for inputting the software the user wants, and it may a driving device for reading software from the storing medium 93 or a communication device for receiving software data transmitted via the communication medium 94.
The charging information processing means 92a is provided with a function for identifying whether or not to give permission to software deciphering by consulting the user charging balance. Specifically, it includes a charging table 8 registering the amount of money the user can use and a control part 921 for identifying whether a balance is over a specified value (or not "0") consulting this charging table 8 and giving permission to software deciphering if it is over the specified value (not "0").
The deciphering key generating means 92b is provided with a function for generating deciphering keys used to decipher software. Specifically, it generates deciphering keys based on software IDs, titles of software, etc.
The utilization mode identifying means 92c is provided with a function for identifying modes of input software.
The deciphering processing means 92d is provided with a function for deciphering software based on deciphering keys generated by the deciphering key generating means 92b and modes identified by the utilization mode identifying means 92c only when the charging information processing means 92a gives permission to software deciphering.
At the software delivery system according to the present invention, the center 91 ciphers the software the user wants and provides it thereto. That is, the center 91 generates ciphering keys based on software IDs, titles, etc., of software and determines ciphering modes based on data structures, etc., of software. Then, based on ciphering keys and modes it ciphers software.
The software thus ciphered at the center is provided to the user terminal device through the storing medium 93 or the communication medium 94.
The user terminal device 92, when the software is provided from the center 91, will consult the charging balance of the user and give permission to deciphering of the software if it identifies that the balance is over the specified value (not "0"). Then, a subtraction will be made from the user's charging balance for each title of software given permission for deciphering. Then, the user terminal device 92 will generate deciphering keys based on software IDs or titles of software and identify modes for the software. The user terminal device 92 will decipher the software based on deciphering keys and modes and output it to such output devices as a display, a speaker or the like.
The preferred embodiment will be described more in detail hereinbelow.
According to the present embodiment, the center 91, the relaying device 95 and the user terminal device 92 can be realized by almost similar hardware constructions.
FIG. 3 is a block diagram showing the internal functional construction of the user terminal device 92 as one such example.
In this Figure, a switch 57(SW1) functions as an input interface as well, and is used to input software information through such various providing routes as a communication line 51, a CD-ROM 52, MO, IC-card(PCMCIA type), DVD or the like. Also, by this switch 57 (SW1), reading and writing of software information into an optical magnetic disk 58 are allowed with an optical magnetic disk driving device (not shown in the Figure).
On a part next the switch 57(SW1), a receiver 79 as a signal processing means, an MO converter 59 and a CD/MO demodulator 60 are arranged. The receiver 79 is for transforming software information provided as a received signal via the communication line 51 into a data form processable by the device while the MO converter 59 is modulating means for writing into the optical magnetic disk 58. The CD/MO demodulator 60 is for demodulating data read from the CD-ROM 52 or the optical magnetic disk 58, which is controlled by the control circuit.
A switch 61 (SW2) is for selectively outputting data output from the respective signal processing means described previously to various error processing means. In the case of writing into the optical magnetic disk 58, transfer of data in a direction reverse to the error processing means the signal processing means is also controlled.
The error processing means is divided into a communication system error processing part 62, an optical magnetic disk error processing part 62 (62a, 62b) and a magnetic disk/CD system error processing part 63.
The optical magnetic disk system error processing part 62 includes an error check code generating part 62a and an error check code correcting part 62b, and the former will be made to function when writing into the optical magnetic disk 58 is carried out while the latter will be made to work when reading the optical magnetic disk is carried out. At the magnetic disk/CD system error processing part 63, error check code correction, bit rearraying, etc., are executed.
On a part following the error processing means, a switch 64(SW3) is arranged. This switch 64(SW3) is provided with a function for controlling routes so that software information processed at the signal processing means and the error processing means can be output to a software control part 3 on a stage next to it, or to a later mentioned switch 65(SW4), or an output from the error check code correcting part 62b can be returned to the error check code generating part 62a.
(WRITING FROM CD-ROM->OPTICAL MAGNETIC DISK)
A procedure for writing ciphered software information read from the CD-ROM 52 into the optical magnetic disk 58 by controlling the switch 64(SW3) will be described hereinbelow.
First, data read from the CD-ROM 52 is input to the CD/MO demodulator 60 with the route changed by the switch 57(SW1). The data demodulated here will be sent to the magnetic disk/CD system error processing part 63 with the route changed by the switch 61 (SW2). The data for which error check code correction and bit rearraying are carried here will be sent to the error check code generating part 62a with the route changed by the switch 64 (SW3), and an error check code corresponding to the optical magnetic disk will be added thereto. Then, this data will be sent to the MO modulator 59 with the route changed by the switch 61 (SW2), transformed into a data form to be written into the optical magnetic disk 58, and written thereinto by the switch 57 (SW1).
(CONSTRUCTION OF THE SOFTWARE CONTROL PART)
The software control part 3 is constructed in a module structure made of an IC card or a board, etc., including on its center DES as a deciphering part 7 having an input buffer 21 and an output buffer 24. For DES, "46 DATA ENCRYPTION STANDARD NIST" by FIP'S PUB, INC., may be used.
Key information is given from the outside to the DES, and based on this key information the DES is made to function and decipher ciphered information. According to the present embodiment, the DES is provided with a mode identifying part 18(MODE) having a function for selecting out of a plurality of DES modes the ones most suited to data forms, etc.
Further, in the case where the present device is used as the center 91 or the relaying device 95, this DES functions not only as a deciphering part 7 (deciphering processing means 95b) but also as a ciphering part (ciphering processing means 95f). Also, at this time, the mode identifying part 18 is made to function as the input side utilization mode identifying means 95c and the output side utilization mode identifying means 95e. The control CPU is made to function as the ciphering key generating means 95d and the deciphering key generating means 95a, as well.
(DESCRIPTION OF THE DES MODE)
Of the DES modes a representative logic will be described hereinbelow. Though the description will center on a deciphering processing, a ciphering processing adopted when the present device is used as the center 9 or the relaying device is similar to the one described hereinbelow.
FIG. 4(a) shows a basic ECB mode, which is a mode for ciphering (or deciphering) an input data string of 64 bit as an output data string of 64 bit by key information 16 of 64 bit at the DES 7.
FIG. 4(b) shows a CBC mode, which is a mode for ciphering (or deciphering) an input data string of 64 bit by a key information 16 of 64 bit at the DES 7, and then returning it again to the DES 7. This is a system by which feedbacking is carried out until inputting of ali data is finished, and then a final result is output, and thus it is suited to data processings for files, etc.
FIG. 4(c) shows an OFB mode suited to communication data for which errors are easily generated, audio data whose one error gives big influence on others, etc.
FIG. 4(d) shows a CFB mode suited to self synchronous type of data.
The mode identifying part 18 reads the best ones of these modes stored in a mode table 20 by analyzing data forms, etc., and sends them to the deciphering part (DES). At the DES 7, based on these selected modes ciphering and deciphering processings are carried out.
(DETAILS OF THE DECIPHERING PART)
FIG. 5 is a block diagram showing the hardware construction of the deciphering part 7.
In this Figure, on the input side a shift register (REG 1) of 64 bit connecting 8 registers of 8 bit is disposed as an input buffer 21, and on a following part a selector se1 is disposed. The selector se1 allows selective inputting of either outputs from a later described DES processing main circuit 25 or those from the shift register (REG1).
On a part following the selector sel a register 23 (REG 2) of 8 bit is disposed, and on a part next to it the DES processing main circuit 25 is disposed. This DES processing main circuit 25 functions as a central DES of the deciphering part 7. That is, in the DES processing main circuit 25 various DES modes are registered as ROM (Read Only Memory) as described referring to FIG. 4, and in accordance with instructions from the control CPU 4 a deciphering processing is carried out by selecting the logic of the optimal DES mode.
The output of the DES processing main circuit 25 is branched to the selector sel and an output register (REG 3) as the output buffer 24. Then, the output of the output register(REG 3) is used as ciphered or deciphered data.
This processing sequence is shown in FIG. 6.
In FIG. 6, the output of the input register (input buffer 21) is given DES processing as an output from the register 23 by the first clock of the next cycle. Then, it will be output from the output register (output buffer 24) by the next clock. At the time of outputting from this output register (output buffer 24), on the input side ciphered data of the next cycle is being fetched from the input register (input buffer 21).
In this way, at the present embodiment, by independently providing the input register (REG 1) as the input buffer 21 and the output register (REG 3) as the output buffer 24 it is possible to continuously carry out inputting of ciphered data and outputting of deciphered data independently. Thus, compared with the conventional DES wherein inputting and outputting are operated cyclically, faster decipher/ciphering processing are allowed.
The DES 7 described above is controlled by the control CPU 4, and to the bus of this control CPU 4 in addition to the DES 7 the charging table 8 constructed by a memory and an interface 72(I/O) are connected.
In the charging table 8 specified balance values are registered, and charging values are subtracted in accordance with the amount and time of deciphering ciphered software data.
When wishing to renew the balance values, by bringing a software management module provided as a card medium to a shop and paying fees the balance values of the charging table 8 will be increased.
In the case where the charging table 8 is not provided within an SD circuit 3, it is necessary to output the charging value information to a floppy disk, etc., and record it. In this case, if the charging value information is registered in such media as a floppy disk and so on in a state allowing the user to read, it is hard to maintain security. Thus, if the user information on the charging value, etc., is output to the outside, the control CPU 4 may be made to cipher such information at the DES 7, and then output it as ciphered data.
It means that the deciphering part(DES) is made to function as a ciphering part when the charging information is output to the outside.
Further, it is needless to say that this charging table 8 may be omitted when the present device is used only as the center 91 or the relaying device 95.
The interface 72(I/O) is connected to a host CPU 10 outside the software control part 3. Also, it is allowed to use the host CPU 10 on a host device side (i.e., software amount-base charging/reproducing device main body) as the control CPU 4.
On the host device side, an interface(IO) is connected to the bus of the host CPU 10, and through this and an outside interface 75 an input device 74 and a modem 73 are connected.
The output of the software control part 3 is output through a switch 65(SW4) to an audio image separating part 66(DE-MUX) which is an information transforming part, an image expanding part 67a, an audio expanding part 76b(MPEG), etc.
For the MPEG, "ISO/IEC CD 13818' 1 to 3" chips may be used.
Image data separated at the audio image separating part 66 (DE-MUX) is expanded at the image expanding part 67a (MPEG) and output to such analog displayers as a TV display or the like as an NTSC signal transformed at an D/A converter 68a.
Likewise, audio data is expanded at an audio expanding part 67b(MPEG) and output to such analog audio equipment as a speaker and so on as an NTSC transformed at a D/A converter 68b. Then, synchronization between images and audio is controlled by a synchronization control part 70(VRC). In addition, when the output of the audio image separating part 66 (DE-MUX) is output to the outside with no changes as digital data, it will be output to digital equipment such as personal computers or the like through an interface 71 (SCSI).
Further, when a viewer (tool for consulting contents) is not needed using the present device as the center 91 or the relaying device 95, parts including the audio image separating part 66 (DE-MUX) and thereafter may be omitted.
(ROUTE FOR PROVIDING SOFTWARE ACCORDING TO THE PRESENT INVENTION)
Referring to FIGS. 7 to 9, modes for providing software according to the present invention will be described.
In FIG. 7, as forms of providing software from the center 91 to the end user 121, there are first a route via a communication company 122, second a route wherein software is purchased directly from the center 91 and third a route via a shop 123.
As for the first route via the communication company 122, from the center 91 to the communication company 122 there are cases where software is provided via a communication line C1 and by a medium form P1. As a communication line C1, various communication means are conceivable including public lines, optical communication lines, satellite communications, or the like. As a medium form P1, various medium means are conceivable including CD-ROMs, optical magnetic disks, floppy disks, or the like.
On this route, from the communication company 122 to the end user 121, software is provided via a communication line C2.
On this route, when the center provides software to the communication company 122, if it is via the communication line C1, as a ciphering mode the OFB mode as shown in FIG. 4(c) is best suited. Thus, the center 91 generated ciphered data on the OFB mode by its own DES 7 and outputs it to the communication line C1.
Upon receiving the ciphered data via the communication line C1, the communication company 122 will output the ciphered data as it is to the communication line C2 using the relaying device 95 (FIG. 9(a)). A processing at the user terminal device 92 which has received the ciphered software data via the communication line C2 is as described previously.
The case where ciphered software data is transmitted from the center 91 to the communication company by the medium form will be described hereinbelow.
In the case of the medium form P1, the CBC mode as shown in FIG. 4(b) is best suited as a ciphering mode. Thus, the center 91 ciphers software data on the CBC mode at its own DES 7 and stores this data in a medium such as a CD-ROM or the like. Upon receiving the ciphered software data stored in the medium of a CD-ROM, MO, IC-card(PCMCIA type), DVD or the like the communication company 122 will convert the ciphering mode using its own DES 7 in order to supply the ciphered software data to the communication line C2 (see FIG. 9(b)). That is, since the OFB mode is best suited to distributing data to the communication line C2 as a ciphering mode as mentioned previously, after the received ciphered software data is deciphered on the CBC mode first, it is ciphered again on the OFB mode. Upon receiving the software data thus ciphered, the end user 121 will execute deciphering based on the OFB mode selected by the mode identifying part 18(MODE) at the DES 7 of his own user terminal device 92.
The form of distributing software via a shop 123 will be described hereinbelow.
In the case where a route from the center 91 to the shop 123 is connected by a communication line C3 and software is provided from the shop 123 to the end user 121 by a medium form P2, the center 91 sends software data ciphered on the OFB mode at its own DES 7 to a communication line C3.
When receiving this ciphered software data at its own relaying device 95, the shop 123 will store it in a medium (P2) such as an optical magnetic disk, or the like (FIG. 9(c)). Open receiving this data by the medium (P2), the user terminal device 92 of the end user 121 will execute deciphering of the ciphered software data on the OFB mode at its own DES 7.
A list of mode conversions at the relaying device 95 is shown in FIG. 8. That is, the description thus made was limited to the cases of one-way distribution of software. In the case of two-way distribution, however, it is predetermined that the CBC mode must be always used.
Claims (7)
1. A software deliver system comprising:
a center for ciphering specified software in accordance with an attribute of the software and providing the ciphered specified software to a user using a specified form of delivery, said center is provided with:
ciphering key generating means for generating a ciphering key used to cipher the specified software in accordance with the attribute of the specified software;
first utilization mode identifying means for determining a ciphering mode based on the specified form of delivering the ciphered specified software; and
ciphering processing means for ciphering the ciphered specified software in accordance with the ciphering key and the ciphering mode identified by said first utilization mode identifying means; and
a user terminal device provided with:
deciphering key generating means for generating a deciphering key used to decipher the ciphered specified software based on the attribute of the specified software;
second utilization mode identifying means for identifying the ciphering mode of the ciphered specified software; and
deciphering processing means for deciphering the ciphered specified software based on the deciphering key and the ciphering mode identified by said second utilization mode identifying means.
2. The software delivery system according to claim 1, further comprising:
charging information storing means for registering a balance value which the user can use; and
control means for identifying whether the balance value is over a specified purchase value by consulting said charging information storing means, and for giving permission to said deciphering processing means if the balance value is over the specified value and at the same time subtracting the purchase value from the balance of said charging information storing means.
3. The software delivery system according to claim 1, wherein when determining the ciphering mode of the specified software, the utilization mode identifying means of said center refers to the form of delivering the ciphered specified software, identifies whether the specified software will be provided by storing in a storing medium or via communication means and determines the mode on the basis of the result of this identification.
4. The software delivery system according to claim 1, further comprising
a relaying device set between said center and said user terminal device, wherein said relaying device includes:
deciphering key generating means for generating a deciphering key used to decipher software ciphered by said center;
input side utilization mode identifying means for identifying the mode of software supplied from said center;
deciphering processing device for deciphering said software based on said deciphering key and said mode;
ciphering key generating means for generating a ciphering key used to cipher said deciphered data;
output side utilization mode identifying means for determining a ciphering mode based on said form of providing software;
and ciphering processing means for ciphering said software based on said ciphering key and said mode.
5. The software delivery system according to claim 4, wherein the relaying device further comprises:
utilization mode identifying means for identifying the ciphering mode of software provided from said center;
deciphering processing means for deciphering the software information based on said mode;
and ciphering processing means for deciphering said software information on a special mode based on the form of providing software information to said user terminal device.
6. A user terminal device for reproducing ciphered or nonciphered software information provided via a communication link or a medium and billing in accordance with the utilization of the software, comprising:
input switching means for changing input routes depending on a kind of a communication or medium;
software managing means for managing billing based on a deciphering of ciphered software information and a utilization of the software information;
an information converting part for converting deciphered information output from said software managing means into visible and audible data; and
output route switching means for outputting ciphered software information, provided prior to said software managing means, to said software managing means and outputting nonciphered software information to said information converting part.
7. A system for ciphering software and providing it to a user terminal device for which a user pays fees depending on a form of software utilization, the system comprising:
a center device including:
ciphering key generating means for generating a ciphering key used to cipher software which the user wants in accordance with an attribute of the software;
utilization mode identifying means for determining a ciphering mode based on the form of providing said software; and
a ciphering processing part for ciphering said software in accordance with the ciphering key generated said ciphering key generating means and the mode identified by said utilization mode identifying means.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6-219369 | 1994-08-10 | ||
JP21936994A JPH0855164A (en) | 1994-08-10 | 1994-08-10 | Software distribution system, repeating device, and user terminal device |
Publications (1)
Publication Number | Publication Date |
---|---|
US5680453A true US5680453A (en) | 1997-10-21 |
Family
ID=16734342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/510,868 Expired - Lifetime US5680453A (en) | 1994-08-10 | 1995-08-03 | Software delivery system, center device, relaying device and user terminal device |
Country Status (4)
Country | Link |
---|---|
US (1) | US5680453A (en) |
JP (1) | JPH0855164A (en) |
CN (1) | CN1097787C (en) |
DE (1) | DE19529487C2 (en) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999049615A1 (en) * | 1998-03-27 | 1999-09-30 | Microtome, Inc. | Information distribution system |
US6092105A (en) * | 1996-07-12 | 2000-07-18 | Intraware, Inc. | System and method for vending retail software and other sets of information to end users |
US20010025273A1 (en) * | 1997-12-22 | 2001-09-27 | Jay Walker | Parallel data network billing and collection system |
EP1191420A2 (en) * | 2000-09-20 | 2002-03-27 | Fujitsu Limited | Method of distributing software |
US20020062288A1 (en) * | 2000-11-20 | 2002-05-23 | Mitsubishi Denki Kabushiki Kaisha | Server and method for managing use of software run by client |
US20020116622A1 (en) * | 2000-07-24 | 2002-08-22 | Takumi Okaue | Data processing system, data processing method, data processing apparatus, and program providing medium |
US6445795B1 (en) * | 1995-06-30 | 2002-09-03 | Sony Corporation | Data recording method and apparatus, data record medium and data reproducing method and apparatus |
US20020141588A1 (en) * | 2001-03-27 | 2002-10-03 | Rollins Doug L. | Data security for digital data storage |
US20020188466A1 (en) * | 2001-04-18 | 2002-12-12 | Barrette Pierre Philip | Secure digital medical intellectual property (IP) distribution, market applications, and mobile devices |
US20030011761A1 (en) * | 1999-12-23 | 2003-01-16 | Tally Gilat-Bernshtein | Cam reference for inspection of multi-color and contour images |
US20030031153A1 (en) * | 2001-08-07 | 2003-02-13 | Nec Corporation | Program control system, program control method and information control program |
US6633853B2 (en) * | 1995-10-09 | 2003-10-14 | Matsushita Electric Industrial Co., Ltd. | Recordable optical disk encrypted with disk identification and multiple keys |
US6857076B1 (en) | 1999-03-26 | 2005-02-15 | Micron Technology, Inc. | Data security for digital data storage |
US7080051B1 (en) * | 1993-11-04 | 2006-07-18 | Crawford Christopher M | Internet download systems and methods providing software to internet computer users for local execution |
US7096370B1 (en) * | 1999-03-26 | 2006-08-22 | Micron Technology, Inc. | Data security for digital data storage |
US9641331B2 (en) * | 2013-12-17 | 2017-05-02 | Nagravision S.A. | Method for converting a conditional access content and receiver for the implementation for said method |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11212910A (en) * | 1998-01-23 | 1999-08-06 | Hitachi Software Eng Co Ltd | Contents distribution system and its method |
JP3994518B2 (en) * | 1998-05-11 | 2007-10-24 | ソニー株式会社 | Data distribution device and terminal device for data distribution |
KR100320183B1 (en) | 1999-03-17 | 2002-01-10 | 구자홍 | File encryption apparatus for digital data player |
JP2001014406A (en) * | 1999-05-12 | 2001-01-19 | Seecops Co Ltd | Multimedia information, multimedia information providing system based on a recording medium network having multimedia information reproducing program, and its method |
KR100729836B1 (en) * | 1999-10-25 | 2007-06-18 | 소니 가부시끼 가이샤 | Method for managing content data |
JP2007043389A (en) * | 2005-08-02 | 2007-02-15 | Ricoh Co Ltd | Information management method, information management system, server device for information management, and recording medium |
US8250151B2 (en) * | 2005-10-12 | 2012-08-21 | Bloomberg Finance L.P. | System and method for providing secure data transmission |
JP4536091B2 (en) * | 2007-07-30 | 2010-09-01 | 日本放送協会 | Processing apparatus and processing method for conditional access system |
JP4536092B2 (en) * | 2007-07-30 | 2010-09-01 | 日本放送協会 | Conditional reception processing device |
JP2008263644A (en) * | 2008-06-23 | 2008-10-30 | Mitsubishi Corp | Key management method, and key management apparatus |
Citations (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4247106A (en) * | 1978-04-12 | 1981-01-27 | Jerrold Electronics Corporation | System arrangement for distribution and use of video games |
US4439670A (en) * | 1979-11-30 | 1984-03-27 | Electronique Marcel Dassault | Method and device for the checking of the number of access attempts to an electronic store, notably that of an integrated circuit of an object such as a credit card or a buyer's card |
US4446519A (en) * | 1981-05-26 | 1984-05-01 | Corban International, Ltd. | Method and apparatus for providing security for computer software |
JPS5987486A (en) * | 1982-11-10 | 1984-05-21 | 日本電信電話株式会社 | Customerization system |
US4484217A (en) * | 1982-05-11 | 1984-11-20 | Telease, Inc. | Method and system for remote reporting, particularly for pay television billing |
US4558176A (en) * | 1982-09-20 | 1985-12-10 | Arnold Mark G | Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software |
US4590557A (en) * | 1983-09-12 | 1986-05-20 | Pitney Bowes Inc. | Method and apparatus for controlling software configurations in data processing systems |
US4646234A (en) * | 1984-02-29 | 1987-02-24 | Brigham Young University | Anti-piracy system using separate storage and alternate execution of selected proprietary and public portions of computer programs |
US4649510A (en) * | 1982-04-30 | 1987-03-10 | Schmidt Walter E | Methods and apparatus for the protection and control of computer programs |
US4654799A (en) * | 1984-05-18 | 1987-03-31 | Brother Kogyo Kabushiki Kaisha | Software vending system |
US4658093A (en) * | 1983-07-11 | 1987-04-14 | Hellman Martin E | Software distribution system |
US4672554A (en) * | 1983-05-19 | 1987-06-09 | Brother Kogyo Kabushiki Kaisha | Software vending instrument |
US4674055A (en) * | 1983-06-09 | 1987-06-16 | Brother Kogyo Kabushiki Kaisha | Software vending system |
US4740890A (en) * | 1983-12-22 | 1988-04-26 | Software Concepts, Inc. | Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media |
US4780905A (en) * | 1984-11-26 | 1988-10-25 | Nightwatch, Inc. | Computer data encryption system |
US4787050A (en) * | 1985-11-12 | 1988-11-22 | Brother Industries, Ltd. | Apparatus for managing software bending machines |
US4817140A (en) * | 1986-11-05 | 1989-03-28 | International Business Machines Corp. | Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor |
US4816653A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Security file system for a portable data carrier |
US4816654A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Improved security system for a portable data carrier |
US4864516A (en) * | 1986-03-10 | 1989-09-05 | International Business Machines Corporation | Method for implementing an on-line presentation in an information processing system |
US4879645A (en) * | 1984-03-31 | 1989-11-07 | Kabushiki Kaisha Toshiba | Data processing device with high security of stored programs |
US4949257A (en) * | 1987-04-28 | 1990-08-14 | Zvi Orbach | Automated merchandising system for computer software |
US4999806A (en) * | 1987-09-04 | 1991-03-12 | Fred Chernow | Software distribution system |
US5006849A (en) * | 1989-07-26 | 1991-04-09 | Astro, Inc. | Apparatus and method for effecting data compression |
US5008814A (en) * | 1988-08-15 | 1991-04-16 | Network Equipment Technologies, Inc. | Method and apparatus for updating system software for a plurality of data processing units in a communication network |
US5014234A (en) * | 1986-08-25 | 1991-05-07 | Ncr Corporation | System with software usage timer and counter for allowing limited use but preventing continued unauthorized use of protected software |
US5016009A (en) * | 1989-01-13 | 1991-05-14 | Stac, Inc. | Data compression apparatus and method |
US5051822A (en) * | 1989-10-19 | 1991-09-24 | Interactive Television Systems, Inc. | Telephone access video game distribution center |
US5056009A (en) * | 1988-08-03 | 1991-10-08 | Mitsubishi Denki Kabushiki Kaisha | IC memory card incorporating software copy protection |
US5103392A (en) * | 1983-10-05 | 1992-04-07 | Fujitsu Limited | System for storing history of use of programs including user credit data and having access by the proprietor |
US5103476A (en) * | 1990-11-07 | 1992-04-07 | Waite David P | Secure system for activating personal computer software at remote locations |
US5166886A (en) * | 1989-07-31 | 1992-11-24 | Molnar Charles E | System to demonstrate and sell computer programs |
US5181107A (en) * | 1989-10-19 | 1993-01-19 | Interactive Television Systems, Inc. | Telephone access information service distribution system |
US5199066A (en) * | 1989-04-18 | 1993-03-30 | Special Effects Software, Inc. | Method and apparatus for protecting software |
US5214697A (en) * | 1990-03-27 | 1993-05-25 | Kabushiki Kaisha Toshiba | Program execution apparatus for ensuring security of a program |
US5222134A (en) * | 1990-11-07 | 1993-06-22 | Tau Systems Corporation | Secure system for activating personal computer software at remote locations |
JPH05197732A (en) * | 1991-12-16 | 1993-08-06 | Sofuto Banku Kk | Interface for information selling terminal equipment |
US5245330A (en) * | 1990-09-17 | 1993-09-14 | U.S. Philips Corporation | Microprocessor-controlled apparatus with improved disabling |
JPH05298085A (en) * | 1992-04-24 | 1993-11-12 | Fujitsu Ltd | Software storage medium, software reader, and software management system |
US5267171A (en) * | 1990-03-29 | 1993-11-30 | Brother Kogyo Kabushiki Kaisha | Computer software vending machine |
JPH0695871A (en) * | 1992-04-24 | 1994-04-08 | Fujitsu Ltd | Software storage medium, software reader, and software management system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR920701894A (en) * | 1989-04-28 | 1992-08-12 | 브루스 마르쿠스 | Remote control device of computer software and its protection method |
-
1994
- 1994-08-10 JP JP21936994A patent/JPH0855164A/en active Pending
-
1995
- 1995-08-03 US US08/510,868 patent/US5680453A/en not_active Expired - Lifetime
- 1995-08-10 CN CN95115400A patent/CN1097787C/en not_active Expired - Fee Related
- 1995-08-10 DE DE19529487A patent/DE19529487C2/en not_active Expired - Fee Related
Patent Citations (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4247106A (en) * | 1978-04-12 | 1981-01-27 | Jerrold Electronics Corporation | System arrangement for distribution and use of video games |
US4439670A (en) * | 1979-11-30 | 1984-03-27 | Electronique Marcel Dassault | Method and device for the checking of the number of access attempts to an electronic store, notably that of an integrated circuit of an object such as a credit card or a buyer's card |
US4446519A (en) * | 1981-05-26 | 1984-05-01 | Corban International, Ltd. | Method and apparatus for providing security for computer software |
US4649510A (en) * | 1982-04-30 | 1987-03-10 | Schmidt Walter E | Methods and apparatus for the protection and control of computer programs |
US4484217A (en) * | 1982-05-11 | 1984-11-20 | Telease, Inc. | Method and system for remote reporting, particularly for pay television billing |
US4558176A (en) * | 1982-09-20 | 1985-12-10 | Arnold Mark G | Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software |
JPS5987486A (en) * | 1982-11-10 | 1984-05-21 | 日本電信電話株式会社 | Customerization system |
US4672554A (en) * | 1983-05-19 | 1987-06-09 | Brother Kogyo Kabushiki Kaisha | Software vending instrument |
US4674055A (en) * | 1983-06-09 | 1987-06-16 | Brother Kogyo Kabushiki Kaisha | Software vending system |
US4658093A (en) * | 1983-07-11 | 1987-04-14 | Hellman Martin E | Software distribution system |
US4590557A (en) * | 1983-09-12 | 1986-05-20 | Pitney Bowes Inc. | Method and apparatus for controlling software configurations in data processing systems |
US5103392A (en) * | 1983-10-05 | 1992-04-07 | Fujitsu Limited | System for storing history of use of programs including user credit data and having access by the proprietor |
US4740890A (en) * | 1983-12-22 | 1988-04-26 | Software Concepts, Inc. | Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media |
US4646234A (en) * | 1984-02-29 | 1987-02-24 | Brigham Young University | Anti-piracy system using separate storage and alternate execution of selected proprietary and public portions of computer programs |
US4879645A (en) * | 1984-03-31 | 1989-11-07 | Kabushiki Kaisha Toshiba | Data processing device with high security of stored programs |
US4654799A (en) * | 1984-05-18 | 1987-03-31 | Brother Kogyo Kabushiki Kaisha | Software vending system |
US4780905A (en) * | 1984-11-26 | 1988-10-25 | Nightwatch, Inc. | Computer data encryption system |
US4787050A (en) * | 1985-11-12 | 1988-11-22 | Brother Industries, Ltd. | Apparatus for managing software bending machines |
US4864516A (en) * | 1986-03-10 | 1989-09-05 | International Business Machines Corporation | Method for implementing an on-line presentation in an information processing system |
US4816653A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Security file system for a portable data carrier |
US4816654A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Improved security system for a portable data carrier |
US5014234A (en) * | 1986-08-25 | 1991-05-07 | Ncr Corporation | System with software usage timer and counter for allowing limited use but preventing continued unauthorized use of protected software |
US4817140A (en) * | 1986-11-05 | 1989-03-28 | International Business Machines Corp. | Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor |
US4949257A (en) * | 1987-04-28 | 1990-08-14 | Zvi Orbach | Automated merchandising system for computer software |
US4999806A (en) * | 1987-09-04 | 1991-03-12 | Fred Chernow | Software distribution system |
US5056009A (en) * | 1988-08-03 | 1991-10-08 | Mitsubishi Denki Kabushiki Kaisha | IC memory card incorporating software copy protection |
US5008814A (en) * | 1988-08-15 | 1991-04-16 | Network Equipment Technologies, Inc. | Method and apparatus for updating system software for a plurality of data processing units in a communication network |
US5016009A (en) * | 1989-01-13 | 1991-05-14 | Stac, Inc. | Data compression apparatus and method |
US5199066A (en) * | 1989-04-18 | 1993-03-30 | Special Effects Software, Inc. | Method and apparatus for protecting software |
US5006849A (en) * | 1989-07-26 | 1991-04-09 | Astro, Inc. | Apparatus and method for effecting data compression |
US5166886A (en) * | 1989-07-31 | 1992-11-24 | Molnar Charles E | System to demonstrate and sell computer programs |
US5051822A (en) * | 1989-10-19 | 1991-09-24 | Interactive Television Systems, Inc. | Telephone access video game distribution center |
US5181107A (en) * | 1989-10-19 | 1993-01-19 | Interactive Television Systems, Inc. | Telephone access information service distribution system |
US5214697A (en) * | 1990-03-27 | 1993-05-25 | Kabushiki Kaisha Toshiba | Program execution apparatus for ensuring security of a program |
US5267171A (en) * | 1990-03-29 | 1993-11-30 | Brother Kogyo Kabushiki Kaisha | Computer software vending machine |
US5245330A (en) * | 1990-09-17 | 1993-09-14 | U.S. Philips Corporation | Microprocessor-controlled apparatus with improved disabling |
US5103476A (en) * | 1990-11-07 | 1992-04-07 | Waite David P | Secure system for activating personal computer software at remote locations |
US5222134A (en) * | 1990-11-07 | 1993-06-22 | Tau Systems Corporation | Secure system for activating personal computer software at remote locations |
JPH05197732A (en) * | 1991-12-16 | 1993-08-06 | Sofuto Banku Kk | Interface for information selling terminal equipment |
JPH05298085A (en) * | 1992-04-24 | 1993-11-12 | Fujitsu Ltd | Software storage medium, software reader, and software management system |
JPH0695871A (en) * | 1992-04-24 | 1994-04-08 | Fujitsu Ltd | Software storage medium, software reader, and software management system |
Non-Patent Citations (10)
Title |
---|
Japanese Patent Laid Open Publication No. 5 266575, Oct. 15, 1993. * |
Japanese Patent Laid Open Publication No. 5 298085, Nov. 12, 1993. * |
Japanese Patent Laid Open Publication No. 5 89363, Apr. 9, 1993. * |
Japanese Patent Laid Open Publication No. 57 127249, Aug. 7, 1982 (equivalent to Japanese Patent Publication No. 61 22815). * |
Japanese Patent Laid Open Publication No. 6 95871, Apr. 8, 1994. * |
Japanese Patent Laid-Open Publication No. 5-266575, Oct. 15, 1993. |
Japanese Patent Laid-Open Publication No. 5-298085, Nov. 12, 1993. |
Japanese Patent Laid-Open Publication No. 57-127249, Aug. 7, 1982 (equivalent to Japanese Patent Publication No. 61-22815). |
Japanese Patent Laid-Open Publication No. 5-89363, Apr. 9, 1993. |
Japanese Patent Laid-Open Publication No. 6-95871, Apr. 8, 1994. |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7080051B1 (en) * | 1993-11-04 | 2006-07-18 | Crawford Christopher M | Internet download systems and methods providing software to internet computer users for local execution |
US7380132B2 (en) | 1995-06-30 | 2008-05-27 | Sony Corporation | Data recording method and apparatus, data record medium and data reproducing method and apparatus |
US6944297B2 (en) | 1995-06-30 | 2005-09-13 | Sony Corporation | Method and apparatus for reproducing ciphered data |
US6445795B1 (en) * | 1995-06-30 | 2002-09-03 | Sony Corporation | Data recording method and apparatus, data record medium and data reproducing method and apparatus |
US6633853B2 (en) * | 1995-10-09 | 2003-10-14 | Matsushita Electric Industrial Co., Ltd. | Recordable optical disk encrypted with disk identification and multiple keys |
US6092105A (en) * | 1996-07-12 | 2000-07-18 | Intraware, Inc. | System and method for vending retail software and other sets of information to end users |
US20010025273A1 (en) * | 1997-12-22 | 2001-09-27 | Jay Walker | Parallel data network billing and collection system |
WO1999049615A1 (en) * | 1998-03-27 | 1999-09-30 | Microtome, Inc. | Information distribution system |
US7096370B1 (en) * | 1999-03-26 | 2006-08-22 | Micron Technology, Inc. | Data security for digital data storage |
US7861094B2 (en) | 1999-03-26 | 2010-12-28 | Round Rock Research, Llc | Data security for digital data storage |
US7979720B2 (en) | 1999-03-26 | 2011-07-12 | Round Rock Research, Llc | Data security for digital data storage |
US9117095B2 (en) | 1999-03-26 | 2015-08-25 | Round Rock Research Llc | Data security for digital data storage |
US8533491B2 (en) | 1999-03-26 | 2013-09-10 | Round Rock Research, Llc | Data security for digital data storage |
US6857076B1 (en) | 1999-03-26 | 2005-02-15 | Micron Technology, Inc. | Data security for digital data storage |
US20050114659A1 (en) * | 1999-03-26 | 2005-05-26 | Klein Dean A. | Data security for digital data storage |
US20070067647A1 (en) * | 1999-03-26 | 2007-03-22 | Klein Dean A | Data security for digital data storage |
US7114082B2 (en) | 1999-03-26 | 2006-09-26 | Micron Technology Inc. | Data security for digital data storage |
US20070016805A1 (en) * | 1999-03-26 | 2007-01-18 | Klein Dean A | Data security for digital data storage |
US20030011761A1 (en) * | 1999-12-23 | 2003-01-16 | Tally Gilat-Bernshtein | Cam reference for inspection of multi-color and contour images |
US20070223804A1 (en) * | 1999-12-23 | 2007-09-27 | Orbotech Ltd | CAM reference for inspection of contour images |
US7218771B2 (en) * | 1999-12-23 | 2007-05-15 | Orbotech, Ltd. | Cam reference for inspection of contour images |
SG108264A1 (en) * | 2000-07-24 | 2005-01-28 | Sony Corp | Data processing system, data processing method, data processing apparatus and program providing medium |
US7131010B2 (en) | 2000-07-24 | 2006-10-31 | Sony Corporation | Data processing system, data processing method, data processing apparatus, and program providing medium |
US20020116622A1 (en) * | 2000-07-24 | 2002-08-22 | Takumi Okaue | Data processing system, data processing method, data processing apparatus, and program providing medium |
EP1191420A3 (en) * | 2000-09-20 | 2002-08-14 | Fujitsu Limited | Method of distributing software |
EP1191420A2 (en) * | 2000-09-20 | 2002-03-27 | Fujitsu Limited | Method of distributing software |
US20020062288A1 (en) * | 2000-11-20 | 2002-05-23 | Mitsubishi Denki Kabushiki Kaisha | Server and method for managing use of software run by client |
US7526795B2 (en) | 2001-03-27 | 2009-04-28 | Micron Technology, Inc. | Data security for digital data storage |
US7540018B2 (en) | 2001-03-27 | 2009-05-26 | Micron Technology, Inc. | Data security for digital data storage |
US7594257B2 (en) | 2001-03-27 | 2009-09-22 | Micron Technology, Inc. | Data security for digital data storage |
US20100005287A1 (en) * | 2001-03-27 | 2010-01-07 | Micron Technology, Inc. | Data security for digital data storage |
US20070014412A1 (en) * | 2001-03-27 | 2007-01-18 | Rollins Doug L | Data security for digital data storage |
US8191159B2 (en) | 2001-03-27 | 2012-05-29 | Micron Technology, Inc | Data security for digital data storage |
US9003177B2 (en) | 2001-03-27 | 2015-04-07 | Micron Technology, Inc. | Data security for digital data storage |
US20020141588A1 (en) * | 2001-03-27 | 2002-10-03 | Rollins Doug L. | Data security for digital data storage |
US20020188466A1 (en) * | 2001-04-18 | 2002-12-12 | Barrette Pierre Philip | Secure digital medical intellectual property (IP) distribution, market applications, and mobile devices |
US7610625B2 (en) | 2001-08-07 | 2009-10-27 | Nec Corporation | Program control system, program control method and information control program |
US20030031153A1 (en) * | 2001-08-07 | 2003-02-13 | Nec Corporation | Program control system, program control method and information control program |
US9641331B2 (en) * | 2013-12-17 | 2017-05-02 | Nagravision S.A. | Method for converting a conditional access content and receiver for the implementation for said method |
Also Published As
Publication number | Publication date |
---|---|
CN1140280A (en) | 1997-01-15 |
JPH0855164A (en) | 1996-02-27 |
DE19529487A1 (en) | 1996-02-15 |
CN1097787C (en) | 2003-01-01 |
DE19529487C2 (en) | 1999-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5680453A (en) | Software delivery system, center device, relaying device and user terminal device | |
USRE40547E1 (en) | Software reproduction apparatus | |
US5832083A (en) | Method and device for utilizing data content | |
US5761651A (en) | Software charging system and software data utilization permitting device | |
CN100535919C (en) | Content reproducing device and content reproducing method | |
EP0702286B1 (en) | Data management module and data reproduction management system | |
US8151356B2 (en) | Method of transmitting and reproducing content processed by various DRM systems | |
US8280818B2 (en) | License source component, license destination component, and method thereof | |
CN101015165B (en) | Content managing method and device | |
US6128605A (en) | Apparatus for data copyright management system | |
US20060059105A1 (en) | Move component, program, and move method | |
US6889327B1 (en) | Copyrighted digital data management method, contents provider, user terminal, and data recording medium | |
US20060069652A1 (en) | Copy component, program and method thereof | |
US20050232595A1 (en) | Information signal recording device having accounting function, and accounting terminal device | |
CN101002421A (en) | Digital license sharing system and method | |
JPH0877263A (en) | Software processor | |
US20060059101A1 (en) | Reproduction component, program and method thereof | |
EP0720166B1 (en) | Data reproducing device | |
US20060059103A1 (en) | Return component, program, and return component method | |
US20060059104A1 (en) | Rent component, program, and rent component method | |
EP0913975A2 (en) | Data transmission method, data transmission system and program recording medium | |
JP2000195159A (en) | Copying control system of information signals | |
EP2330572B1 (en) | Large capacity data sales mediation system, user terminal and server | |
US7562231B2 (en) | Apparatus and system for recording and reproducing contents | |
CN100490433C (en) | Method for transmitting digital data representing content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FUJITSU LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:AKIYAMA, RYOTA;YOSHIOKA, MAKOTO;REEL/FRAME:007620/0621 Effective date: 19950724 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FPAY | Fee payment |
Year of fee payment: 12 |