throbber
United States Patent
`Mori
`
`[19]
`
`[541
`
`175]
`
`[73]
`
`[211
`
`[22]
`
`[63]
`
`SYSTEM FOR STORING HISTORY OF USE
`OF PROGRAMS INCLUDING USER CREDIT
`DATA AND HAVING ACCESS BY THE
`PROPRIETOR
`
`Inventor:
`
`Assignee:
`
`Appl, No:
`Filed:
`
`Ryoichi Mari, Tokyo, Japan
`
`Fujitsu Limited, Kawasaki. Japan
`622,196
`
`Dec. 5, I990
`
`Related U.S. Application Data
`Continuation of Ser. No. 281,882, Dec. 8, I988. aban-
`doned. which is a continuation of Ser. No. 129.867.
`Dec. 4. 1987. abandoned, and a continuation of Ser.
`No. 657.794. Oct. 4. 1984, abandoned.
`
`[30]
`Foreign Application Priority Data
`Japan ................................ 58-186100
`0m. 5. 1983 [JP]
`
`Japan ........... 59-46923
`Mar. 12. 1984 [JP]
`Mar. 12. 1984 [JP]
`Japan .................................. 59—46924
`
`1m. CI.s ................................................ GOGF 9/06
`[5:]
`[52] U.S. C1. ................................. 395/725; 364/2844;
`364/286.5; 364/016.
`1
`364/200 MS File, 900 MS File
`
`[53] Field at Search
`
`[56]
`
`References Cited
`. U.S. PATENT DOCUMENTS
`
`3/1973 Michels et al.
`3.719.927
`364/406
`5/1976 Anderson
`3.956.615
`....... 235/381
`
`4.358.672 11/1982 Hyatt cl 3].
`....... 235/380
`
`4.433.207
`2/1984 Best
`...............
`178/2209
`
`4.453.074 6/1984 Weinstein .
`235/380
`4.484.217 11/1984 Block ............. 358/84
`
`4.553.252 11/1985 Egendorf ............................ 364/300
`
`|lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
`
`U8005103392A
`
`[11] Patent Number:
`
`5,103,392
`
`[45] Date of Patent:
`
`Apr. 7, 1992
`
`5/1986 Lillie ................................... 364/200
`4.390.537
`4.593.376 6/1986 Volk .........
`...364/900
`
`........ 380/4
`4,658,093
`4/1987 Hellman
`
`4.683.553
`7/1937 Mollier
`364/900
`FOREIGN PATENT DOCUMENTS
`
`0116327
`
`.
`1/1984 European Pat. Off,
`OTHER PUBLICATIONS
`
`Lexis Handbook, Mead Data Corp. copyrighted 1980.
`Lexis/Nexis-Quick Reference, copyrighted 1984.
`"Computer Assisted Prior Art Searching", by Becker &
`Bolton, Jm] of Patent Office Society. Oct. 1983. vol. 65,
`No. 10 pp. 536—585.
`“Phone Home Video, The Game Connection", by Ja-
`cobs. Video Review. Sep. 1983. pp. 33, 34. 120.
`
`Primary Examiner—Lawrence E. Anderson
`Attorney. Agent. or Firm—Staas & Halsey
`
`[57]
`
`ABSTRACT
`
`A system for storing data on the history of use of pro-
`grams consisting of a data processing apparatus and a
`program storage unit, such as a magnetic tape. which
`stores program-specific data. The data processing appa~
`ratus includes a user—specific credit data storage por-
`tion, a use decision portion. and a program use history
`storage portion which can store use history data de~
`rived from the program-specific data from the program
`storage unit or the user-specific credit data from the
`user-specific credit data storage portion. The program
`use history is accessible to proprietors of the programs
`so that charges can be based on actual use of the pro-
`grams.
`
`3 Claims, 10 Drawing Sheets
`
`DATA PROCESSING
`APPARATUS l
`L
`
` PROGRAM
`
`REGISTRATIW 81
`
`It """ ‘ MANAGEMENT
`
`
`.
`4 UNIT
`1
`
`.—_——1._.
`
`
`
`FL
` USE
` :2
`m-SPECIFIC CREDIT
`HISTORY
`TA
`A
`
`DA
`srm GE
`STORAGE
`2..
`
`
`
`PROGRAM-
`SPECIFIC
`DATA
`
`
`
`221
`PROGRAM-
`SPECIFIC
`DATA
`PORTION
`
`USE CECISION UNIT
`
`OK/NG
`
`G’ERATLNG SYSTEM PORTION
`
`’
`
`15
`
`
`W7C PRINTER moon) DISPLAY
`
`2n 1
`PROGRAM
`SPECIFIC
`DATA
`PORTION
`
`
`
`
`Apple Exhibit 1011
`
`Page 00001
`
`Apple Exhibit 1011
`Page 00001
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 1 of 10
`
`5,103,392
`
`85.9w
`
`m—
`
`.52320588mm:
`
`oz\xo
`
`
`
`
`
`zofimoa.2396oEEmwao
`
`mm.tm.n.0..cm
`
`ZSKOOmn.
`
`.mzoEEmem.
`
`Fzmzmoqzqz:......LozfimmmooESS\.D‘h‘
`E991moqum«:5e.5mm::85oEomam¢wB_.J:2:v“_m3<m<&<
`
`ugmoomn.
`
`350me
`
`ZOEEOn.
`
`4.20
`
`:N
`
`usamwomn.
`
`UEUMQm
`
`2958
`
`5.40
`
`.NN
`
`.samoomm
`
`
`
`
`
`beluga930$KMFZHE2.52032UCUMQm
`
`
`
`
`meo3.40
`
`ZOHEOn.
`
`Page 00002
`
`Page 00002
`
`
`
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 2 of 10
`
`5,103,392
`
`.ozmmuoomn.mm.a.._oHmm.
`.mm...:l:11.NIn.I|i|||I
`.,.0
`
`
`
`E2:UEHUMQm
`
`
`mm.wwammnww
`
`
`-mmm:
`
`ozpdmmao :23ZOHmHomDmle
`20:.m0a2m...m>m
`
`
`>§m5o§>wxKHZ—maothzogPm.M_DEm.
`
`
`
`m:
`
`v.90
`
`.{l
`
`038mg3.40m202.3%
`
`_madmdmad
`
`_N
`
`HOOn.508m
`
`
`
`ZOEEOQmeooo
`
`.rZDOUUq.FEMOszz
`
`z.Emamml
`
`zofimoa....
`
`
`mat
`
`Page 00003
`
`Page 00003
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 3 of 10
`
`5,103,392
`
`Fig. 3A
`
`Fig. 3
`
`Fig.3C Fig.3D
`
`.
`'
`
`:
`
`0
`
`Page 00004
`
`2|Oa
`
`210b
`
`2|Oc
`
`2|Od 2'0
`
`DISCOUNT
`PROPRIETOR PROGRAM USE
`IDENTIF’N
`DENTIF’N CHARGE RATE
`
`DISCOUNT
`
`PROCESSING I
`
`—
`
`Page 00004
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 4 of 10
`
`5,103,392
`
`Fig. 3 B
`
`I
`
`KEYBOARD
`
`17
`
`PROGRAM POOL
`STATION
`
`132
`
`1
`/0
`PROCESSING
`
`
`
`DISPLAY
`
`BALANCE
`INCREASE
`FETCHING
`
`.
`
`”On
`
`320
`
`BALANCE
`STORAGE
`‘
`
`A
`
`- E7330
`
`(ADDER)
`
`'
`
`POINTER
`
`STORAGE
`
`Page 00005
`
`Page 00005
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 5 of 10
`
`5,103,392
`
`Fig. 3C
`
`"
`
`250" U-— " -‘
`POSSIBILITY
`CHECKING
`
`:
`
`DISPLAY
`
`OK
`BALANCE
`260 STORAGE
`UPDATING
`
`270
`
`POINTER
`
`UPDATING
`
`280
`
`USE DETAILS
`
`STORAGE WRITING
`
`
`OPERATING
`SYSTEM
`
`RE S PONSE
`
`PROCESSING
`
`
`
`
`
`290 '
`
`Page 00006
`
`Page 00006
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 6 of 10
`
`5,103,392
`
`UID'USER IDENTIFICATION
`PIDI PROGRAM IDENTIFICATI
`PNOZ PROGRAM NUMBER
`CHG :USE CHARGE
`
`- mm;\ U---- 1533;
`' ----(DETAILS)
`R ----(‘STORAGE)
`
`
`
`LesogCESS CONTROL)
`
`1
`
`Page 00007
`
`Page 00007
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 7 of 10
`
`5,103,392
`
`vat at...“aim
`
`Page 00008
`
`Page 00008
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 8 of 10
`
`5,103,392
`
`Fig. 5A
`
`4210
`
`421b
`
`421C
`
`421d
`
`437 1/0 PRO'CESSING
`
`IfiII
`
`41 la
`
`SUBSEQUENT
`PROCESS
`
`
`
`
`41 I bSED
`DECISIO N
`
`PROGRAMSEDTABLE
`
`NO
`lilflfiflfililfll
`
` TO ODEFMTING
`SYSTEM
`
`
`
`
`BALANCESTORAGEUPDATEPROCPROCESSI
`
`
`
`STORAGE
`PROCESSING
`ADDITION
`PROCESSING
`
`
`
`
`430 .OPERATING SYSTEMmm” ”ms
`
`4Ilc
`
`STORAGE
`
`PROCESSING
`
`438
`
`
`
`Page 00009
`
`Page 00009
`
`

`

`U.S. Patent
`
`Apr. 7, 1992
`
`Sheet 9 of 10
`
`5,103,392
`
`Fig. 5B
`
`4'6
`
`423
`_/
`
`
`
`PROGRAM CHARACT’C
`
`DATA READ
`
`|
`
`.
`
`
`
`PROCESSING
`
`CALCULATION
`
`NEGATIV E
`
`
`
`OPERATING SYSTEM
`RESPONSE PRCXSESSING
`
`
`
`
`436
`
`434
`
`435
`
`Page 00010
`
`
`RETURN-SALE
`PRICE
`
`
`
`PROCESSING I
`PROCESSIN G g
`
`ADDITION
`
`PROCESSING
`
`REGISTRATION
`CANCEL
`
`STORAGE
`
`
`
`
`Page 00010
`
`

`

`US. Patent
`
`Apr. 7, 1992
`
`Sheet 10 of 10
`
`5,103,392
`
`7532O...
`
`<6ka
`
`Dm<0m>wv.8h
`
`mozshmo.
`
`ZOEHUHOZH
`
`zopomamm
`
`20H.2UEZH
`
`09‘.
`
`NON
`
`29.3053
`
`8330:.
`
`00hxx
`
`omdu
`
`
`
`two/4mm.I...
`
`NON.05
`
`
`
`203.48“.Fzmou
`
`Dado
`
`Page 00011
`
`Page 00011
`
`
`
`
`

`

`1
`
`5,103,392
`
`SYSTEM FOR STORING HISTORY OF USE OF
`PROGRAMS INCLUDING USER CREDIT DATA
`AND HAVING ACCESS BY THE PROPRIETOR
`
`This application is a continuation of application Ser.
`No. 07/28 I .882. filed Dec. 8. I988. now abandoned. is a
`continuation of co-pending application Ser. No. 129,867
`filed on Dec. 4. 1987 and Ser. No. 657,794 filed on Oct.
`4, 1984. both now abandoned.
`
`BACKGROUND OF THE INVENTION
`
`I. Field of the Invention
`The present invention relates to a system for storing
`the history of use of marketable programs (software)
`such as marketable computer programs. By storage of
`the history of use, proprietors of marketable programs
`can charge for the exact amount of use of the software.
`Specifically,
`the system allows proprietors to obtain
`information on the exact state of use of software by a
`specific user and charge appropriately for that use, thus
`making the use of such software more attractive to
`users.
`
`2. Description ofthe Prior Art
`In general, it is difficult for a proprietor of software
`such as a computer program to protect and to extract
`the full benefits of his software rights. Once software is
`passed into the hands of a customer. the proprietor has
`no way of knowing how the software is used. He there-
`fore cannot stop unauthorized use or copying. and can.
`not utilize a system of charges based on the amount of
`actual use. This has not only resulted in relatively high
`charges for the use of software, but has also discouraged
`software suppliers from the production of good soft-
`ware and promotes a general decline in the quality of
`software on the market. Obviously,
`this situation is
`detrimental to progress and the wider use of software in
`the future.
`A method has been proposed for preventing unautho-
`rized copying of computer programs. in which the pro-
`gram is coded for the particular computer unit on
`which use is authorized. This method is disclosed. for
`example.
`in Japanese Examined Patent Publication
`(Kokoku) No. 53-17849. The program can be used only
`when this code corresponds to that of the computer on
`which use is attempted. This prevents use of unautho-
`rized copies of the program on other computer units.
`The control and management of such computer codes,
`however. is not easy or practical in the case where the
`computer program is mass-marketed.
`SUMMARY OF THE INVENTION
`
`It is an object of the invention to provide a system in
`which the use of a program is recorded every time the
`program is used.
`It
`is another object of the invention to provide a
`system in which the proprietor of a program can charge
`for the exact amount of use of his program and can
`‘ claim damages upon unauthorized use thereof.
`It is a still further object of the invention to provide a
`system in which the users of a program are actually
`encouraged to copy the program, whereby extensive
`utilization of well-designed programs is promoted.
`In accordance with a fundamental aspect of the pres-
`ent invention. there is provided a system for storing
`data on the history of use of programs. including a data
`processing apparatus used by a user and program stor-
`age means for storing a program acquired from a pro-
`
`5
`
`IO
`
`15
`
`'
`
`20
`
`25
`
`30
`
`35
`
`45
`
`55
`
`65
`
`2
`prietor and program-specific data. The data processing
`apparatus includes user-specific credit data storage
`means for storing data identifying the user of the data
`processing apparatus and indicating credit for payment
`capacity, use time length. or the like of the user of the
`data processing apparatus. Also included is use decision
`means for determining permission to use the program
`on the data processing apparatus on the basis of pro-
`gram-specific data supplied from the program storage
`means or user-specific credit data supplied from the
`user-specific credit data storage means, the use decision
`means delivering either an affirmative or negative signal
`corresponding to results of the decision. Also included
`is program use history storage means connected to the
`use decision means for storing program use history data
`derived from the program-specific data or the user-
`specific credit data. In this system, the program use
`history data is rendered accessible to the proprietors of
`the programs used in the data processing apparatus.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`In the drawings.
`FIG. 1 is a block diagram of a system for storing data
`on the history of use of computer programs according
`to the present invention;
`FIG. 2 is a block diagram of more detailed structure
`of the embodiment of the system shown in FIG. 1;
`FIG. 3 an even more detailed block diagram of the
`structure and operation of the system shown in FIG. 1;
`FIG. 4 is a block diagram of another example of the
`structure and operation of the system shown in FIG. 1;
`FIG. 5 is a block diagram of a further example of the
`structure and operation of the system shown in FIG. 1;
`and
`FIG. 6 is a block diagram of a password inspection
`device which can be used in association with the system
`shown in FIG. 1.
`
`DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`A system for storing data on the history of use of
`programs according to an embodiment of the present
`invention is shown in FIG. I. The system shown in
`FIG. 1 includes a data processing apparatus 1 such as a
`computer used by a previously approved user. market-
`able program storages 21. 22,
`.
`.
`. 2n such as magnetic
`tapes or magnetic disks. and a program registration and
`management unit 4.
`The data processing apparatus 1 is operated when one
`of the program storages 21. 22 .
`.
`. 2n is entered into the
`data processing apparatus 1.
`The data processing apparatus 1 includes a use deci-
`sion unit 11. a userospecific credit data storage 12. a use
`history storage 13, and an operating system portion 14.
`One of the program storages 21, 22. .
`.
`. 2n is entered
`into the .use decision unit 11. The user-specific credit
`data storage 12 is connected to the use decision unit 1].
`The use decision unit 11 supplies an OK/NG (no good)
`signal to the operating system portion 16 and an output
`signal to the use history storage 13 and receives a signal
`from the use history storage 13.
`An output signal of the use history storage 13 can be
`supplied to the program registration and management
`unit 4, which can send a signal to the user-specific credit
`data storage 12. In addition to the program for operat-
`ing the user‘s computer. the program storages 21, 22, .
`.
`.
`, In store the program-specific data of portions 211.
`212. .
`.
`. 2n.
`
`Page 00012
`
`Page 00012
`
`

`

`5,103,392
`
`3
`The user-specific credit data storage 12 stores data
`indicating the user‘s authorization to use the program to
`be entered into the computer 1, the user's ability to pay
`for the use ofthe program, the period oftime the user is
`allowed to use the program. and the like. When, for
`example. the program‘specific data from the program
`storage 21 is supplied to the use decision unit 11, the use
`decision unit 11 compares the program-specific data
`from the program-specific data portion 211 with the
`user~speciftc credit data from the user-specific credit
`data storage 12 and decides whether the user may use
`the program.
`If the decision is affirmative, an OK signal is supplied
`to the operating system portion 14 to allow the subse-
`quent operation of the computer to proceed. A data
`signal is supplied to the use history storage 13 to cause
`the program-specific data from the program-specific
`data portion 211 and/or the user-specific credit data
`from the user-specific credit storage 12 to be stored in
`the use history storage 13.
`If the decision is negative, an NG (no good) signal is
`supplied to the operating system portion 14 to prevent
`subsequent operation of the computer from taking
`place.
`Once the program-specific data or the user-specific
`credit data is stored in the use history storage 13, the
`program use history data is accessible to the proprietor
`of the programs executed on the data processing appa-
`ratus the Therefore, the proprietor can obtain the infor~
`mation necessary for charging the user for the exact
`amount of use of his program.
`It is also possible to transmit the data stored in the use
`history storage 13 to the program registration and man-
`agement unit 4, which is outside of the data processing
`apparatus 1. After predetermined data processing oper-
`ations in the program registration and management unit
`4, output data can be transmitted to the user-specific
`credit data storage 12 to update or change the data
`stored therein.
`The detailed structure of the system shown in FIG. 1
`is shown in FIG. 2. The user-specific credit data storage
`12 is divided into two portions. One is a storage portion
`121 for storing the user-specific code. the other is a
`storage ponion 122 for storing data of the charge pay-
`able by the user as well as a currency unit, such as yen,
`dollars, or pounds. The use history storage 13 includes
`a main portion 131 of the use history storage 13. an
`input/output processing portion 132, and a timer por-
`tion 133. The data processing apparatus 1 also includes
`a magnetic disk device 15, a printer 16, a keyboard 17,
`and a display device 18.
`The program registration and management unit 4 in
`the system shown in FIG. 1 is a program pool station 5
`in the embodiment shown in FIG. 2. The program pool
`station 5 includes a registration portion 51, a manage-
`ment docket 52, and an account portion 53.
`A proprietor of a program enters a bank account
`number at the registration portion 51 and receives a
`program-specific code (program proprietor identifica-
`tion code). The data processed in the registration por-
`tion 51 is written in and read from the management
`docket 52.
`The account portion 53 is connected with the input-
`/output processing portion 132 of the use history stor-
`age 13 in the data processing apparatus 1. The informa-
`tion of the charge payable by the user stored in the use
`history storage 131 may be a predetermined limit on the
`amount of cumulative charges of a user. The content of
`
`IO
`
`l5
`
`20
`
`25
`
`30
`
`35
`
`45
`
`55
`
`65
`
`4
`the use history storage 131 can be emptied when the
`data to be stored into the use history storage 131 ex-
`ceeds the predetermined limit of the capacity of storage
`of data. When the charge to the user for use of the
`program in the data processing apparatus 1 is very high,
`information concerning such expensive use can be
`transmitted through the input/output processing por-
`tion 132 to the account portion 53 in the program pool
`station 5. Also, information on the balance of the charge
`payable by the user stored in the use history storage 131
`can be revised to raise the limit of the cumulative
`charges stored in the use history storage 131 by instruc-
`tions supplied through the input/output processing
`portion 132 from the account portion 53 in the program
`pool station 5.
`The data transmission through the input/output pro-
`cessing portion 132 may be realized through various
`means, such as on~line data transmission, a magnetic
`card, or an IC card including a microprocessor therein.
`The program storages 21, 22, .
`.
`. are mass-marketed
`by the proprietors of the programs 31, 32, 33,
`.
`.
`.
`.
`Before this, the proprietors register their programs at
`the program pool station 5. Later, they obtain accounts
`of the use of their programs by the users from the sta-
`tion 5. For example, the program-specific data is stored
`in the program‘speciftc portion 211 of the program
`storage 21. The program-specific data includes the pro-
`gram-specific code supplied from the program pool
`station 5, the version number of the program, and the
`charge for use of the program.
`It is possible to include information on a special con-
`tract concerning the use of the program in the program-
`specific data. In this case, the use decision unit 11 deliv-
`ers an affirmative decision only when the data stored in
`the user-specific credit data storage 12 includes infor-
`mation indicating a special use contract code corre-
`sponding to the special contract information.
`The information concerning such a special contract is
`usually supplied to the program pool station 5. Hence, it
`is possible for the proprietor of the program to obtain
`information concerning the use of his program, for
`which the special contract is designated, from the pro-
`gram pool station 5.
`The system shown in FIG. 2 operates as follows. The
`entry of the marketable program storage 21 in the data
`processing apparatus 1 is detected by the operating
`system portion 14 by interpreting the job control lan-
`guage in the storage. Upon detection, the use decision
`unit 11 commences a comparison operation. The data
`from the user-specific code storage 121 and the payable
`charge storage 122 are compared with the program-
`specific data from the program storage 21.
`A user balance in the data from the payable charge
`storage 122 has subtracted from it the charge for use of
`the program in the program-specific data. When the
`result of the subtraction is a negative number, this infor~
`mation is supplied to the operating system portion 14 to
`cause the display device to indicate that use of the pro-
`gram is impossible because the charge of use exceeds
`the balance. When the result of the subtraction is either
`zero or a positive number, information including the
`result of the subtraction, the program-specific code, the
`charge for use of the program, the user-specific code.
`and a new user balance is stored in the use history stor»
`age 13. Also, information of the continuation of the
`operation of the computer is supplied to the operating
`system to allow the operation of the computer to pro—
`ceed.
`
`Page 00013
`
`Page 00013
`
`

`

`S, 103,392
`
`5
`Thus. in the use history storage 13. data of the user
`balance, i.e.. the result of the subtractions of charges for
`uses of programs, the data of the program-specific code.
`and the data of the userospecific code stored. It is also
`possible to and determine. from the stored data,
`the
`total amount which should be paid by the user to the
`proprietors of the used programs.
`The program pool station 5 can be controlled by an
`organization such as an association of the proprietors of
`computer programs. When the program pool station 5 is
`controlled by a proprietor association, the association
`obtains the information on the use of the programs
`stored in the use history storage 131.
`It is possible to establish a contract between a pro-
`gram proprietor and a user to refund 10% of the charge
`for use of a program if the user gives the information on
`the program use to the proprietor. With such a contract,
`assuming. for example, prepayment by the user, it is in
`user's interest to give information on the program use to
`the proprietor. Therefore, collection of charges for use
`of the proprietor’s program is ensured with a high prob-
`ability.
`Upon receipt of the information on use of the pro-
`gram from the user‘s data processing apparatus 1, the
`proprietor association collects the charge for use of the
`program from the user and transfers it to the bank ac-
`count registered in the management docket 52 in the
`program pool station 5.
`A similar procedure can be followed using an inte-
`grated circuit (IC) card. In such a case, the IC card is
`adopted as the means for data transmission through the
`input/output processing portion 132. It is possible for
`the program proprietor to contract with a user having
`an IC card so that the user brings back the card to the
`proprietor association in return for a cash refund. The
`amount of the cash refund payment may be 10% of the
`total of the charges for use of the program and the
`remainder of the user balance if a payable charge was
`prepaid by the user.
`With such a contract, it is in the interest of the holder
`of the IC card to bring back his 1C card to the propri-
`etor association to obtain at least the 10% refund on the
`total of the charges for the use of the program, even if
`the remainder of the payable charge. i.e., user balance,
`is zero. Upon receipt of the IC card from the user. the
`proprietor association arranges for transfer of funds to
`the bank account of the proprietor.
`With the proprietor association, the proprietor of a
`program can receive the charge for use of his program
`at his bank account through the proprietor association.
`Even if unauthorized copying of the program is carried
`out and the copied program is used, under a properly
`organized system, the charges for use of the copied
`program will be transferred to the bank account of the
`program proprietor through the proprietor association,
`since the program-specific data including the program
`proprietor identification code is stored in the program
`storage. Accordingly, use of the unauthorized copy
`does not detract from, but adds to the profit of the
`program proprietor.
`Also, even if unauthorized copying of the program is
`carried out and an incorrect program proprietor identi-
`fication code is unlawfully attached, the use history of
`the copy can be detected from the data stored in the use
`history storage 131, and hence damages can be claimed
`against the program proprietor identified by the incor-
`rect program proprietor code.
`
`5
`
`to
`
`15
`
`20
`
`25
`
`30
`
`35
`
`45
`
`55
`
`60
`
`65
`
`6
`An example of detailed structure and functions of the
`system shown in FIG. 2 is illustrated in FIG. 3. The use
`history and payable charge data storage 110 includes a
`balance storage 1100, a pointer storage 110b, a use de~
`tails storage 110C, and an access control portion 300 for
`the use details storage llOc. There is provided a pro-
`gram data memory 210 which includes a program pro-
`prietor identification code storage 2100, a program
`identification data storage 210b, a use charge storage
`210C, and discount rate storage 210d.
`There are provided a discount process 220, a balance
`checking portion 230, a use details storage range check-
`ing portion 240. a use possibility checking ponion 250.
`and a balance storage updating portion 260. There are
`also provided a pointer updating portion 270, a use
`details storage writing portion 280. and an operating
`system response processing portion 290. There are also
`provided a user checking portion 310, a balance in-
`crease fetching portion 320. an adder portion 330, a
`pointer checking portion 340, a use history storage
`reading portion 350, a transfer portion 360, and a
`pointer decrement portion 370.
`The operation of the system shown in FIG. 3 will
`now be described. First, the routine of the use of the
`program will be described. Upon receipt of an instruc-
`tion from the keyboard 17, the information of the bal-
`ance stored in the balance storage 110a is checked in the
`balance checking portion 230. When the result of the
`checking is either negative or zero, BALANCE ZERO
`is indicated on the display device 18. When the result of
`the checking is neither negative nor zero, the informa-
`tion stored in the pointer storage 11% is checked for
`whether or not the predetermined elements of the infor-
`mation exceed the maximum limit values. The maxi-
`mum limit values may be determined by the number of
`items in the use details storage 110: or the sum for the
`charge of use of the program not reported to the propri-
`etor association.
`’
`When the predetermined elements of the information
`exceed the maximum limit values. REMAINING CA-
`PACITY OF USE DETAILS STORAGE INSUFFI-
`CIENT. PLEASE SEND USE DETAILS TO PRO—
`PRIETOR ASSOCIATION. (or PLEASE CHANGE
`IC CARD AT PROPRIETOR ASSOCIATION) i
`indicated on the display device 18.
`~
`When the predetermined elements of the information
`do not exceed the maximum limit values, the discount
`processing portion 220 calculates the charge for use of
`the program, by using the use charge from the use
`charge storage 21°C, the discount rate from the discount
`rate storage 210d, and the user-specific code from the
`user-specific code storage 121. It is possible to set the
`charge for use of the program to provide a special dis-
`count for a special user, or a special discount. including
`no charge, for a user for a predetermined number of
`initial uses. Of course, when no information of a con-
`tract is detected in the user-specific credit data, THIS
`PROGRAM NOT AVAILABLE, BECAUSE OF
`ABSENCE OF CONTRACT may be indicated ,on the
`display device 18.
`The use possibility checking portion 250 subtracts
`from the balance output by the balance storage 1100 a
`calculated charge output by the the discount processing
`portion 220 and checks whether or not the result of the
`subtraction is a negative number. When the result is a
`negative number. BALANCE SHORTAGE is indi»
`cated on the display device 18. When the result is not a
`negative number, the balance storage-updating portion
`
`Page 00014
`
`Page 00014
`
`

`

`5,103,392
`
`7
`260 updates the value of the balance storage 1100, and
`the pointer updating portion 270 updates the value of
`the pointer storage 11% to increment the value by I,
`Then. the use details storage writing portion 280 stores
`the user identification code.
`the program proprietor
`identification data from the portion 210a, the program
`identification data from the portion 21%, and the
`amount of the calculated charge, including the currency
`unit, into the use details storage llflc. This storage into
`the use details storage “Or is can'ied out at the storage
`location designated by the pointer for the access control
`portion 300 stored in the pointer storage “Ob. After
`that. the operating system response processing portion
`290 delivers a signal indicating approval of use of the
`program to the operating system portion 14.
`Instead of the above-described subtraction of the
`payable charge each time a program is used, it is possi-
`ble to maintain the initial payable charge, i.e., not sub-
`tract the charges for use of the program, and to deliver
`the information of the result of subtraction from the
`initial payable charge of the sum of the charges for use
`of a program only when the delivery of the result is
`required.
`Next. the routine for increasing of the value of the
`balance storage 110a will be described. Upon receipt of
`an instruction from the keyboard 17, the user checking
`portion 310 checks whether or not the user is entitled to
`use the program For example, coincidence between the
`password code from the keyboard 17 and a code from
`the user-specific code storage 121 is checked. When no
`coincidence is found. PLEASE INPUT PASSWORD
`AGAIN is indicated on the display device 18. When
`coincidence is found, the amount of the balance which
`is to be increased is fetched in the balance increase
`fetching portion 320 using the signal from the input-
`/output processing portion 132, This can be done by
`obtaining information concerning the amount of the
`balance to be increased from the keyboard 17 after
`exchanging on-line information concerning the pass-
`word with the program pool station or by using an IC
`card connected to the input/output processing portion
`132 for obtaining information concerning the amount by
`which the balance is to be increased.
`The amount of by which the balance to be increased
`is added to the balance in the balance storage 1100 by
`the adder portion 330, and the result of the addition in
`the adder portion 330 is stored in the balance storage
`"On.
`Next, the routine of the transfer of data from the use
`history storage 110 to the program pool station 5 will be
`described. Upon receipt of an instruction from the key-
`board 17, the pointer value checking portion 340 checks
`the data in the pointer storage 11% for whether or not
`the pointer value is greater than zero. When the result
`of the check is that the pointer value is not greater than
`zero. TRANSFER OF USE DETAILS STORAGE
`DATA COMPLETED is indicated on the display de-
`vice 18. When the result of the check is that the pointer
`value is greater than zero, the reading portion 350 reads
`the data of the use details storage 110C in the range
`designated by the pointer in the pointer storage 110b,
`and the transfer portion 360 transfers the read data
`directly to the program pool station 5 via the input/out-
`put processing portion 132. In the case where an IC
`card is used, the data is recorded on the IC card.
`Then, the pointer value decreasing portion 370 de-
`creases the pointer value by 1, and the process returns
`to the pointer checking portion 340. Thus, the process is
`
`the value of the pointer storage 11013
`repeated until
`reaches zero. Accordingly. all of the data in the use
`details storage 110C is transmitted to the program pool
`station 5.
`
`It is possible to change the maximum limit value in
`the use details storage range checking portion 240 in
`accordance with the degree of credit of the user. Hence,
`it is possible to designate a relatively long interval for
`reports of the data in the use details storage 110: for a
`user with an excellent credit standing and to designate a
`relatively short interval for reports of the data in the use
`details storage “or: for a user with a poor credit stand~
`mg.
`An embodiment of the system in which an IC card is
`used is shown in FIG. 4. The system shown in FIG. 4
`includes a central processing system 530 having a main
`memory 537. a central processor unit 538, a channel
`device 539. an input/output control device 536, and a
`keyboard 510; an lC card reader 550; and an IC card
`570 having a microprocessor unit 573, a use history
`storage 571, an EPROM 574, an input/output port 575,
`and a bus 576. The use history storage 571 includes a
`balance storage 571a, a pointer storage 571b, and a use
`details storage 571C.
`In the system shown in FIG. 4. whether or not the
`program can be used is checked by using the balance
`storage 5710. When the result of the check is affirma—
`tive, the data in the balance storage 5710 is updated, by
`subtraction. and the details of the use of the program are
`stored in the use details storage 571C.
`The purchase price of the 1C card 570 paid by the
`user to the proprietor association is stored in the balance
`storage 571a in the IC card 570. After using the 1C card
`to close to the extent allowed by the payable charge, the
`user returns the IC card 570 to the proprietor associa-
`tion. Assuming. for example, prepayment of the pur-
`chase price. upon receipt of the IC card 570. the propri-
`etor association returns the balance stored in the bal-
`ance storage 571a and 10% of the total of the charges
`for use of the program. It is possible accordingly for the
`proprietor association to pay the charge of use for a
`program to the proprietor.
`It is possible to store in the EPROM 574 a program
`which forbids processing in the direction of increase of
`the balance in the balance storage 571a. It is also possi-
`ble to encipher

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


Or .

Accessing this document will incur an additional charge of $.

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

Accept $ Charge
throbber

Still Working On It

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

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

throbber

A few More Minutes ... Still Working

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

Thank you for your continued patience.

This document could not be displayed.

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

Your account does not support viewing this document.

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

Your account does not support viewing this document.

Set your membership status to view this document.

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

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

Become a Member

One Moment Please

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

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

Your document is on its way!

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

Sealed Document

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

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


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket