`
`[191
`
`[11] Patent Number:
`
`5,761,651
`
`Hasebe et a1.
`
`[45] Date of Patent:
`
`Jun. 2, 1998
`
`USOOS761651A
`
`{54] SOFTWARE CHARGING SYSTEM AND
`SOFTWARE DATA UTILIZATION
`PERMITTING DEVICE
`
`[75]
`
`Inventors: Takay'uki Hasebe: Naoya Torii;
`Noboru lwayama: Masahiko
`Takenaka: Masahiro Matsuda. all of
`Kawasaki. Japan
`
`[73] Assignee: Fujitsu Limited. Kawasaki. Japan
`
`[21] Appl. No.: 490,049
`
`[22] Filed:
`
`Jun. 13, 1995
`
`[30]
`
`Foreign Application Priority Data
`
`Aug. 10, 1994
`
`[IF]
`
`Japan
`
`6-18866'1
`
`Int. Cl.6
`{51}
`.6106]? 17160
`
`[52] U.S. CL.
`7051400705130: 705132
`[58]
`Field ofSearch".....
`...1941215 216.
`
`1941217; 22212: 3641400401. 406. 46401.
`464.1: 38014: 3951230. 232
`
`[5 6]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`..
`
`2731856
`111981 lelIers et a1.
`4.247.106
`2351382
`311984 Basset et al.
`4,439,670
`. 3951491
`511984
`4.446519
`358184
`1111934
`4,484,217
`17812.08
`4.558.176 1211985
`...... 3951700
`4590.557
`511986
`364140! R
`4593376
`611986
`38014 X
`4,646,234
`211987
`...... 38014
`4.649.510
`311987
`.. 3641479
`4,654,799
`311987
`390125
`4,658,093
`411987
`.. 3641479
`4.672.554
`611987
`.. 3641479
`4,674,055
`611987
`.. 38014 X
`4,740,890
`411988
`33014-4
`4,780,905 1011988
`.. 3641479
`4,787,050 1111988
`.. 3641406
`4.796.181
`111989
`. 2351380
`4,816,653
`311989
`2351380
`4,816,654
`311989
`...... 38014
`4,817,140
`311.989
`. 3951153
`......
`'
`4.864516
`911989
`4,879,645
`1111989 Tamada et a1...................... 2351330 X
`
`
`
`.......
`
`4937.063
`4.949257
`4.999.806
`5.006.849
`5.003.314
`5.014234
`5,016,009
`5.05132
`5.056.009
`5.103.392
`5,103,476
`5,166,886
`5.131.707
`5,199,066
`$214,697
`5222.134
`5.245.330
`5,267,171
`5,367,704
`5,386,369
`
`6/1990 Nashuaetal.38014
`311990 chach-
`3641401
`
`371991 Cheruow et a1.
`.
`33074x
`.
`..... 391195
`471991 Baarmanetal.
`
`.371719x
`411991 Mathurm”...
`
`3951186
`571991 mama];
`
`511991 Whiting eta].
`34116?
`358186
`971991 Rhoades.
`1071991 Mizuta
`3937490
`4/1992 Mari
`33014
`471992 Waiteetai
`39074
`1171992 Molnar m1
`3641479
`171993 Rhoades..
`..... 358/86
`311993 Logan
`.. 38014
`571993 Saito ..
`. 93074
`611993 Waite etai
`....... 33014
`911993 Wassink.3401825.34
`[171993 8921152191..
`3641479
`1171994 Hasuo et al.
`..
`3957300
`171995 Christiano
`3641464.01
`
`
`
`
`
`FOREIGN PATENT DOCUMENTS
`
`371932
`57427249
`411993
`5-89363
`1071993
`5-266575
`5299053 1171993
`6-95871
`411994
`
`Japan.
`Japan.
`Japan.
`Japan.
`Japan.
`
`Primary Examiner—Edward R. Cosimano
`Aflome); Agent, or FithStaas & Halsey
`
`[57]
`
`ABSTRACT
`
`A software charging system includes a utilization permitting
`device for giving pennission to use a software storing
`medium storing ciphered programs or data (software); and
`an authorization center capable of communicating with the
`utilization permitting device for setting a utilizable amount.
`totalling utilization amounts and charging a user. The utili—
`zation pemlitling device includes: a utilization permission
`processing part having a clock for obtaining date and time
`data. and having a date and time data storing unit for storing
`obtained date and time data until obtaining next data and
`time data; and a utilization amount managing pan for
`calculating a software utilization amount of an end user. A
`software utilization amount is managed based on the number
`of days at the utilization permission processing part.
`
`24 Claims, 11 Drawing Sheets
`
`,—‘
`M—oatsr UTI'. 21mm
`05017651111
`
`1' '
`
`-3007
`
`.
`
`301212
`
`, . 9093
`
`PE!!!) 504‘ 1WAH€ HEQLIE'S‘EB FOR .
`unnamuu III )HIEIHFofitc-i-nm i
`
`STUNNGREGIST‘ER
`I
`I
`3004
`I :7an DA'E :Nromumlm Hon 6:00: I '
`5119691517 :onamON
`3005
`EMU
`:DATA MES «m 51'IBFY COMB! new
`
`
`lenrm :JTIL'mm SAME
`|__ __._._'J
`4006
`lung“.mpsamm7:
`ON on mm" cum‘lr?
`cove-no. 99m
`F
`77--rat :5 awe
`,. 3007
`
`i__
`1““ 'Smwm‘ -u-wzmnonenumo
`
`REM’W BRANT I-m
`l
`551' C a ii I'\ FORM.“ (1L "F919 sac» Ct'tr. N DATA '
`l m
`l Inroamhw 570nm. 1155:5129
`
`
`3010
`
`lUl-t 17mm.- Plifluli ’1 i: '
`
`1
`
`SAMSUNG-1027
`
`1
`
`SAMSUNG-1027
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 1 of 11
`
`5,761,651
`
`Nam
`
`won
`
`mom
`
`
`
`.CZDGz_mo._.wZO_._.<Emsz_<35
`
`E56528EEozammuoma
`
` ZO_H<N_.__._.D-m0_>m0OZ_._|_.=2mwaZOF<N3FD
`
`
`
`
`£3855933IIzOFfijF:
`
`
`
`wE<EmOwwZHOmHOmn.
`
`P.6."—
`
`ZOEQNEOIHDd
`
`mwkzmu
`
`_m
`
`2
`
`
`
`
`
`
`
`U.S. Patent
`
`1lof.
`
`5,761,651
`
`_.xm5:20:B.1.-9oq535%ml»2022%“PJ50:5mmmmath2“x52
`
`2.!
`
`
`
`
`
` moSwoOzitfimwa20:53:.3N.0.“—
`
`
`
`
`
`
`
`
`mwxqmmmamama:
`
`
`
`
`
`.Ewoouuo293805....mommm58E1Qm>wamEZDED,gamma:58BEE”...zocummmoo5530528%”$25sz
`
`
`
`
`
`o39;E_m2I.mazwE05:\mh\20.552oNSonEEE.HI1
`
`.228.1
`
`
`
`Ewan—02__Fl.
`
`
`
`5m
`
`3
`
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 3 Of 11
`
`5,761,651
`
`FIG. 3
`
`REOUEST UTILIZATION
`PERMISSION
`
`1/“ 3001
`
`
`
`READ SOFTWARE REQUESTED FOR _/
`UTILIZATION IN DATE INFORAMTION
`STORING REGISTER
`
`
`READ DATE INFORAMTION FFIOM CLOCK '
`
`
`
`_/
`
`3002
`
`- 3003
`
`3004
`
`I THERE IS NO BALANCE
`
`3007
`
`DATA SATISFY CONDITION
`-/ .
`--— -- — -—-
`COMPARE
`DATA DOES NOT SATISFY CONDITION
`3005
`
`
`
`UTILIZATION PERMITTED
`CHECK UTILIZATION BALANCE
`
`
`ON UTILIZATION QUANTITY
`
`CONTROL PART
`
`THERE IS BALANCE
`UTILIZATION NOT PERMITTED
`
`
`RENEW BALANCE
`
`3003
`
`3009
`
`
`
`
`
`
`
`SET DATE INFORMATION READ FROM CLOCK IN DATA
`INFORMATION STORING REGISTER
`
`UTILIZATION PERMITTED
`
`
`
`/ 3010
`
`
`
`RECEIVE MESSAGE FOR SETTING CENTER TIME
`
`
`
`_/ 4001
`
`USING DEVICE KEY DECODE MESSAGE _/ 4002
`AND MAKE SIGNATURE
`
`CONFIRM DECODING OF MESSAGE
`AND SIGNATURE
`
`CONFIRM SERIAL NUMBER
`
`
`
`
`
`
`SET CLOCK ON TIME SPECIFIED
`BY MESSAGE
`
`/- 4006
`
`CLOCK NOT SET
`
`4
`
`
`
`US. Patent
`
`Jun. 2, 1993
`
`Sheet 4 of 11
`
`5,761,651
`
`FIG. 5
`
`307
`I
`
`TIME SETTING COMMAND SERIAL NUMBEFI INFORMATION
`
`__._..__.____ __._—____.._.._..._._._.__]
`
`AUTHORIZATION
`
`CENTEFI
`
`_. .
`
`SOFTWARE
`
`UTILIZATION
`PERMITTING DEVICE
`
`UTILIZATION
`PERMISSION
`PFIOC ESSING PART
`
`UILIZATION DUALTITY
`CONTROL PAFIT
`
`~/ 308
`
`DATE INFORMATION STORING REGISTER
`
`KEY
`
`SERIAL NUMBER
`
`306
`
`I I I5
`
`L-
`
`CREDIT BALANCE REGISTER
`
`5
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 5 of 11
`
`5,761,651
`
`31
`
`CENTER
`
`FIG. 6
`
`SETIREADIRENEW
`
`DES?
`
`
`
`/
`
`605
`
`DISTRIBUTED WITH CONTENTS
`
`301
`I
`I
`I
`]
`
`
`
`
`PROTECTWE SOFTWARE
`602
`
`
`
`
`
`
`
`
`
`UTILIZATION OUALKLITY
`CONTROLPAHT
` 601
`_
`SECRET KEY
`305
`
`CREDIT BALANCE
`
`308
`
`UTILIZATION
`FERMITTING F'AFIT
`UTILIZATION KEY I
`
`UTILIZATION LOG
`CONTROL PART
`UTILIZATION KEY I
`
`UTILIZATION KEY 2
`
`UTILIZATION KE‘Ir 2
`
`603
`
`604
`
`304
`
`UTILIZATION KEY N
`
`UTILIZATION KEY N
`
`—J
`
`
`6
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 6 of 11
`
`5,761,651
`
`FIG. 7
`
`SET CREDIT. RECEIVE RENEWAL MESSAGE
`
`"
`
`7001
`
`,w7002
`
`-7003
`
`/ NOT DECODED CORRECTLY
`0R SIGNATURE ERROR
`
`
`
`' "—‘I
`
` 7005
`
`SETTING, RENEWING FAILED
`
`
`
`CHECK SERIAL NUMBER
`
`NOT AGREE
`
`T‘\.
`
`7004
`
`SET. RENEW AND CHECK
`
`/ 7006
`
`DECIDE MESSAGE OR MAKE SIGNATURE BY
`SECRET KEY OF UTILIZATION PERMITTING DEVICE
`
`
`
`
`CONFIRM RESULT OF DECODING MESSAGE
`OR SIGNATURE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SERIAL NUMBER=SERIAL NUMBERH "
`
`
`
`/ 7007
`
`31
`
`CENTER
`
`FIG. 8
`
`SETIREAD
`
`
`PROTECTIVE SOFTWARE
`
`SET. READ. RENEW _.
`
`
`
`
`
`
`REDUESTUTILIZATION
`UTILIZATION
`UTILIZATION
`
`
`
`—‘---———~—-—_— -PERM|SSION
`QUANTITY
`fifigfififls
`
`
`
`
`PROCESSING
`CONTROL
`
`
`UTILIZATION PERMITTED
`
`
`304 '
`
`301 f"
`
`365
`
`7
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 7 of 11
`
`5,761,651
`
` momvowcom
`
`
`
`ExwzfifizuozfiqmwfifiF2548zofimicwmII
`
`
`ZOrquSfiDSo3820352.5zoflfiwzg20:48:;kmmDme
`
`828$EaEa_z___.
`
`
`02$on5::6528ozammoommIIIBCEmma0235
`
`Ingmmddflm.pwm
`
`
`
`mm¢2¢m0wwikowkomm
`
`m.0.”—
`
`_.m
`
`mmhzwo
`
`8
`
`
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 3 of 11
`
`5,761,651
`
`CENTER
`
`FIG. 10
`
`UTILIZATION
`PEFIMITTING DEVICE
`
`CLEAR UTILIZATION INTEGRATING METER
`_._.___.___ __-.___ ________..,
`
`USER
`
`
`
`
`
`
`
`REQUEST METER NENEwAI.
`_._.__um m
`
`
`REQUEST METER INFORMATION F
`TRANSFER UTILIZATION QUANTITY ANO
`
`UTILIZATION INTEGRATED VALUE
`
`
`NOTIFY EXPIRATION
`
`h—
`
`a“...
`
`REOUEST PURCHASING
`
`
`
`
`
`
`
`
`
`COUNT UP INTEGRATING
`METER BY UTILIZATION
`
`I
`
`REQUEST UTILIZATION OUANTITY INTEGRATED VALUE
`-—I-r
`
`TRANSFER UTILIZATION OUANTITY INTEGRATED VALUE
`
`«III—m
`
`SET PURCHASING ON UTILIZATION QUANTITY CONTROL PART
`——_.____—.*
`
`FIG. 11
`
`CENTER
`
`UTILIZATION
`PERMITTING DEVICE
`
`CLEAR UTILIZATION INTEGRATING METER
`——-—-———-_-_-..
`
`USER
`
`COUNT UP INTEGRATING
`METER BY UTILIZATION
`
`I
`REQUEST PURCHASING
`an"
`REQUEST UTILIZATION QUANTITY INTEGRATED VALUE
`_._...—-—————r-——-——_—..—....
`
`+
`
`...._A.-— . . ._... .._. . .
`
`
`TRANSFER UTILIZATION QUANTITY INTEGRATED VALUE
`i— #_..
`
`
`
`
`
`
`SET PURCHASE ON UTILIZATION QUANTITY CONTROL PART
`— —-—————
`——-—~——-—
`
`9
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 9 of 11
`
`5,761,651
`
`FIG. 12
`
`CENTER
`
`UTILIZATION
`PERMITTING DEVICE
`
`CLEAR UTILIZATION INTEGRATING METER,
`
`..._..__...._.._..——___....__—.—.—
`.
`. __ _._h
`SET THRESHOLD VALUE
`
`I
`COUNT UP INTEGRATING
`METER BY ULITLIZATEON
`
`PURCHASING OPERATION
`BY INTERNAL PROCESSING
`
`FIG. 13 304
`
`305
`
`PROTECTIVE
`SOFTWARE
`
`
`
`..._
`
`502
`
`UTILIZATION
`I
`PERM TTING PART
`
`UTILIZATION QUANTITY
`CONTROL PART
`
`
`
`
`
`CREDIT BALANCE l DES
`
`‘ 30‘
`
`‘- 506
`
`AUTHORIZATION
`
`I”
`3.2
`
`
`SET UTILIZATION KEY
`SET CREDIT
`
`
`
`DES?
`
`10
`
`10
`
`
`
`US. Patent
`
`Jun. 2, 1993
`
`Sheet 10 of 11
`
`5,761,651
`
`FIG. 14
`
`
`
`SET CREDIT. RECEIVE RENEWAL MESSAGE
`
`1101
`
`DECODE MESSAGE OR MAKE SIGNATURE
`BY SECRET KEY OF UTILIZATION PERMITTING DEVICE
`
`1102
`
`
`
`
`
`
`
`
`CONFIRM RESULT OF DECODING MESSAGE
`OR CHECK S1GNATURE
`
`
`
`NOT DECODED COHRECTLY
`OR SIGNATURE ERROR
`
`CHECK SERIAL NUMBER
`
`SET. RENEW AND CHECK
`
`
`
`
`
`’“-1103
` 1104
`
`
`
`
`
`
`NOT AGREE
`
`1105
`
`SET. NENEWAL FAILED
`
`
`
`
`
`
`SERIAL NUMBER=SERIAL NUMBERH
`
`
`
`1106
`
`11
`
`11
`
`
`
`US. Patent
`
`Jun. 2, 1998
`
`Sheet 11 of 11
`
`5,761,651
`
`31
`
`CENTER
`
`I
`
`FIG. 15
`
`
`SET, READ, RENEW
`
`pquTEc'g-IVE SOFTWARE
`
`UTILIZATION
`
`REQUEST UTILIZATION
`
`UTILIZATION QUANTITY PERMITTING PART
`
`CONTROL PART
`
`301
`
`UTILIZATION PERMITTED,
`
`602
`
`"
`
`m CREDIT BALANCE N
`
` ENCODING UTILIZATION KEY .-
`
`505
`
`DES?
`
`12
`
`12
`
`
`
`1
`SOFTWARE CHARGING SYSTEM AND
`SOFFWARE DATA UTILIZATION
`PERMITI'ING DEVICE
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates to a technology effective for
`and applicable to a system for distributing software includ-
`ing computer programs. video works. etc.. in particular such
`softwares as digitized data or the like.
`With the advances in such large size storage media as
`CD-ROM or the like and in such high speed communication
`technologies as B-ISDN or the like. it can be expected that
`by using these devices that images. sounds and needless to
`say computer programs will be disttibuted as digital data.
`That is. the situation has already emerged wherein video
`works. which conventionally used to be sold in video tapes.
`are sold in (ID-ROM or games using the interactive char-
`acteristic of CDROM{bi—directional characteristic) and are
`distributed to the market.
`Further. the same is true for communication lines. Video
`works as mentioned above are now sent to users via com—
`munication lines.
`
`As it is very easy to copy these kinds of digital data on the
`other media and there is no possibility of decline in quality
`due to copying which often occurs in the case of analog data.
`Therefore. duplication of the same data is allowed creating
`a very high possibility that the profits (If the manufacturers
`will sullen. In other words. as long as large capacity optical
`magnetic disks and magnetic disk devices are provided. the
`content of CD-ROM can easily be copied with only mini-
`mum knowledge of DOS commands.
`Under these drcumstancm. it is often the case that renting
`of such digital data media is prohibited by the manufacturers
`because suflicient security checking is impossible.
`However. as this kind of software is still very expensive.
`more often than not the end users hesitate to buy such
`software until they can make sure that it really is what they
`want or that it can be used for the hardware they own.
`Against such a background. new software distributing sys—
`tems have started to be provided. wherein a number of
`softwares with functional limits attached are sold inexpen»
`sively stored in (ID-ROM. When the end users select the
`ones they want from such sofiwares and send fees. codes for
`releasing the functional limits will be reported to them.
`However. none of these distributing systems have proven
`elfective in terms of sufficient utilization of software diar-
`acteristics.
`
`More specifically. as for the system for releasing the
`functional limits mentioned above. as the end users are most
`often required to pay fees in a lump sum. the amount to pay
`is inevitably very high. For example when they want to see
`only one scene of a movie or when they want to use table
`calculation software only for a week. it is very dificult to
`manage fees in accordance with the amount to be used.
`In order to deal with this problem. as disclosed in a patent
`No. 6-1970? in OFFICIAL GAZETTE. a system has been
`provided. wherein utilizable charges are registered in an IC
`card beforehand. The utilizable charges stored in the IC card
`are registered in a system when chargeable software is used
`and subtraction is made from a balance by the system
`whenever the sofiware is used.
`
`5.761.165 l
`
`2
`SUMMARY on THE INVENTION
`
`The present invention includes a utilization permitting
`device for permitting use of software (programs or data)
`protected so as to prevent illegal utilization and an autho-
`rization center for setting utilization balance of the utiliza—
`tion permitting device. wherein the utilization permitting
`device is provided with a clock for obtaining date and time
`data. a date and time data storing unit for storing the
`obtained date and time data until next date and time data is
`obtained. a utilization permission processing part for gen-
`erating utilization permitting signals for utilization requests.
`a utilization amount managing part for calculating the
`amount of utilizing software by end users. and thereby the
`software utilization amount is managed by the utilization
`permitting device based on a number of days.
`By provision of the date and time data storing unit. it will
`be possible to manage the amount-based software charging
`in accordance with the number of days and the end users will
`be allowed to reproduce software at home easily as in the
`case of rental videos. etc.
`
`10
`
`15
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram showing the representative
`function as realized by the present invention.
`FIG. 2 is a block diagram showing the construction of a
`software reproducing device or a utilization permitting
`device according to the present invention.
`FIG. 3 is a flow chart showing a utilization permitting
`procedure of the embodiment I.
`FIG. 4 is a flow chart showing a time comparing and
`adjusting procedure at the embodiment 1.
`FIG. 5 is a block diagram showing a functional construc—
`tion of the embodiment 1.
`
`35
`
`FIG. 6 is a block diagram showing a functional construc-
`tion of the embodiment 3.
`
`FIG. 7 is a flow chart showing a credit setting procedure
`of the embodiment 3.
`
`FIG. Bis a block diagram showing a functional construc-
`tion of the embodiment 4.
`
`45
`
`FIG. 9 is a block diagram showing the example of a
`changed construction of the embodiment 4.
`FIG. 10 is a sequential diagram showing a software
`buying procedure when utilization amount expires of the
`embodiment 4.
`
`FIG. 11 is a sequential diagram showing a processing
`carried out when end users request to buy software in the
`middle of using it of the embodiment 4.
`FIG. 12 is a sequential diagram showing a processing
`carried out when a buying processing is carried out within a
`utilization permitting device at the embodiment 4.
`FIG. 13 is a block diagram showing a functional con-
`struction of the embodiment 2.
`
`55
`
`FIG. 14 is a flow chart showing a credit setting procedure
`of the embodiment 2..
`
`FIG. 15 is a block diagram showing the example of a
`changed construction of the embodiment 2.
`DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`invention is designed. by moving a step
`The present
`further from the previous technologies. to provide a tech-
`nology for realizing in a specific manner a software charging
`based on the amount to be used.
`
`65
`
`to description of the specific preferred
`Prior
`embodiments. the outline of a construction according to the
`present invention will be described with reference to the
`accompanying drawings.
`
`13
`
`13
`
`
`
`5.761.651
`
`3
`As shown in FIG. 1. the present invention includes a
`utilization permitting device(301) for permitting use of
`software(programs or data) protected so as to prevent illegal
`utilization and an authorization center(31) for setting utili—
`zation balance of the utilization permitting device{301).
`wherein the utilization permitting device(301) is provided
`with a clock(302} for obtaining dale and time data. a date
`and time data storing unit(303) for storing the obtained date
`and time data until obtaining next date and time data. a
`utilization permission processing part(304) for generating
`utilization permitting signals for utilization requests. a uti—
`iization amount managing part(305)
`for calculating the
`software utilization amount by end users. and thereby the
`sofiware utilization amount is managed by the utilization
`permitting device based on the number of days.
`According to the present invention. by provision of. for
`example. a date and time data storing unit. it will be made
`possible to manage amount-based software charging
`depending on the number of days and the end users will be
`allowed to reproduce software at home easily as in the case
`of rental videos.
`
`The specific preferred embodiments will be described
`hereinbelow.
`
`FIG. 2 is a block diagram showing the construction of the
`utilization permitting device 301 according to the first
`embodiment of the present invention. The utilization per—
`mitting device 301 is connected to authorization center 31
`and flexible disk 12 by way of interface 11.
`A part(SD CIRCUIT 3) surrounded by broken lines in
`FIG. 2 indicates a software managing module or SD circuit
`3 which substantially composes the utilization permitting
`device 301 according to the present invention. This software
`managing module or SD circuit 3 may be fixed in a board or
`a card form within the utilization permitting device or may
`be an IC card freely attachablyidetachably inserted into the
`card slot(e.g.. PCIA standard card slot) of the utilization
`permitting device.
`In the same Figure. 1 indicates a demodulation circuit and
`a control circuit 1 having a function for demodulating
`MPEG standard image and sound data stored in CD-ROM
`101 and sending them to a decoder 2.
`The decoder 2 is for executing error correction and bit
`rearraying and transferring irnage and sound data of up to 2
`MBlsec. (l MBisec. on the average) to the SD drcuit 3.
`At the software managing module or the SD circuit 3.
`image and sound data {ciphering data) received though an
`input part of DOS are deciphered by DES (Data Encryption
`Standard) 7 which is a deciphering part 103 and sent to a
`demultiplexer 13 outside the SD circuit 3 through an output
`part of 1106. As for DES 7. a chip called “46 DATA
`ENCRYP'I‘ION STANDARD NIST" made by FIPS‘ PU'B
`lNC.. can be used. for example.
`At the demultiplexer 13. sound and image data are sepa-
`rated and output to MPEG processing part (MPEG-2). The
`MPEG processing part (MPEG-2) is provided with a func-
`tion for expanding data compressed MPEG standard image
`and sound data. and for example. a “ISOJ’IEC CD 13818‘ 1
`3” standard chip can be used.
`When sounds and images are separated and output. syn-
`chronization between image data and sound data will be
`adjusted
`In the case where they are output to a computerfl’C).
`MPEG data will be output as digital outputs while in the case
`where they are output to a TV monitor or a speaker. they will
`be output as analog data after DIA conversion.
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`14
`
`4
`
`Fan‘ther. though transmitting and receiving of these data
`are shared by a control CPU 10 within the utilization
`permitting device 301 which functions as a permission
`control part and a control CPU within the SD circuit 3. the
`control CPU 10 may be used doubling as the CPU 4 within
`the SD circuit 3.
`
`Furthermore. though reference was made to the case
`where software is ciphered. it may be possible to incorporate
`certified routine in software and to carry out certifying for
`utilization.
`
`(FUNCFION WITHIN SD CIRCUIT)
`At the SD circuit 3. the control CPU 4 functions with
`memory 9 and identifies whether or not to permit decipher-
`ing at DES 7 as to ciphered software data read from a
`CD~ROM 101.
`
`When carrying out this identification. the control CPU 4
`will conth a charging table set on a memory 8 (credit
`balance register) and allow deciphering at the DES 7 only if
`there is credit balance on the charging table.
`That is. in the memory 8 specified balance values are
`registered and charging values are subtracted in accordance
`with the deciphering processing amount or processing
`period oftime of ciphered software data. When a user wishes
`to renew these balance values. the user is permitted to do so
`by communicating with the authorization center the increase
`of the balance values of the changing tabletjcredit balance
`register) in the memory 8.
`In FIG. 2. the functions of the utilization permission
`processing part 304 and the utilization managing part 305
`are realized by the control CPU 4 and the memory 8. Also.
`though the clock 302 is omitted in FIG. 2. it is realized by.
`for example. a real time clock LS! and a battery. In this
`embodiment. a date and time data storing register 303 (date
`and time data storing means) is set in the memory 8. as well.
`FIG. 5 is a block diagram showing a functional construc-
`tion at the first embodiment.
`
`A utilization permitting device 301 includes a clock 302.
`a date and time data storing register 303. a utilization
`permission processing part 304. a utilization amount man-
`aging part 305. a keyiserial number storing register 306
`(keyiserial number storing means) and a credit balance
`register 303.
`The date and time data storing register 303 is set in the
`memory 3 within the SD circuit 3 shown in FIG. 1 and dates
`when softwares are reproduced are recorded therein being
`controlled by the control CPU 4.
`The utilization permission processing part 304 and the
`utilization amount managing part 395 are specifically real-
`ized by the control CPU 4.
`In the keylserial number register 306 device. specific loey
`data and serial data (values of these serial number data are
`incremented) are stored after cipher-ing.
`The credit balance register 303 is set as a charging table
`in the memory 8 shown in FIG. 2 and substracticn is made
`from the charging balance in accordance with utilization of
`software.
`
`Next. a utilization permitting flow in this embodiment
`will be described with reference to FIG. 3.
`
`(DESCRIPTION OF UTlllZKI'ION
`PERMHTING FLOW)
`
`First. when receiving a utilization perrnissicn request
`from software (3001). the utilization permission processing
`
`14
`
`
`
`5.761.651
`
`5
`part 304 will read the value stored in the date and time data
`storing register corresponding to utilization requested soft-
`ware {3002}. Here. the date and time data storing register
`may be a single one or may be set for every sofnvares.
`Alternatively.
`it may be set for every specific software
`groups.
`Next. current time is read by the clock 302 (3003).
`Then. date and time data from the date and time data
`storing register and current time data obtained from the
`clock 302 are compared and identification will be made on
`whether the date satisfies the conditions (3004). Here.
`whether the date satisfies the conditions is determined by the
`following criteria. Selection of items in the criteria [they
`may be used in combination) described hereinbelow
`depends on software providers.
`(1) ARE DATES THE SAME
`According to this embodiment. amount-based charging of
`software reproduction is executed not by time units but by
`date units. More specifically. in the case where dates stored
`in the date and time data storing register 303 are earlier than
`those obtained by the clock 30c. specified utilization fees
`will be subtracted from the credit balance register 303
`considering that new software will be used (renew the
`balance 3008).
`(2)]STEIEZREA'I'DVIE DIFFEZENCE OVERTHE
`SPECIFJED VALUE
`
`In the case of charging by date units. charging equivalent
`to two days may be made if software is usod repeatedly at
`the time interval of 20minutes as in the use where after
`
`software is used at 11:50 pm. on the previous day the
`softWare is used again at 12:10 am on the next day.
`Thus. even if data are used on different dates not as
`specified as in ( l). utilization will be immediately permitted
`as a positive branch at the step 3004 if the data are reused
`over only a slight time difference (3005). For example. a
`time difference is set 12 hours or the like.
`As shown above. when the conditions are satisfied at the
`step 3004. as a positive branch permission will be given to
`its utilization(3005}. Based on this utilization permission.
`the DES?!r within the SD circuit 3 will sequentially decipher
`the softwares and output them.
`On the other hand. in the case where a movement is made
`to a negative branch at the step 3004. the utilization mount
`managing part 305 will access to the u'edit balance register
`308 and check on the utilization balance (3006). Here. if the
`balance is over the specified value. that is. there is still room
`even if current utilization fees are subtracted. the balance
`will be renewed (3008). More specifically. renewing of the
`balance means that the balance value stored in the credit
`balance register 308 will be subtracted.
`In the case where there is a shortage of the balance at the
`step 3006. deciphering of software will be rejected giving no
`utilization permission (3007).
`Then. the utilization permission processing part 304 sets
`date and time data read from the clock 302 on the date and
`time data storing register 303 (3009). By this processing. the
`current utilization time (utilization starting time) of the
`software will be stored. Utilization is then permitted {3010).
`(METHOD OF TIME COMPARING AND ADJUSTING
`FROM AUTHORIZATION CENTER)
`A procedure for time comparing and adjusting from the
`authorization center 31 to the software remoducing device
`(utilization permitting device 301) will be described with
`reference to FIG. 4.
`As shown in FIG. 4. a time adjusting message 307 (storing
`time data and serial number data and ciphered) are received
`
`6
`by the utilization permitting device 301 from the authoriza-
`tion center 31(4001). the utilization permission processing
`part 304 will take out key data from the keyz‘serial number
`storing register 306 and carry out deciphering of the mes—
`sage 307 at the DES 7 (4002]. If a method by electronic
`signatures is used. electronic signatures will be made from
`the message.
`When the deciphered messagettime comparing and
`adju sting command) is confirmed (4003). serial number data
`in the message 307 will be compared with serial number data
`read from the keyiserial number storing register 306. Then.
`only if the serial number data in the message coincide with
`those read from the keyiserial number storing register 306.
`the propriety of the message 307 will be confirmed (4004).
`Though omitted in FIG. 4. the serial number data of the
`keyfserial number storing register 306 will be incremented
`only by “+1“ at this time. If the deciphered message is not
`confirmed in step 4003. the clock is not set (4005).
`When the serial number is confirmed at the step 4004. the
`time of the clock 302 will be adjusted based on the time
`stored in the message(4006). If the serial number is not
`continued in step 4004. the clock will not be set (4005).
`As for the time adjusting message 307. ciphering elec-
`tronic signatures may be used. In such a case. the utilization
`permission processing part 304 will make signatures based
`on the time adjusting message 307 at the step 4002 and in
`confirming operation for them will be carried out at the step
`4003.
`Further. when utilizing the date and time data storing
`register 303 the period of time for using software is regis—
`tered and utilization requests are made from the protected
`software. the utilization permission processing part 304 will
`read date and time data from the clock. When the value of
`the read date from the clock is smaller than that in the date
`and time data storing register 303.
`the utilization of the
`software may be permitted considering that there is still time
`until the expiration.
`FIG. 13 is a block diagram showing a functional con-
`struction of the second embodiment.
`The utilization permitting part 304 is provided with
`utilization keys 602 (1 to N) for every softwares while the
`utilization amount managing part 305 is provided with credit
`balance registersfl to N).
`The utilization permitting device 301 includes a keyiserial
`number storing register 606 ft: storing key data and serial
`number data. This keylsm'al number storing register 606 is
`constructed by a secret key and serial number data.
`Next. a prooedln'e for setting credits at this embodiment
`will be desm'bed with reference to FIG. 14.
`
`First. a secret trey and a serial number are set within the
`utilization pin-mining device beforehand. Then. based on
`requests by the end users the authorization center 31 ciphers
`the credit values of respective software programs. utilization
`keys and serial data as a credit setting message the secret key
`and sends them to the utilization permitting device 301
`(1101). Here. the utilization permission processing part 304
`checks the deciphering state (1103}. If deciphering has been
`carried out correctly it will compare the serial number data
`tdren out of the message with that stored in the key/serial
`number storing register 606. If they coincide. the credit
`value take out of the message will be set in the credit balance
`regista' 60’] of the utilization amount managing part 305.
`considering that propriety of the message has been proven
`(1105). Then. the value of the keylserial number storing
`register 606 will be intremented only by “+1"(1106).
`0n the other hand. in the case where there are deciphering
`errors or in coincidence generated at the step 1103 or 1104.
`
`10
`
`15
`
`35
`
`4-5
`
`55
`
`65
`
`15
`
`15
`
`
`
`5.761.651
`
`7
`
`the processing will be terminated considering that setting
`has failed(1107}.
`Further. instead of ciphering the credit setting message
`electronic signatures may be used. As for setting the utili-
`zation key and the credit. 3 different message may be used
`In the case of using the signatures. however. ciphen‘ng will
`be necessary in order to further secure secrecy of the
`utilization key.
`0n the other hand. though reference was made to setting
`of the credit balance register. when the balance value
`declines and thus renewed to a new value. the operations
`similar to those at the steps 1101 to 1106 will be carried out.
`Then. after the existence of the utilization key is made
`certain for the utilization requests from the protective soft—
`ware at the time of use. the credit balance will be confirmed
`and if there is still room in the balance. the utilization permit
`will be sent.
`FIG. 15 shows the construction in the case where instead
`of the keylserial number data storing register 606 a key clock
`data storing register 608 is provided
`At this construction. when wishing to renew the content
`of the credit balance register 60’! from the authorization
`center 31. a credit balance renewal value and clock data will
`be linked. ciphered as a credit renewal message and sent to
`the utilization permitting device 301.
`the received
`At the utilization permitting device 301.
`credit renewal message is deeiphered at the deciphering part
`DES 7 and first the clock data is read from this renewal
`message. If at this time the value of the data is larger than
`that of the clock data stored in the key clock data storing
`register 608. the propriety of this renewal message will be
`guaranteed and the content of the acdit balance register 60"!
`will be renewed by the value read from the message.
`FIG. 6 is a block diagram showing a functional construc-
`tion of the third embodiment.
`The construction of the third embodiment is basically
`similar to that of the second embodiment. More specifically.
`in the third embodiment. a utilization amount managing part
`305 is constructed by a control CPU 4 and a memory 8 while
`a secret key 601 and a credit balance register 308 are stored
`in this utilization amount managing part 305.
`In a utilization permission processing part 304. for
`example. utilization keys 602 (1 to N) are stored for each
`software program A utilization log managing part 603 is
`also provided. wherein utilization records 604 (1 to N}
`corresponding to the utilization keys 602 (1 to N) are stored.
`By providing a plurality of such constructions. it will be
`made possible to dealt with a plurality of centers.
`(SETTING 0F CREDIT AND SECRET KEY)
`In the case where a batch totalizing system is adopted
`relating to amount-based software charging as at
`this
`embodiment. the balance value of the credit balance register
`308 will be shared by a plurali