Patent US5083309A successfully refreshed from Google Patents.
US5083309A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and a system enabling software to be run securely
Assignee: Schlumberger SA
•
Filing: 1990-11-16
•
Granted: 1992-01-21
•
Expires: 2010-11-16
Abstract
Abstract When a user receives a data medium containing software, the user is also provided with a memory card that must remain engaged in a card reader associated with the computer on which the software is run while the software is being run. Various intermediate results are stored in the memory of the card and not in the memory of the computer. During subsequent execution of the software these intermediate results are read back from the memory in the card.
Inventors
- 👤 Daniel Beysson
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-26 09:29
CPC Classifications
G; G07; G07F; G07F7/00; G07F7/08; G07F7/10; G07F7/1008; G06; G06F; G06F21/00; G06F21/10; G06F21/12; G06F21/121; G06F21/123; G06Q; G06Q20/00; G06Q20/30; G06Q20/34; G06Q20/346; G06F2207/00; G06F2207/72; G06F2207/7219; G06F2211/00; G06F2211/007
Claims Analysis
Total Claims: 16
Claim 1
Independent Claim
172 words
A method of running software by means of a system comprising at least a main apparatus on which said software is run and an auxiliary device for receiving a removable data medium including at least a memory zone and suitable for interchanging information between said main apparatus and said memory zone, the method comprising the steps of: defining in said software a certain number of commands requesting communication with said auxiliary device, said commands comprising first commands (C n ) associated with the generation of intermediate results for said software, and second commands (C n ) associated with requesting intermediate results in order to enable the program execution to continue; on the appearance of each first command (C n ), writing one of said intermediate results in said memory zone; and on the appearance of each second command (C n ) reading one of said intermediate results from said memory zone, thereby ensuring that the software cannot be executed in full unless said suitable removable medium is present in said auxiliary device.
Claim 2
Independent Claim
172 words
A method of running software by means of a system comprising at least a main apparatus on which said software is run and an auxiliary device for receiving a removable data medium including at least a memory zone and suitable for interchanging information between said main apparatus and said memory zone, the method comprising the steps of: defining in said software a certain number of commands requesting communication with said auxiliary device, said commands comprising first commands (C n ) associated with the generation of intermediate results for said software, and second commands (C n ) associated with requesting intermediate results in order to enable the program execution to continue; on the appearance of each first command (C n ), writing one of said intermediate results in said memory zone; and on the appearance of each second command (C n ) reading one of said intermediate results from said memory zone, thereby ensuring that the software cannot be executed in full unless said suitable removable medium is present in said auxiliary device.
Claim 3
Dependent Claim
103 words
A method according to claim 1, in which at least some of the commands (C n ) in said software are associated with duration information (t n ) which is not less than the normal execution time of said software between said command (C n ) and the following command (C n+1 ); said duration information (t n ) being transmitted to said auxiliary device, and being compared in said auxiliary device with the time that effectively elapses between receiving two successive commands; with access to said auxiliary device being inhibited or not inhibited as a function of the result of said comparison.
Claim 4
Dependent Claim
53 words
A method according to claim 1, in which, on receiving each second command (C n ), said auxiliary device transmits a reply which is encoded on the basis of a new secret key (f n+1 ) together with the new secret key (f n+1 ) encoded using the preceding key (f n ).
Claim 5
Dependent Claim
78 words
A method according to claim 2 of running software rented by an owner to a user, wherein a pecuniary balance second zone is additionally defined in the memory zone of said removable medium; an initial pecuniary balance is written into said second zone when the software is supplied; and said balance is decremented during utilization of said software as a function of the information relating to time effectively elapsed (f n ) as generated by said auxiliary device.
Claim 6
Dependent Claim
60 words
A method according to claim 4, in which said main apparatus is suitable for transmitting interrupt information to said auxiliary device during certain stages of the execution of said software, and on receiving interrupt information, said auxiliary device interrupts its measurement of the time effectively elapsed since the preceding command (C n ), thus interrupting decrementation of the pecuniary balance.
Claim 7
Dependent Claim
53 words
A method according to claim 3, in which, on receiving each first command (C n ), said auxiliary device transmits an acknowledgment signal which is encoded using a new secret key (f n+1 ) together with the new secret key (f n+1 ) which is encoded using the preceding key (f n ).
Claim 8
Dependent Claim
55 words
A method according to claim 2, in which, on receiving each second command (C n ), said auxiliary device transmits a reply which is encoded on the basis of a new secret key (f n+1 ) together with the new secret key (f n+1 ) which is encoded using the preceding key (f n ).
Claim 9
Independent Claim
178 words
A system for running software provided by an owner to a user, the system comprising: a first medium in which said software is stored; a removable second medium including a memory zone suitable for receiving information; a main apparatus for loading said software from the first medium, and for running it; an auxiliary device suitable for receiving said second medium, said auxiliary device being connected to said main apparatus to enable information to be interchanged between said main apparatus and said auxiliary device; said software stored in said first medium including a set of instructions for execution together with first commands (C n ) for causing intemediate results to be transmitted to said auxiliary device and second commands (C n ) for requesting said auxiliary device to provide preceding intermediate results to the main apparatus; and said auxiliary device including means for storing said intermediate results transmitted by said main apparatus in the memory zone of said second removable medium, and means for transmitting intermediate results to said main apparatus on receiving a second command (C n ).
Claim 10
Independent Claim
178 words
A system for running software provided by an owner to a user, the system comprising: a first medium in which said software is stored; a removable second medium including a memory zone suitable for receiving information; a main apparatus for loading said software from the first medium, and for running it; an auxiliary device suitable for receiving said second medium, said auxiliary device being connected to said main apparatus to enable information to be interchanged between said main apparatus and said auxiliary device; said software stored in said first medium including a set of instructions for execution together with first commands (C n ) for causing intemediate results to be transmitted to said auxiliary device and second commands (C n ) for requesting said auxiliary device to provide preceding intermediate results to the main apparatus; and said auxiliary device including means for storing said intermediate results transmitted by said main apparatus in the memory zone of said second removable medium, and means for transmitting intermediate results to said main apparatus on receiving a second command (C n ).
Claim 11
Dependent Claim
24 words
A system according to claim 8, in which said second removable medium is an electronic circuit memory card including memory means and processor means.
Claim 12
Dependent Claim
118 words
A system according to claim 9, in which said software associates at least some of said commands (C n ) with duration information (t n ) which is not less than the normal execution time of said software between said command (C n ) and the following command (C n+1 ); and main apparatus including means for transmitting said duration information (t n ) to said auxiliary device; and said processor means of the card including means for counting the effective time (T n ) that elapses between said command (C n ) and receiving the following command (C n+1 ), and means for comparing the duration information (t n ) and said effective time (T n ).
Claim 13
Dependent Claim
56 words
A system according to claim 9, in which said processor means include means for generating secret keys (f n ) and means responsive to receiving a command (C n ) for generating an encoded response using said key (f n ) and for encoding said key (f n ) using the proceding key (f n-1 ).
Claim 14
Dependent Claim
55 words
A system according to claim 10, in which said card includes memory means for storing initial pecuniary balance information when said card is issued with said first medium containing said software; and said card processor means includes means for decrementing said initial balance as a function of the effective elapsed time information (T n ).
Claim 15
Dependent Claim
32 words
A system according to claim 9, in which said auxiliary device is a memory card reader suitable for transmitting data read instructions and data write instructions to the circuit of said card.
Claim 16
Dependent Claim
56 words
A system according to claim 10, in which said processor means include means for generating secret keys (f n ) and means responsive to receiving a command (C n ) for generating an encoded response using said key (f n ) and for encoding said key (f n ) using the proceding key (f n-1 ).
References Cited (Backward Citations)
US4683553A
Cited
EP0135422A1
Cited
US4907268A
Cited
FR2606185A1
Cited
WO1988005941A1
Cited
EP0314148A2
Cited
US4932054A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1995-01-20 | 1995-07-22 | 1996-01-21 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1999-01-20 | 1999-07-22 | 2000-01-21 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2003-01-20 | 2003-07-22 | 2004-01-21 | $7700.00 | Window Closed / Lapsed |