Copy prevention apparatus and method therefor

Abstract: In the copy prevention apparatus and its method, it is discriminated whether an object is legally copied or not; a constant event is generated at or below a predetermined probability; and an abnormal operation is executed only if the two conditions of the object having been determined as an illegal copy, and the event having been generated, are satisfied. Therefore, even if the object is determined as an illegal copy, the abnormal operation is not always executed, but executed at or below a predetermined probability. Although the occurrence of the abnormal operation can be indicated to the user immediately, it is also preferable to keep the abnormal operation occurrence secret for a time and inform the user of the occurrence an appropriate time later.

Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to a copy prevention apparatus and a method of preventing intellectual property such as computer software or semiconductor circuits from being copied illegally. Description of the Prior Art In software on the market for personal computers, a special countermeasure against illegal copying has been conventionally provided for the memory medium. For example, copy program operation is disabled by inhibiting part of memory medium from being read by the ordinary method. Furthermore, even if software is copied without copying the inhibited part of the memory medium, when the inhibited part can be read normally at the start of software or when the erroneous phenomenon caused when the inhibited part is not read, is different from that determined by the original software, the program is stopped because the software itself determines that the program has been copied illegally. Such a copy protecting system for software protection is disclosed in US-A-4 584 641. Furthermore, in the case of semiconductor circuits such as microprocessors, unnecessary gates disabled by ion implantation have been conventionally provided for copy prevention, so that when the gates are copied, the circuit will not operate normally. In the prior-art software copy prevention method, however, even if some countermeasure has been considered for the memory medium, since violators who copy software, compare the illegally copied software with the original, and improves the copying means by repeatedly analyzing the difference between the two until the copied software can operate normally, it has been difficult to prevent software from being illegally copied in this manner. On the other hand, in the case of software, since the value of software cannot be recognized until the software is actually used, when the software is protected perfectly, there exists a problem in that the user must purchase software for which value is unknown at the risk of disuse. Furthermore, in the case of semiconductor circuits, violators who want to copy the circuits can realize the circuits on bread boards as they are by repeatedly searching for the causes when the circuits do not operate normally. As described above, in the prior-art software copy prevention method, new methods of removing the copy protection are always studied, and therefore a vicious and meaningless cycle of protection development and protection removal is repeated. On the other hand, there exists another problem in that the value of software is recognized only after the software has been tested. Therefore, there exists a strong need for providing a more perfect means for preventing intellectual property such as software or semiconductor circuits from being copied illegally. SUMMARY OF THE INVENTION With these problems in mind, therefore, it is the primary object of the present invention to provide a copy prevention apparatus which can effectively prevent illegal copying by making it difficult to confirm that copy protection has been removed, but that on the other hand, can permit the copy to be tested normally for confirmation of the contents or values thereof. It is another object of the present invention to provide a copy prevention method which can effectively prevent illegal copying but that can permit the copy to be tested. According to one aspect of the present invention, a copy prevention apparatus is provided, which comprises illegal copy discriminating means for discriminating whether an object has been legally copied; event generating means for generating a constant event at or below a predetermined probability; and abnormal operation generating means for generating a predetermined abnormal operation when said illegal copy discriminating means discriminates an illegal copy and said event generating means generates the constant event. According to another aspect of the present invention, a method is provided, which comprises the steps of discriminating whether an object is legally copied; generating a constant event at or below a predetermined probability; and generating a predetermined abnormal operation only when an illegal copy is discriminated and the constant event is generated. According to the present invention, when an illegal copy is found, an abnormal operation is generated not always but with a predetermined probability. Therefore, it is difficult for illegal people who want to copy, to discriminate whether the copy is the same as the original or whether the protection for the original has been removed perfectly. In other words, the prior-art methods have been studied to make it difficult to remove the copy protection. However, the method of the present invention makes it difficult to discriminate whether the copy protection has been removed. Therefore, it is difficult to find the location of the protection, and the copied software cannot be used properly or sold in a large scale because there exists a probability that protection still remains even if the copied software appears perfect for the time being. Furthermore, when the event generation probability is determined at such a low value that no abnormal operation will be generated in the ordinary test, it is also possible to allow the copied software or circuits to be used for trial only. In one modification of the present invention, when an illegal copy is found and the above event is generated, it is also possible to temporarily keep an abnormal operation generation secret from the user and to inform the user of the abnormal operation later. In this case, it becomes difficult to check when abnormal operation occurred, and therefore to find the secret protection. BRIEF DESCRIPTION OF THE DRAWINGS The features and advantages of the copy prevention apparatus and the method of the present invention will be more clearly appreciated from the following description taken in conjunction with the accompanying drawings in which: FIG. 1 is a block diagram showing a copy prevention apparatus of the present invention; FIG. 2 is a block diagram showing an embodiment of the copy prevention apparatus of the present invention for protecting personal computer software; FIG. 3 is a flowchart for assistance in explaining the operation of a prior-art copy prevention apparatus for protecting personal computer software; FIG. 4 is a flowchart for assistance in explaining the operation of the copy prevention apparatus of the present invention shown in FIG. 2; FIG. 5 is a flowchart for assistance in explaining another operation of the copy prevention apparatus of the present invention shown in FIG. 2; FIG. 6 is a prior-art circuit diagram showing a NAND gate; FIG. 7 is a prior-art circuit pattern diagram for realizing the NAND gate shown in FIG. 6 by a semiconductor device; and FIG. 8 is a circuit diagram showing another embodiment of the copy prevention apparatus of the present invention, for protecting a NOT gate formed by the semiconductor circuit shown in FIG. 7. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the copy prevention apparatus according to the present invention will be described hereinbelow by comparison with the prior-art prevention apparatus and with reference to the attached drawings. FIG. 1 is a block diagram showing a basic configuration of a copy prevention apparatus of the present invention. The apparatus comprises illegal copy discriminating means 1, event generating means 2, and abnormal operation generating means 3. Illegal copy discriminating means 1 checks whether a given object (i.e. copy) is the same as the original, and discriminates the given object as an illegal copy when not the same. Where the object is software, for instance, the difference between the object and the original is determined by checking whether a specific software portion (called protect) includes the contents which can generate an error. Furthermore, when the object is a semiconductor circuit, the difference is determined by checking whether an element, formed as a dummy and therefore inoperative in the original, is operative in the copy. Event generating means 2 generates a specific event at or below a predetermined probability. An example of an event generated with a certain probability is the specific current times (e.g. times with "00" seconds). This is because the specific times (e.g. "00" seconds) occur once within a predetermined time duration (e.g. 1 minute). Furthermore, in the case of a semiconductor circuit, it is possible to utilize an event where that a plurality of signals are all logically "1" or "0", because this event occurs with a predetermined probability. Means 3 generates a predetermined abnormal operation only if the two conditions of means 1 having discriminated an illegal copy, and means 2 having generated a predetermined event, are satisfied. Therefore, the abnormal operation is not necessarily generated whenever an illegal copy is discriminated, but at or below a predetermined probability. The copy prevention apparatus as described above can be realized in various modifications according to the object to be protected. For instance, where the object is computer software, the copy prevention apparatus of the present invention is usually incorporated in a computer system. That is, the copy prevention apparatus can be realized by means of a microprocessor, a program for operating the microprocessor, and auxiliary peripheral units in combination. In this case, the microprocessor functions as illegal copy discriminating means 1, event generating means 2, or the abnormal operation generating means 3, according to the progress of program execution. Where an object to be protected is a semiconductor circuit, the copy prevention apparatus is usually integrated on a semiconductor substrate together with the semiconductor circuit. Therefore, the copy prevention apparatus is to be copied simultaneously when the semiconductor circuit is copied. That is, when an illegally copied semiconductor circuit is used, since the simultaneously copied copy prevention apparatus is operative, an abnormal operation occurs with a predetermined probability. Preferred embodiments of the apparatus of the present invention will be described in detail hereinbelow of the case where the object to be protected is computer software or a semiconductor circuit, with reference to the attached drawings. First, a software copy prevention apparatus of the present invention will be described by comparison with the prior-art apparatus. FIG. 2 is a block diagram showing an embodiment of the apparatus of the present invention realized by a personal computer, which can protect software. A microprocessor 10 executes instructions in accordance with programs stored in a ROM 11 or a RAM 12; reads or writes new programs and data to or from a floppy disk 14 via a floppy disk controller 13; displays messages and data read by a keyboard 18 via a keyboard controller 17 on a CRT screen 16 via a CRT controller 15; and outputs executed results to a printer 20 via a printer controller 19. Furthermore, a real time clock 21 indicates the current time. In the personal computer as described above, in order to prevent the programs written on the floppy disk 14 from being copied illegally, a prior-art copy prevention program as shown in Fig. 3 has conventionally been included in programs loaded from a ROM or a floppy disk to a RAM. In this prior-art method, recording medium conditions are modified from the ordinary conditions at specific positions on a legal floppy disk, and if no errors occur when the specific positions are read, the floppy disk is determined to be an illegally copied disk. In more detail, control first reads programs from a floppy disk (in step S1) and starts program execution (in step S2). Therefore, control reads a specific position on the floppy disk (in step S3) and checks whether an error occurs or not (in step S4). If no error occurs (in step S4), control determines the floppy disk as an illegal disk and ends the program execution (in step S5). In contrast with this, if an error occurs (in step S4), control starts the normal program execution (in step S6). In contrast with the prior-art program as shown in FIG. 3, in the present invention a program as shown in FIG. 4 is loaded in the ROM 11 or a floppy disk to realize one embodiment of the present invention. In the same way as in the prior-art program explained with reference to Fig. 3, in this embodiment, a specific position on a floppy disk 14 is formed under conditions different from the ordinary medium conditions, and control determines the floppy disk as an illegal copy if no error occurs when this specific position is read. In more detail, with reference to Fig. 4, the microprocessor 10 reads programs from a floppy disk 14 now set (in step S10) and executes the program (in step S11). This specific position is checked while the program is being executed, without being limited to the time immediately after the program execution has been started as in the prior-art program shown in Fig. 3. At any time during program execution, control reads a specific position on the floppy disk (in step S12). If no error occurs (in step S13), control determines the floppy disk as an illegally copied floppy disk and only sets a flag (in step S14). In this case, even if an illegal copy is found, only a flag is set without interrupting the program execution. If an error occurs (in step S13), since this indicates a legal floppy disk, the flag is kept reset (in step S15). Thereafter, control reads the current time of the real time clock 21, when writing document data in a file in an application such as a word processor, for instance (in step S16), and checks whether the current time is a specific time (e.g. "00" seconds) (in step S17). If "00" second, control checks whether the flag is set because of the presence of illegal copy (in step S18). If set, control executes an abnormal operation (in step S19). This abnormal operation is such that the message "this document is formed by illegally copied word processor software" is added to the document data. As described above, even if an illegal copy has been found, the program continues to be executed normally. However, an abnormal operation is generated only when document data are written in a document file at a specific time. Therefore, immediately after the disk has been copied, the violator cannot know whether the disk has been copied perfectly or not. However, the user can know that the disk is illegal when an abnormal operation is generated sometime after the disk has been sold. Furthermore, even if an abnormal operation is generated while the copied disk is being tested, since the test operator first recognizes the abnormal operation when the document file is displayed again, the test operator cannot know when the abnormal operation occurred. In other words, violators who want to copy cannot determine when and how the abnormal operation occurs. In addition, since the abnormal operation occurs at a low probability and there exists no reproducibility, it is difficult to analyze and counter with the copy prevention method of the present invention. Therefore, if copied disks are used or sold on a large scale because software can easily be copied, since abnormal operations will appear in the future, violators who have copied disks illegally will lose their credit or sustain great damage, thus making being possible to effectively prevent software from being copied illegally. Furthermore, when a plurality of check points are provided, even if an effective countermeasure is taken against one check point, it is difficult to take all countermeasures against all the check points, thus making the software protection removal extremely difficult. In the case of software, it is practically impossible to read the program from an object code because of its great laborious work. In other words, when the program of the present invention is inserted midway in the program, it is impossible to find the location of the program. On the other hand, since the abnormal operation is not always generated in the illegally copied disks and therefore the software operates normally when only tested, it is possible to temporarily use the copied disk for trial in order to judge the value of the copied software. FIG. 5 is a flow chart showing another example of illegal copy preventing method of software, carried out in connection with the computer shown in FIG. 2. In this example, the determination of illegal copy is effected only in a case of occurring a predetermined event. More specifically, current time is read (S16) out of the real-time clock when a suitable time has passed after the initiation of a program, and only when the current time is a specific time (00 second), a predetermined position of the floppy disk is read out for checking whether the disk is copied illegally or not (S17, S12). When no error is found out in this check, the occurrence of an illegal floppy disk (abnormal operation) is displayed (S13, S19). The advantage of this example resides in that taking countermeasures against the check point is more difficult than in the example shown in FIG. 4. Since no check for illegality is carried out where a specific event is not found out (that is, the result of the current time check is not 00 second), whether the software of the floppy disk is illegally copied or not cannot be discriminated by simply investigating the content of the memory of the computer during a program is executed. That is, the position of the checking point in the software is not clear, and hence taking countermeasures against the checking point is difficult. The copy prevention apparatus applied to a semiconductor circuit will be described hereinbelow. FIG. 6 shows a NAND gate which has a logical function as Z = A·B . FIG. 7 is an example of layout pattern used to form this NAND gate by an N-MOS semiconductor device. In FIG. 7, since potential at a diffusion layer Z is pulled up by a depletion type transistor DTr, if potentials at polysilicon layers A and B are both at "1", the diffusion layer Z is connected to GND as Z = 0. In the case other than the above, the diffusion layer is kept at Z = 1. In the prior-art copy prevention method, when a gate of Z = A is required to be protected for instance, a polysilicon pattern B which looks as Z = A·B is additionally formed as shown in FIG. 6 and a region near a point of intersection of the polysilicon pattern B and the diffusion layer Z is formed into a conductive state by ion implantation, in order to disable the B gate. Since it is difficult to recognize the ion implantation by visual check, if ions are not implanted, the gate will be operated erroneously. In contrast with this, an embodiment of the present invention is configured as shown in FIG. 8. In the same way as in the prior-art NAND gate, in this embodiment, the B gate is disabled by ion implantation in the original circuit, so that Z = A is obtained irrespective of the logical value of the signal B. This B gate corresponds to the illegal copy discriminating means 1 shown in FIG. 1. Furthermore, an output terminal of a multi-input NAND gate C is connected to an input terminal of this disabled dummy gate B. This NAND gate corresponds to the event generating means 2 shown in FIG. 1, and the gates A and B correspond to the abnormal operation generating means 3 shown in FIG. 1. When the NAND gate shown in FIG. 8 is copied without implanting ions at the gate B, the gate functions as Z = A·B . However, since the output of the multi-input NAND gate C is always at B = 1 except B1 = B2, ..., B6 = 1, this gate C functions as Z = A as if this gate C is a legal circuit, thus making it difficult to discriminate the difference between legal and illegal semiconductor circuits. For instance, if all the input terminals B1, B2, ..., B6 are output signals of counters, an erroneous operation (abnormal operation) occurs only when all the counter output bits are at "1". However, no erroneous operation occurs in the cases other than the above case. Therefore, since an erroneous operation is generated at a low probability in the illegally copied semiconductor circuit, even if the copied circuit operates normally temporarily, it is impossible to use or sell these illegally copied circuits in full scale, because there will exist a great risk or damage for violators in the future. Therefore, when an explanation or message such that a novel copy prevention method is incorporated in this disk or semiconductor chip is attached onto the products, it is possible to effectively prevent illegally copied products. As described above, in the copy prevention apparatus according to the present invention, since it is difficult to discriminate between an illegal copy and a legal copy, it is not easy to find the protecting method incorporated in the original and therefore remove the protection. In addition, even if an illegal copy operates normally, since there exists a possibility that the protection method is still effective, violators who illegally copied software or semiconductor circuits cannot use or sell the copied products on a large scale, thus preventing illegal copy effectively. On the other hand, since the illegal copy operates normally when used temporarily for trial, for instance, it is possible to fulfil the user's hopes. The embodiments of the copy prevention apparatus and the method have been described only by way of examples, and therefore the present invention is of course not limited to these embodiments.

Claims: A copy prevention apparatus comprising: (a) illegal copy discriminating means (1) for discriminating whether an object is legally copied; (b) event generating means (2) for generating a constant event at or below a predetermined probability; and (c) abnormal operation generating means (3) for generating a predetermined abnormal operation if the two conditions of said illegal copy discriminating means having discriminated an illegal copy, and said event generating means generating the constant event, are satisfied. The copy prevention apparatus of claim 1, wherein said object includes computer software. The copy prevention apparatus of claim 2, wherein at least one of said illegal copy discriminating means, said event generating means and said abnormal operation generating means is composed of a microprocessor (10), a memory unit (11, 12) for storing program for operating the microprocessor, and peripheral units (13 to 21). The copy prevention apparatus of claim 2, wherein said illegal copy discriminating means discriminates an illegal copy by checking whether an error occurs or not when reading a specific position on the software. The copy prevention apparatus of claim 2, wherein said event generating means discriminates whether the current time is a specific time. The copy prevention apparatus of claim 5 wherein only at a time said event generating means discriminates that the current time is a specific time, said illegal copy discriminating means discriminates whether the object is an illegal copy. The copy prevention apparatus of claim 2, wherein said abnormal operation generating means outputs a predetermined message to a computer file unit as an abnormal operation. The copy prevention apparatus of claim 1, wherein said abnormal operation generating means keeps the abnormal operation secret from the user at a time point when an illegal copy is found and the event is generated but informs the user of the abnormal operation later to make it difficult to find time points at which abnormal operation occurs. The copy prevention apparatus of claim 1, wherein said object includes a specific semiconductor circuit. The copy prevention apparatus of claim 9, wherein said illegal copy discriminating means, said event generating means and said abnormal operation generating means are formed on the same semiconductor substrate together with the specific semiconductor circuit, and copied simultaneously when the specific semiconductor circuit is copied. The copy prevention apparatus of claim 10, wherein said illegal copy discriminating means includes a dummy element (B) incorporated in the specific semiconductor circuit, without functioning in an original, and generating an erroneous operation in the specific semiconductor circuit when functioning. The copy prevention apparatus of claim 10, wherein said event generating means includes a circuit (c) for discriminating whether a plurality of signals (B₁, B₂, ..., B₆) of an entire circuit including the specific semiconductor circuit change to a predetermined value simultaneously. The copy prevention apparatus of claim 11, wherein said abnormal operation generating means includes a specific semiconductor circuit in which said dummy element (B) is incorporated. The copy prevention apparatus of claim 10, wherein said illegal copy discriminating means is a dummy element (B) incorporated in the specific semiconductor circuit, without functioning in an original, and generating an erroneous operation in the specific semiconductor circuit when functioning; said event generating means is a circuit (c) for discriminating whether a plurality of signals (B₁, B₂, ..., B₆) of an entire circuit including the specific semiconductor circuit change to a predetermined value simultaneously; and said abnormal operation generating means is a specific semiconductor circuit in which said dummy element is incorporated. A method of preventing illegal copying, comprising the steps of: (a) discriminating whether an object is legally copied (S12 to S15); (b) generating a constant event at or below a predetermined probability (S16, S17); and (c) generating a predetermined abnormal operation only if the two conditions of an illegal copy having been discriminated, and the constant event having been generated (S18 and S19), are satisfied.

Inventors: MIYOSHI AKIO, MIYOSHI, AKIO
Applicants: TOSHIBA KK, KABUSHIKI KAISHA TOSHIBA
Application year: 1988
Main classification: G06F1
IPC codes: G06F1, G06F11, G06F21, H01L27, G06F12