GB2120434A - A security system - Google Patents

A security system Download PDF

Info

Publication number
GB2120434A
GB2120434A GB08310954A GB8310954A GB2120434A GB 2120434 A GB2120434 A GB 2120434A GB 08310954 A GB08310954 A GB 08310954A GB 8310954 A GB8310954 A GB 8310954A GB 2120434 A GB2120434 A GB 2120434A
Authority
GB
United Kingdom
Prior art keywords
variable
calculator
user
security system
variables
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.)
Granted
Application number
GB08310954A
Other versions
GB8310954D0 (en
GB2120434B (en
Inventor
Robert J Bosen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Enigma Logic Inc
Original Assignee
Enigma Logic Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Enigma Logic Inc filed Critical Enigma Logic Inc
Publication of GB8310954D0 publication Critical patent/GB8310954D0/en
Publication of GB2120434A publication Critical patent/GB2120434A/en
Application granted granted Critical
Publication of GB2120434B publication Critical patent/GB2120434B/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/385Payment protocols; Details thereof using an alias or single-use codes
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/20Individual registration on entry or exit involving the use of a pass
    • G07C9/29Individual registration on entry or exit involving the use of a pass the pass containing active electronic elements, e.g. smartcards
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0866Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means by active credit-cards adapted therefor

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Lock And Its Accessories (AREA)

Abstract

A security system for controlling access to property generates a first variable which is displayed to the user desiring access. The user has a separate calculator device into which this first variable is entered and which then generates a second variable having a predetermined relationship to the first variable (or the user could derive the second from the first using a look-up table). This second variable is then entered by the user into the security system which has itself also generated a second variable. The system compares the second variables and if they correspond, lock means are actuated and access is granted, e.g. through a door or to a computer programme or to data stored in a computer or to permit storage of an edited document in word-processing. <IMAGE>

Description

SPECIFICATION A security system The invention is in the field of electronic security systems for limiting access to such diverse places and things as buildings and computer programs.
There are many electronic security systems designed to control access to places and things, such as private or public premises, computer programs, stored computer information, etc.
These systems all require the use of some preset code to gain the desired access.
For example, many systems require a person seeking such access to feed a code, e.g. a password, into an electronic device, which then compares the code with a preset code, and, if the two match, unlocks an electrically operated lock or electronic lock to allow the access desired. In such instances, the code is preset in the device and all authorized users are given such code.
In other systems, a code may be magnetically or otherwise encoded on a card which is inserted into a reading device that determines if the encoded code is the same as the preset code and, if so, allows access.
A problem with such systems is that once the code is known, particularly if by a large group of users, it may inadvertently be imparted to unauthorized persons. Even where possession of a physical device, such as an encoded card is necessary for obtaining access, such a card is easily duplicated once the code is known.
Although the code can be changed each time an unauthorized user is suspected of having the code, the new code has to be given to all authorized users. Moreover, in those instances in which a fixed code is used, ways have been found to break such code.
The need remains for a simple yet more sophisticated security system that cannot be easily broken.
According to the invention, a security system generates a first variable which is displayed to the user. The user has a separate device into which this first variable is entered and which then generates a second variable which has a predetermined relationship to the first variable.
This second variable is then entered by the user into the security system which has itself also generated the second variable. The second variables are compared and if they correspond, access is granted.
The system thus includes first character generator means for generating a first variable, second character generator means for generating a related second variable having a predetermined relationship to the first variable, separate user operated "key" means for generating a corresponding second variable, means for the user to input this second variable into the system, character comparator means for comparing the two second variables, i.e. the second variable generated by the second character generator and the second variable entered by the user, and access lock means for allowing access if the two variables correspond.
The user operated "key" means for generating the second variable may take several forms, such as a numericai, alphabetical, or similar table or a programmed calculator.
With the system of the invention, the code or "password", which is the second variable, depends upon the first variable which preferably is randomly generated. Also, the relationship between the first and second variable need not be known, and preferably is not known, by the user.
The user merely needs to have access to the "key", i.e., the user operated means for generating the second. variable. When this takes the form of a preprogrammed calculator, the relationship between the first and second variable may be made very complicated and almost impossible to work out emperically. Thus, the device for generating the second variable can be made almost impossible to duplicate, meaning that only the person with the device can gain access to the property protected.
In the accompanying drawings, which represent the best mode presently contemplated for carrying out the invention.
Fig. 1 is a flow chart of the invention; Fig. 2, a table for use with one embodiment of the invention; Fig. 3, a device embodying a table similar to that shown in Fig. 2; Fig. 4, a perspective view of a typical hand held calculator that can be preprogrammed and used with the invention; Fig. 5, a circuit diagram of one embodiment of the calculator of Fig. 4; Fig. 6, a perspective view of a second embodiment of a calculator that can be preprogrammed and used with the invention; and Fig. 7, a perspective view of the removable integrated circuit package used with the calculator of Fig. 6.
Referring to Fig. 1, which shows in block form the basic components of the security system, when access is desired a first character generator generates a character or variable from a first set of variables. Such first variable may be a digit or single letter of the alphabet, or multiple numerical digits and/or alphabetical symbols, or even other symbols. For example, the first character or variable may be the letters "EF". It is preferred that the first character generator be a random character generator so that the first variable is randomly generated, or at least appears to a user to be randomly generated. In this way, the user does not know and cannot anticipate which variable will be generated by the first character generator.
Once the first variable is generated, it is outputted from the system such as by a display.
Thus, the letters "EF" may appear on a visual 'display such as a liquid crystal display or a lightemitting diode display, or may appear on the usual cathode ray tube display used with computers.
A second character generator then generates a second character or variable which has a predetermined relationship to the first character.
The first and second variables may be related in an infinite number of ways. They may be related by means of some functional or mathematical relationship or may be randomly related by a preset table, such as the table shown in Fig. 2.
In order for a user to "unlock" the system, the user must take the first variable which is displayed to him, and, using a "key", determine the proper second variable. If the variables are related by a table, the authorized user of the system would have a table, such as the table of Fig. 2, available to him in some form, such as on a cylinder as shown in Fig. 3. With the first variable displayed as "EF", the user would go down the table of Fig.
2 to row "E" and across to column "F". He would then find the second variable, the letter "T".
The user then inputs the letter 'T" into the system, such as through a keyboard, and a character comparator in the system compares this user generated second variable with the second variable internally generated by the second character generator in the system. If such variables are the same, some type of locking mechanism is operated to unlock and allow access to the thing protected. If the variables are not the same, access is denied. The user may be afforded another chance to input an answer, or may be required to again go through the process of determining a second variable after a new first variable has been generated. For example, the first variable "CG" may be generated and displayed.
This time, the user would have to input the letter "D" in order to gain access. With the table of Fig.
2, the first set of variables is all combinations of two letters that can be made using the letters A through H as the first letter of the two letter variable and using the letters A through K as the second letter.
While the table of Fig. 2 is illustrated as a simple table, in practice, such table would be made much larger so that it would be difficult and time consuming to copy. Thus, the table could have rows and columns for the whole alphabet plus double letters, combinations of capital and small letters or letters and numbers. A very large table could be made. Further, rather than being printed on a flat sheet of material which could be easily mechanically copied such as by a copy machine, it would be provided in a form such as the cylinder shown in Fig. 3. A cylinder is very difficult to copy in a copy machine. Other shapes, particularly ones having curved surfaces such as a sphere, could be used. The table surface could be covered with a colored material or filter so that copying it is difficult, or the table itself could be made in colors that do not copy well.To increase the time and inconvenience in manually copying such table, a set of several tables could be used.
The first variable could then show "cm 1" meaning row "C", column "F" of table "1".
Rather than using tables, a preprogrammed device such as a hand-held calculator, Fig. 4, could be used. In such instances, when the system displays the first variable, such as the number "1 5", this number is entered into the calculator 20 by means of keyboard 21. The calculator is set to run a preset program that can be of any length and complexity and to then display the second variable via display 22. The variable displayed is then entered by the.user into the system where it is compared with the second variable generated by the system's second character generator. Using such a preprogrammed calculator, the relationship between the first variable and the second variable can be made so complex that it would be virtually impossible to determine such relationship emperically, or to "break the code".Also, in calculating the second variable, the first variable can be broken up to be entered into such calculator as actually two or three entries to the calculator program. Thus, the system's first variable may be the number "2135". This could mean in the preset program that the number "21" is entered into the calculator first as a first entry into the calculator program and the number "35" entered as a second entry into the calculator program. However, this is all considered the first variable in the system.
While any type of programmable calculator could be used, a relatively simple circuit for use with the system is illustrated in Fig. 5. A single chip microcomputer IC1, such as a National Semiconductor COPS 421 L, is connected and programmed to handle all necessary functions. A nine volt battery 23 is connected through on-off switch 24 to provide power to IC 1. Any power supply which supplies between positive four and nine volts to IC1 could be used. Resistor R1 and capacitor C1 are provided to set the frequency of the internal clock of IC1.
Four conductors 25,26, 27, and 28, Fig. 5, are connected to four programmable output terminals Al through A4 of IC1 and are arranged as a matrix with four conductors 29, 3q, 31, and 32 connected to four programmable-input terminals B1 through B4 to form a four by four matrix as shown. This matrix has sixteen points where a conductor connected to an output terminal crosses over a conductor converted to an input terminal. This matrix is physically positioned under keyboard 21, Fig. 4, so that one key of the sixteen key keyboard is over each of the sixteen wire intersections. In normal condition, the wires would not touch at the intersection where they are shown crossing so no contact between the output and input wires would be present. When a button is pressed, contact between the input and output wires at the intersection under that button will occur. This is a standard type of keyboard arrangement used with many hand-held calculators.
The four output conductors 25 through 28 are also connected to four single digit displays 33, 34, 35 and 36, respectively, which make up display 22. The single digit displays may each be a Litronix MAN-4.
Seven additional programmable output terminals of IC1, labeled C1 through C7, are connected to each of the displays in parallel.
The microcomputer IC1 is programmed to scan the four output lines 25 through 28 repetitively by sequentially putting a low signal, i.e. zero volts, on each of the four lines while the remaining three lines are high, i.e. plus five volts. This supplies power to the keyboard matrix and sequentially operates each of the displays. A display is caused to operate when its control input goes from plus five volts to zero volts. The scan is rapid enough so that although each display is operated sequentially, each display appears to the eye to be on continuously.
When a key of keyboard 21 is depressed so that one of the output wires 25 through 28 contacts one of the input wires 29 through 32, an input signal will appear on the appropriate input terminal B1 through B4 in conjunction with an output at one of the terminals Al through A4.
Thus, if button "2" of keyboard 21 is depressed, a high signal is produced on input line 30 which goes low when output line 27 goes low. This input represents the number "2" to the computer.
Similarly, the depressing of other buttons of keyboard 22 will cause other combinations of output and input signals representing the respective numbered keys. Since the scan of the output conductors is relatively rapid, the computer IC1 is programmed to recognize several similar inputs as a single inputs, and to require several scans of no input to separate consecutive inputs.
The microcomputer IC1 is programmed to accept the first variable as entered by the user via the keyboard, and to generate a variable having a predetermined relationship to that first variable.
For example, the predetermined relationship may be to double the input, add fifty, and rotate left, i.e.
move the leftmost digit of the answer to the rightmost position and move other digits appropriately. Thus, if the first variable was the number "15", the second variable would be (15 x 2) + 50 = 80, or in four digits 0080. After rotating left, the second variable would end up 0800. The complexity of the relationship between the first and second variable is limited only by the capability of the particular microcomputer used.
The second variable as determined by IC1 is displayed on display 22. The seven output terminals C1 through C7 each control one segment of the seven segments making up each digit. Thus, signals appear on terminals C1 through C7 to cause each display to form the first digit of the calculated second variable simultaneously with a low signal on output line 25 to thereby cause that digit to appear in display 33 as the leftmost digit of display 22. Signals appear on terminals C1 through C7 to cause the displays to form the second position of the calculated variable simultaneously with a low signal on line 26 causing that digit to appear in the second digit from the left in display 22.Similarly, displays 35 and 36 forming the digits in the third and fourth position from the left in display 22 appear simultaneously with low signals on lines 27 and 28, respectively.
A chip such as described for IC1 is ordered from the chip manufacturer with a memory containing a particular program desired and designed by the system designer. Thus, the program as described above would be designed by the system designer for use in a particular system or set of systems and then supplied to the system designer, to be supplied to the system user as a preprogrammed unit. Alternately, a microcomputer chip having a field programmable memory, but otherwise similar to It1, such as a National Semiconductor COP 402, could be used which, rather than being programmed by the chip manufacturer according to system designer specifications, can actually be programmed by the system designer himself, and then similarly supplied to the system user as a preprogrammed unit.
The same type of hand-held, preprogrammed calculator could be used without a keyboard or display by making the calculator plug directly into a socket associated with the system so that a user would plug the calculator in, the system would supply the first variable directly to the calculator which would generate its second variable and supply it directly back to the system. Although in such instance the user is merely plugging his "key" into the system to unlock it, the user is still involved in supplying the "key" and, for purposes of this invention, the calculator device or "key" is still considered as a user operated device for determining the second variable, and the user is considered as providing the input to the calculator and entering the second variable into the svstem.
by the act of plugging in the calculator.
One important use of the system of the invention is in protecting computer programs from unauthorized use.
Today most computers are of general purpose type where they are programmed to do specific jobs, rather than being specially wired to do those jobs. Thus, programs which enable a computer to do certain jobs may be very valuable. However, most programs are supplied on magnetic tape or discs and, as such, programs may be easily copied from one tape or disc to another. Further, once a program is loaded into a computer, that computer, in some instances, can transfer a program directly to another computer.
Prior art program-protection systems attempt to make it difficult to copy a program from one disc or tape to another by means of scrambling the program or putting program codes in areas of a disc not usually copied. Such systems, however, can generally be easily broken. The system of the invention, rather than being directed to stopping the actual copying of the program, limits access to the program to only authorized users. Thus, although a program may be copied from a disc or tape, it cannot be used without going through the security system described.
In order to use such system in conjunction with a computer program, when a program is called up for use in the computer, the program itself randomly generates the first variable and displays it. The type of display will vary with the computer equipment used. After display of the first variable, the user then has to determine a second variable and enter it into the computer. The computer is programmed to generate the second variable on its own and to compare it to the second variable entered by the user. If they correspond, the program, in effect, unlocks itself and the computer proceeds to run the program. If they do not correspond, the computer can generate a second first variable, or can be set to dump the program from its memory, or take other appropriate action.
It has been found in general that satisfactory security is obtained if the user is given three chances to come up with a proper second variable before dumping the program from its memory.
This makes allowance for any mistake a user may make in determining the second variable even though he has a proper "key", but does not allow unlimited trial and error.
Rather than implementing the system when the program is initially called up for use in the computer, the program may be set so that the second variable is required to be supplied at various other places and set to be activated only at certain times, on a random basis, or on some other preset basis. For example, the program may be called up for use in the computer and function normally, but at some random point during use, may generate the first variable and ask for the second variable before continuing its operation.
It has been found particularly effective to call for operation of the system at critical function points in a program. For example, with a word processing program it is generally required that after the creation of a new document, or after the editing of a document has been completed, the new or edited document must be saved and stored. It may be desirable to require generation of the second variable and its input to the computer by the user after creating or editing a document, but prior to storage of such document. Then, unless the user can input the correct variable, he cannot store the document and his work is lost.
Rather than calling for the variable each time a document is to be stored, it may be desirable to call for the input of the second variable only sometimes when the document is to be stored.
Whether or not the input of the second variable is required could be related to the length of the document to be stored or to the number of key strokes exercised in creating or editing the document so that the program would operate normally for short documents, but require the user to show that he is actually an authorized user by the input of the correct variable only after he has expended much time and effort and stands to lose the product of that effort.
It should be understood that there will be an endless variety of ways of actually using or implementing the security system in conjunction with a computer system.
The actual programing of the system will vary from program to program and with the equipment for which the protected programs are written.
Such programing, however, will be obvious to a person skilled in the art from the above description of the system, so is not detailed here. The actual relationship between the first and second variables may be determined by the programmer and included in the program when written or may be determined by the supplier of the calculator unit, but disclosed to the programmer so that the same relationship may be programmed into the computer program.
The complexity of the relationship between the first and second variables and the manner in which the user generates the second variable will vary with the value of the program being protected. Thus, for a computer game program where the program itself may cost only twenty to thirty dollars, an inexpensive device, such as a form of the chart described, will be supplied with the program to the authorized user. Where a complex data processing program costing several thousand dollars or more is being protected, a device such as a preprogrammed, hand-held calculator can be used and supplied to the authorized user of the program along with the program.
A presently preferred embodiment of the calculator unit for use with computers is shown in Fig. 6. Rather than being hand held, the calculator, indicated generally as 40, is designed to be mounted on the keyboard 41 of a computer. No electrical connection to the computer is necessary so the unit 40 may be mounted in any position about the keyboard which will not interfere with normal computer operation. The unit 40 may be secured to the keyboard, or to other areas of a computer work station, by various means such as by tape or other adhesive. Also, the unit 40 could be kept as a portable unit and not secured at all.
Calculator unit 40 is designed to be used for many different programs which may be protected by the system and run in the same computer. Unit 40 contains a keyboard indicated generally at 42 made up of six keys represehting the numbers one through six. While additional keys could be provided, it has been found that for purposes of the invention, six keys are sufficient. In addition to keyboard 42, unit 40 has an enter key 43, a display 44, and a receiving pocket 45 adapted to receive and hold in electrical communication therewith an integrated circuit package 46. As previously described, each program protected by the system will generally have its own individual formula relating the first and second variables.
With the calculator unit shown in Fig. 6, rather than a separate calculator for each program, the same unit is used, but the integrated circuit which contains the preprogrammed formula, and sometimes other data, is changed when the program is changed. Thus, rather than a complete calculator for each program protected by the system, the user would be supplied with an individual integrated circuit package 46 for each program. When a particular program is to be used in the computer, the program's associated integrated circuit package is plugged into the universal calculator unit 40.
The circuitry of calculator unit 40 may be similar to that shown in Fig. 5 for the calculator unit 20 of Fig. 4 with obvious changes for the reduced number of keys, the number of keys being seven in calculator 40 as opposed to sixteen for calculator 20. The integrated circuit microcomputer unit IC1 of Fig. 5 is the removable integrated circuit package 46 of Figs. 6 and 7. It is to be understood that the circuitry shown in Fig. 5 is merely illustrative and that many obvious variations can be made in adapting the invention to various forms of calculator units or various circuit components.
In the basic system described, the computer program or other lock device generates a first variable and asks the user to generate and input a second variable, thus requiring the user to input the first variable into his calculator unit each time a second variable is required. In some instances, it is desirable to eliminate some of the steps and for this purpose, automatic generation of the variables may be provided for. With automatic generation of the variables, not only is the second variable related to the first variable by some predetermined relationship, but the successive first or second variables are also related by some predetermined relationship so that the calculator and computer both know what the successive variables should be.Thus, once a first variable has been generated by the program and entered into the calculator unit by the user, and a corresponding second variable generated by the calculator unit and entered into the computer, the program and the calculator have been synchronized. Both the program and the calculator then can automatically generate the successive first variables and their associated second variables without the user actually keying the first variable into the calculator. In use, after synchronization, when the program asks for the input of the second variable, the user merely pushes the enter button 43 on the calculator and the correct second variable is displayed by display 44. This saves the user the time required to actually key the first variable into the calculator unit. The user still must enter the second variable displayed into the computer.Rather than automatically generating the first variable through a predetermined relationship to the previously generated first variable and then generating the corresponding second variable, the second variable could be related through a predetermined relationship so that a second variable is generated directly from the preceeding second variable upon depression of enter button 43. The actual method used for generating the variables and for operation of the program is a matter of choice for the programmer.
If the computer program and the calculator unit become unsynchronized so that the wrong second variable is entered into the computer, or if for some other reason the user enters the wrong second variable, the computer program would then generate a new first variable and require the user to go through the complete process of generating the second variable. The computer program could also either randomly, or after so many automatic generations, require the user to go through the entire process of actually keying in the first variable to ensure that the user is actually the authorized user and has not just obtained the series of second successive variables in advance.
Further, the program could keep track of the number of times a wrong second variable is entered, possibly indicating unauthorized use of the program, and be programmed to take action such as slowing down or refusing to operate after a certain number of wrong entries.
It is also possible to make the user operated means for generating the second variable, i.e. the calculator unit, itself intelligent so that it can keep track of various things such as the number of times it has been used, the date and time, etc. In fact, it is preferred that the calculator unit 40 also contains standard calendar circuitry so that when the display 44 is not showing a second variable, it is showing the time and/or date. With an intelligent calculator or integrated circuit 46, the system may be arranged so that in addition to merely generating first and second variables, the computer program and the calculator can actually communicate between one another.To communicate, the computer program may generate a request for information which, while being in the general format of a first variable and indistinguishable from a first variable to the user, is distinguishable by and understood by the calculator unit. The calculator unit would respond to the computer and supply the requested information in a format generally the same as that of a second variable, and again, to the user, indistinguishable from the second variable. For example, if the computer program wishes to know the date or time, it could send a request to the calculator which, in turn, would supply the date and time information. If the program desired to know how many times the calculator unit had been used to generate a second variable, it could ask for that information and, again, the calculator unit would supply such information.In addition to straight requests for information and straight responses, certain information may be coded on the actual first or second variables. Thus, time and date information may be encoded into the second variable enabling the computer program to determine if the second variable being entered into it has just been generated or comes from a list of previously generated variables. If desired, the program can require that all valid second variables entered have current date or time information.
In addition, with time and/or date information encoded in the variables entered into the computer, it is possible to implement restrictions on access according to time and date. Thus, if it is desired that a program can be used only between certain times of the day or only on certain days of the week or year, the program can be set to operate only if the time and/or date information encoded into the second variable indicates an allowable time. If a forbidden time is indicated, appropriate steps would be taken by the program, and access would not be granted.In some cases, the date and time information encoded into the second variable need not indicate to the computer the actual time or date, but may merely be a change in the second variable so that if the second variable is generated during a certain time period, it will be a valid second variable, but if generated during another time period, it is changed enough so that it is no longer recognized by the computer as a valid second variable.
Where the calculator is able to keep track of the number of times it has been used to generate a second variable, it can be programmed to stop generating second variables after a predetermined number of uses. This feature can be advantageously used in connection with the trial use of software or the renting of software where only a certain number of program uses have been authorized or paid for.
With the arrangement of the calculator as shown in Fig. 6, and if the user has several programs protected by the system, it is advantageous to have a master type of integrated circuit available which can absorb and hold the programs and program variables contained on several of the individual integrated circuits which would be supplied as individual integrated circuit packages 46 with each of the individual programs.
In such instance, one integrated circuit package 46 could be used with several different protected programs. In order to program a master unit, the user's calculator must be programmed to facilitate the absorption and transfer of programs and variables from several integrated circuit packages 46 into a master integrated circuit. If the user's calculator does not have that capabiiity, the user could have such a master created by the software vendor or other party having the necessary capability.
In addition to protecting a computer program, such system can be effectively used in a computer to control access to certain data stored in the computer.
Rather than protecting computer programs or information stored in a computer where the system is programmed into the computer, the system could be easily built, either using a micro computer programmed to operate as described, or using hardwire circuitry for each of the blocks of Fig. 1, to operate electrically operated locks to protect premises from unauthorized entry. Thus, the door to a room could be provided with an electrically operated lock and a system of the invention provided in proximity to such lock, or at a remote location, where a button could be pressed to energize the system and cause display of the first variable. The person operating the system would then determine the second variable and enter it into the system. If the second variable is correct, the system would energize the lock to thereby allow the door to be opened and access to the premises given. The components and circuitry needed for such a system would be obvious to a person skilled in the electronics art so are not set forth in detail here.
Whereas this invention is here illustrated and described with specific reference to an embodiment thereof presently contemplated as the best mode of carrying out such invention in actual practice, it is to be understood that various changes may be made in adapting the invention to different embodiments without departing from the broader inventive concepts disclosed herein and comprehended by the claims that follow.

Claims (20)

1. A security system for controlling access to property, comprising first character generating means for generating a first variable which is one of a first set of variables; second character generating means for generating a second variable having a predetermined relationship to said first variable: output means for outputting said first variable to a user; input means for the user to enter a variable into the system; character comparator means for comparing the second variable generated by the second character generator means with the variable entered by the user; access lock means for granting access to the property if the two variables compare favorably; and separate user operated means for entering said first variable and generating said second variable pursuant to said predetermined relationship.
2. A security system according to Claim 1, wherein the user operated means is a preprogrammed calculator having a user operated input, an output, and having the predetermined relationship between the first variable and the second variable preprogrammed thereinto whereby the user enters the first variable displayed by the system into said calculator and said calculator determines and outputs the second variable which the user then enters into the input means of the system.
3. A security system according to Claim 2, wherein the output means for outputting the first variable is a visual display of such variable.
4. A security system according to Claim 3, wherein the input means for the user to enter a variable is a keyboard.
5. A security system according to Claim 2, wherein the first variable may include a special instruction to the calculator, wherein the calculator includes means for examining the first variable to determine if a special instruction is present; and wherein the calculator includes means for carrying out special instructions.
6. A security system according to Claim 5, wherein the means for carrying out special instructions includes means for modifying the second variable.
7. A security system according to Claim 6, wherein the means for modifying the second variable modifies such variable to include information to be transferred from the calculator to the system.
8. A security system according to Claim 7, wherein the calculator includes means for determining date information; and wherein the means for modifying the second variable modifies such variable to include date information.
9. A security system according to Claim 7, wherein the calculator includes means for determining time of day information, and wherein the second variables may be modified to include time of day information.
10. A security system according to Claim 9, wherein the second variable is modified during certain time periods and not modified during other time periods.
11. A security system according to Claim 7, wherein the calculator includes means for determining the number of times it has generated a second variable; and wherein the means for modifying the second variable modifies such variable to include usage information.
12. A security system according to Claim 2, wherein the successive first variables have a predetermined relationship; wherein the calculator includes means for generating successive first variables according to said predetermined relationship; and wherein first variables may be entered into the calculator by operation of the means for generating successive first variables.
13. A security system according to Claim 2, wherein the successive second variables have a predetermined relationship; and wherein the calculator includes means for generating successive second variables from previously generated second variables without corresponding entry of the first variable.
14. A security system according to Claim 2, wherein the calculator includes a removable integrated circuit and wherein the information preprogrammed into the calculator is contained in said integrated circuit so that the preprogrammed information may be easily changed by the user by removing one preprogrammed integrated circuit and inserting another.
1 5. A security system according to Claim 14, wherein several properties are to be protected using a single calculator; and wherein a separate preprogrammed removable integrated circuit is provided for each property so that when access is desired to a particular property, the associated removable integrated circuit is inserted into the calculator which is then used in association with that property.
1 6. A security system according to Claim 14, wherein several properties are to be protected using a single calculator; and wherein a single integrated circuit is programmed to contain the separate preprogrammed information associated with each of the several separate properties so that a single integrated circuit can be inserted into the calculator which is then used in association with those several properties.
1 7. A security system according to Claim 2, wherein the calculator input means is adapted to mate with the output means from the system so that the first variable is outputted to the user by being transmitted directly to the calculator, and said calculator output means is adapted to mate with the input means of the system so that the variable output of the calculator is entered into the system by the user by being transmitted directly to the system from the calculator.
1 8. A security system according to Claim 2, wherein the property to be protected is a computer program and wherein the computer itself is programmed to provide all system functions except the separate user operated means.
19. A security system according to Claim 2, wherein the property to be protected is computer data and wherein the computer itself is programmed to provide all system functions except the separate user operated means.
20. A security system substantially as hereinbefore described with reference to the accompanying drawings.
GB08310954A 1982-04-22 1983-04-22 A security system Expired GB2120434B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US37090282A 1982-04-22 1982-04-22

Publications (3)

Publication Number Publication Date
GB8310954D0 GB8310954D0 (en) 1983-05-25
GB2120434A true GB2120434A (en) 1983-11-30
GB2120434B GB2120434B (en) 1986-03-12

Family

ID=23461655

Family Applications (1)

Application Number Title Priority Date Filing Date
GB08310954A Expired GB2120434B (en) 1982-04-22 1983-04-22 A security system

Country Status (3)

Country Link
JP (1) JPS5910680A (en)
FR (1) FR2525790A1 (en)
GB (1) GB2120434B (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2144247A (en) * 1983-07-30 1985-02-27 Alan Maton Security against copying recorded media
US4599489A (en) * 1984-02-22 1986-07-08 Gordian Systems, Inc. Solid state key for controlling access to computer software
GB2181582A (en) * 1985-10-11 1987-04-23 Victor Campbell Blackwell Personal identification device
GB2195477A (en) * 1986-09-19 1988-04-07 Roger Russell Data processing system security
US4812841A (en) * 1987-05-26 1989-03-14 Chen Hai C Computer-controlled password lock
US4970504A (en) * 1987-05-26 1990-11-13 Chen Hai C Security system
AU612209B2 (en) * 1988-12-05 1991-07-04 Hai Cheng Chen A security system
GB2241599A (en) * 1990-02-28 1991-09-04 Tunstall Security Limited Intruder alarm with remote reset
GB2244831A (en) * 1990-05-24 1991-12-11 Technistore Limited Control
GB2319646A (en) * 1996-11-12 1998-05-27 Sony Corp Resetting security code in electronic device
FR2802685A1 (en) * 1999-12-17 2001-06-22 Ibm Method and software for comparing a PIN number for a service card fitted with a variable display, a new value based on a random number is generated each time the card is used, this new value serves for the next card user
GB2376116A (en) * 2001-06-01 2002-12-04 Nicholas Paul Stevens Locking system using real-time clocks to produce release code and checking code
GB2434472A (en) * 2005-12-01 2007-07-25 Jonathan Geoffrey Milt Craymer Verification using one-time transaction codes

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60263867A (en) * 1984-06-12 1985-12-27 Mitsubishi Electric Corp Frequency and voltage converting device
JPS61296433A (en) * 1985-06-24 1986-12-27 Nintendo Co Ltd Software control system in external storage device
JPH0272466A (en) * 1988-09-08 1990-03-12 Yamatake Honeywell Co Ltd Method and device for input of password
IL135150A0 (en) * 2000-03-17 2001-05-20 Avner Geller A method and a system for secured identification of user's identity
FR2812423A1 (en) * 2000-07-26 2002-02-01 Yohan Amsellem Card payment for an Internet transaction, uses code table prepared when card is manufactured with server interrogation of user who must return correct entries from the code table
FR2843217A1 (en) * 2002-08-01 2004-02-06 Patrick Uzan Secure remote payments over the Internet or by telephone, uses coded grid send by payment handlers to user to encode card data, which is decoded using a customer identifier to locate starting point on the grid

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1256730A (en) * 1969-01-15 1971-12-15

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4310720A (en) * 1978-03-31 1982-01-12 Pitney Bowes Inc. Computer accessing system
US4320387A (en) * 1978-12-28 1982-03-16 Powell William S Information communicating apparatus and method
FR2469760A1 (en) * 1979-11-09 1981-05-22 Cii Honeywell Bull METHOD AND SYSTEM FOR IDENTIFYING PEOPLE REQUESTING ACCESS TO CERTAIN MEDIA
DE3007598A1 (en) * 1980-02-28 1981-10-08 Siemens AG, 1000 Berlin und 8000 München MIcroprocessor controlled access of equipment - has character generator with converter coupled to comparator to control access
JPS5759248A (en) * 1980-09-27 1982-04-09 Sofuia Syst:Kk Prevention device for surreptitious use of program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1256730A (en) * 1969-01-15 1971-12-15

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2144247A (en) * 1983-07-30 1985-02-27 Alan Maton Security against copying recorded media
US4599489A (en) * 1984-02-22 1986-07-08 Gordian Systems, Inc. Solid state key for controlling access to computer software
GB2181582A (en) * 1985-10-11 1987-04-23 Victor Campbell Blackwell Personal identification device
GB2195477A (en) * 1986-09-19 1988-04-07 Roger Russell Data processing system security
GB2195477B (en) * 1986-09-19 1990-07-18 Roger Russell Data processing system security
US4812841A (en) * 1987-05-26 1989-03-14 Chen Hai C Computer-controlled password lock
US4970504A (en) * 1987-05-26 1990-11-13 Chen Hai C Security system
AU612209B2 (en) * 1988-12-05 1991-07-04 Hai Cheng Chen A security system
GB2241599A (en) * 1990-02-28 1991-09-04 Tunstall Security Limited Intruder alarm with remote reset
GB2241599B (en) * 1990-02-28 1992-09-23 Tunstall Security Limited Intruder alarm with remote reset
GB2244831A (en) * 1990-05-24 1991-12-11 Technistore Limited Control
GB2319646A (en) * 1996-11-12 1998-05-27 Sony Corp Resetting security code in electronic device
GB2319646B (en) * 1996-11-12 1998-10-28 Sony Corp Electronic device having resettable security code and method for resetting security code
US6323752B1 (en) 1996-11-12 2001-11-27 Sony Corporation Electronic instrument having resettable security code and method for resetting security code
FR2802685A1 (en) * 1999-12-17 2001-06-22 Ibm Method and software for comparing a PIN number for a service card fitted with a variable display, a new value based on a random number is generated each time the card is used, this new value serves for the next card user
GB2376116A (en) * 2001-06-01 2002-12-04 Nicholas Paul Stevens Locking system using real-time clocks to produce release code and checking code
GB2434472A (en) * 2005-12-01 2007-07-25 Jonathan Geoffrey Milt Craymer Verification using one-time transaction codes

Also Published As

Publication number Publication date
GB8310954D0 (en) 1983-05-25
JPS5910680A (en) 1984-01-20
FR2525790A1 (en) 1983-10-28
GB2120434B (en) 1986-03-12

Similar Documents

Publication Publication Date Title
GB2120434A (en) A security system
US3806882A (en) Security for computer systems
EP0046763B1 (en) Keyboard operated security apparatus
US5023908A (en) Method and apparatus for personal identification
US5367572A (en) Method and apparatus for personal identification
US4339798A (en) Remote gaming system
US5168520A (en) Method and apparatus for personal identification
US4467424A (en) Remote gaming system
US5821871A (en) Authentication method
US6362893B1 (en) Security printing and unlocking mechanism for high security printers
CN101233469B (en) Memory lock system
KR0146434B1 (en) Method for confidential information input and associated terminal
JP2709059B2 (en) Data encryption device and method of manufacturing the same
ATE125054T1 (en) SYSTEM FOR SECURE DATA EXCHANGE.
EP0758109B1 (en) Method of processing and comparing a password
AU649190B2 (en) Method and apparatus for personal identification
US4458142A (en) Programmed electronic keycorder unit
US6055635A (en) Method and device for facilitating access to a multitude of alphanumeric sequences
WO1990012464A1 (en) Method and apparatus for protecting material on storage media
JPH10154131A (en) File access management system
JPH0466141B2 (en)
JP2899480B2 (en) PIN code input panel
JP2689287B2 (en) Online terminal
GB2190775A (en) Preventing unauthorised access to information
JPS62231353A (en) Ic card

Legal Events

Date Code Title Description
732 Registration of transactions, instruments or events in the register (sect. 32/1977)
PE20 Patent expired after termination of 20 years

Effective date: 20030421