Electronic payment system with inexpensive illegal acts detection scheme

Abstract: The present invention relates to a computer-based electronic payment system comprising a payer's check issuing computer (100, 100A) for issuing an electronic check, a payee's check processing computer (200, 200A) for receiving and processing the electronic check from the payee's check issuing computer (100, 100A) and transmitting each accepted electronic check; and a transaction executing computer (300, 300A) for receiving and processing the electronic check transmitted from the payee's check transmitted from the payee's check processing computer (200, 200A). The electronic check issued by the payee's check issuing computer (100, 100A) also has an issue time data indicating a time of issue of the electronic check. The payee's processing computer (200, 200A) records a check identifier of each electronic check being accepted by the payee's check processing computer (200, 200A) during a first prescribed period of time and refuses an acceptance of the received electronic check in case a time of issue is older than the first prescribed period of time or the check identifier is identical to any recorded check identifier of an already accepted electronic check. To the contrary, it accepts the received electronic check when the acceptance is not refused.

Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to an electronic payment system for realizing payments on computers electronically, which is suitable for a check acceptance system at a store for selling commercial goods in exchange to an electronic check issued by a consumer, or a check acceptance system at a bank for transferring from a consumer's account to a store's account according to an electronic check issued by a consumer. Description of the Background Art An electronic check system is a conventionally proposed scheme for realizing payments on computers electronically, which is described in Kevin O'Toole: "The Internet Billing Server: Transaction Protocol Alternatives", Carnegie Mellon University Information Networking Institute, Technical Report INI TR 1994-1, April 1994; and B. Clifford Neuman: "Proxy-Based Authorization and Accounting for Distributed Systems", Proceedings of the 13th International Conference on Distributed Computing Systems, May 1993, pp. 283-291, for example. The article 'Proxy based authorization and accounting for distributed systems' by BC Neuman (Proceedings of the international conference of distributed computing systems, Pittsburgh, May 25-28, 1993) discloses a proxy based authorization and accounting method for distributed systems, in which accounts are maintained on accounting servers. Each account contains a unique name, an access-control-list, and a collection of records, each record specifying a currency and a balance. Accounting servers support multiple currencies, either monetary or resource specific. Quotas are implemented by transferring funds of the appropriate currency out of an account when the resource is allocated and transferring the funds back when the resource is released. Accounts are identified as the composition of the principal identifier for the accounting server and the name of the account on the server. It is possible to transfer resources from an account on one server to one on another. The transfer of resources can be accomplished through two distinct mechanisms. The simplest mechanism is used when no guarantee is required that sufficient resources exist. A principal authorized to debit an account issues a numbered delegate proxy authorizing the payee to transfer funds from the payor's account to that of the payee. This check limits the resources that can be transferred, and the payee transfers up to that limit. If the payor uses a different accounting server than the payee, the payee grants its own accounting server a cascaded proxy for the check allowing the accounting server to collect the resources on its behalf. Subsequent accounting servers repeat the process until the payor's accounting server is reached. Once a check is paid, the accounting server keeps track of the check number until the expiration time on the check. If, within that period, another check with the same number is seen, it is rejected. Upon completion of a clients request, the server endorses the check and deposits it with its accounting server in an endorsement message. The endorsement is a restricted proxy that will be used for cascaded authorization. A restricted endorsement (e.g. for deposit only) is a delegate proxy, an unrestricted endorsement is a bearer proxy. In this case, the client and server do not share the same accounting server, so accounting server 1 the resources added to the server's account are marked as uncollected, adds its own endorsement and forwards the check to accounting server 2. If necessary, such endorsements can be repeated until the check reaches the client's accounting server, but in this case only one additional step is necessary. This distributed method for accounting requires out-of-band mechanisms to deal with checks returned for insufficient resources, or because they are forged or misdrawn, but the same is true in the real world. A second approach for transferring resources is used when a server requires a guarantee that sufficient resources have been allocated to the client, as is often the case when maintaining quotas. The approach is analogous to that of a certified check. The client draws a check and provides the details (the check number, the party to be paid, and the amount) to the accounting server. The accounting server places a hold on the resources and returns an authorization proxy to the client certifying that the client has sufficient resources to cover the check. The client presents the authorization proxy and the check to the end-server along with its application request. European Patent EP-A-0,732,662 is further referred to herewith. In the electronic check system, a person responsible for payment (referred hereafter as a consumer) creates a message (referred hereafter as a check) which plays a role of a check on a computer, and send it to a computer of a person intended to receive the payment (referred hereafter as a store) via a computer network. When the store transmits the received check to a computer of a bank (not necessarily limited to an ordinary bank and including any organization for managing transactions such as a credit card company), the bank transfers a specified amount from the consumer's account to the store's account according to the check, so as to complete the payment. Besides this electronic check system, there are other schemes for realizing payments on computers electronically such as an on-line transfer system and a prepaid card system, but the electronic check system has the following advantages in comparison with these other schemes. First, in the on-line transfer system, each sub-system constituting the system is always connected via a network with a host computer at a bank which makes the centralized management of the electronic payments, and requests the transfer by notifying a content of payment to the host computer as soon as each payment occurs. For this reason, the on-line transfer system requires a high communication cost, and a heavy processing load on the host computer. As a consequence, a cost required for each transaction is high and it is inconvenient for a payment of a small amount. In contrast, in the electronic check system, it is possible to adopt an off-line scheme in which payments are accumulated to some level and then transmitted to the host computer collectively, so that there is no need for each sub-system constituting the system to be always connected with the host computer. For this reason, a number of communications can be reduced and it is convenient for a payment of a small amount as well. Moreover, each sub-system is operable even under the off-line environment not connected to a network all the times. On the other hand, in the prepaid card system, the user carries a card recording a balance of an amount deposited in a bank in advance, and each payment is made by subtracting an amount of each payment from the recorded balance at a time of each payment. This prepaid card system has an advantage in that the payment can be made without requiring a connection to the host computer each time, just as in the electronic check system. However, this prepaid card system is associated with a problem in that, when the user's card is tampered by means of hardware to alter the recorded balance illegally, it is difficult to detect a person who committed the illegal act, and this could possibly lead to a failure of the entire system. In addition, this system is not very convenient for the user in that the card will be invalidated when the recorded balance becomes 0 and it requires a connection to the host computer in order to validate the card again. In contrast, in the electronic check system, the user who issued an illegal check can be identified from an identifier of the user attached to each check, so that the illegal user can be detected and a failure of the entire system can be prevented by expelling the detected illegal user from the system. As should be apparent from the above, the electronic check system is superior in terms of the transaction cost, the off-line performance, and the security, and considered as a prospective candidate for an electronic payment system to be utilized for the commercial transaction on a computer network targeting at general consumers, which is attracting much attention recently. A check used in this electronic check system usually contains a check identifier (ID) for uniquely identifying each check, in addition to an amount of payment. Moreover, it is common to assign the check identifier in a form containing an identifier of the consumer and an identifier of the store, in order to prevent conflicts among identifiers. A check is provided in a form capable of authenticating that it is created by a particular consumer by means of the digital signature (see Whitfield Diffie and Martin E. Hellman: "New Directions in Cryptography", IEEE Transactions on Information Theory, Vol. IT-22, No. 6, pp. 644-654, November 1976, for example). Consequently, a person other than that particular consumer can read the content of the check by decrypting it, but cannot create a new check as if it is created by that particular consumer in an attempt to receive the payment illegally. However, in this electronic check system, it is still possible to make an illegal copy of the check, and for this reason, the possibilities for the following two types of illegality cannot be denied. First, the store can commit the illegal act called "double charge". This is an illegal act in which the store transmits the check received from the consumer to the bank more than once, so as to obtain an amount greater than an amount to be actually paid by receiving the same payment for a number of times. On the other hand, the consumer can commit the illegal act called "double issue". This is an illegal act in which the consumer issues the same check more than once. Normally, the checks have identifiers which are mutually different from each other, but this identifier is to be assigned by the consumer. Consequently, it is possible for the consumer to issue a check for a certain payment using the same identifier as that already used for another payment, and gives these checks with the identical identifier to the respective stores. This "double issue" by itself may not cause any trouble as long as the bank makes the transfers among the accounts as usual by regarding these checks with the identical identifier as different checks. However, from the bank's point of view, the "double charge" and the "double issue" are indistinguishable. Consequently, the consumer can make the "double issue" and then claim that it is the "double charge" by the store, so as to pay only an amount less than an amount to be actually paid. In order to prevent this "double issue", it is possible for the store to record the identifiers of all the checks accepted in past and refuse to accept a check issued by a consumer by judging it as the "double issue" when this check uses the same identifier as that already used at that store. In addition, assuming that the "double issue" is prevented in this manner, it is also possible to prevent the "double charge" similarly. Namely, it is possible for the bank to record the identifiers of all the checks accepted in past and refuse to accept a check transmitted from a store by judging it as the "double charge" when this check uses the same identifier as that already used at that bank (on an assumption that the "double issue" is already prevented and therefore cannot occur). However, although it is possible to prevent the "double issue" and the "double charge" in this manner in principle, in order to be able to detect the "double issue" and the "double charge" without a failure, it is necessary to preserve records of all the checks used in past. Namely, in order to detect the "double issue" and the "double charge", it is necessary for the store and the bank to preserve an unlimited number of records of the checks, and these records can be enormously voluminous for the store and the bank which have a large number of customers. Therefore, apart from a need for a very large capacity memory device, a processing load required for searching out a particular identifier from this very large capacity memory device would also become unignorable. SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide an electronic payment system capable of suppressing a capacity of a memory device required for recording the identifiers of the already used checks and thereby reducing a required search time, while enabling the detection of the illegal copy of the electronic check without a failure. According to the present invention there is therefore provided a computer-based electronic check processing system according to the appended claims 1 and 11, and a method of computer based electronic check processing according to the appended claims 6 and 15. Preferred embodiments of the present inventions are defined in the dependent claims. Other features and advantages of the present invention will become apparent from the following description taken in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a schematic block diagram of an overall configuration of an electronic payment system according to the present invention. Fig. 2 is a block diagram of a detailed configuration of a consumer's check issuing system in the electronic payment system of Fig. 1 according to the first embodiment. Fig. 3 is a block diagram of a detailed configuration of a store's check processing system in the electronic payment system of Fig. 1 according to the first embodiment. Fig. 4 is a block diagram of a detailed configuration of a bank's check processing system in the electronic payment system of Fig. 1 according to the first embodiment. Fig. 5 is a block diagram of a detailed configuration of a bank's check processing system in the electronic payment system of Fig. 1 according to the second embodiment. Fig. 6 is a block diagram of a detailed configuration of a consumer's check issuing system in the electronic payment system of Fig. 1 according to the third embodiment. Fig. 7 is a block diagram of a detailed configuration of a store's check processing system in the electronic payment system of Fig. 1 according to the third embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS According to one aspect of the present invention there is provided a computer-based electronic check processing system, comprising: receiving means for receiving an electronic check having a check identifier and an issue time, the check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; memory means for recording a check identifier of each electronic check accepted during a prescribed period of time past of a current time; and acceptance judgement means for refusing an acceptance of a received electronic check when the issue time of the received electronic check is older than the prescribed period of time past of the current time or the check identifier of the received electronic check is identical to the check identifier of any already accepted electronic check recorded in the memory means, and accepting a received electronic check when the acceptance is not refused. According to another aspect of the present invention there is provided a method of computer-based electronic check processing, comprising the steps of: receiving an electronic check having a check identifier and an issue time, the check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; recording a check identifier of each electronic check accepted during a prescribed period of time past of a current time; and refusing an acceptance of a received electronic check when the issue time of the received electronic check is older than the prescribed period of time past of the current time or the check identifier of the received electronic check is identical to the check identifier of any already accepted electronic check recorded by the recording step, and accepting a received electronic check when the acceptance is not refused. According to another aspect of the present invention there is provided an article of manufacture, comprising: a computer usable medium having computer readable program code means embodied therein for causing a computer to function as an electronic payment processing system for processing an electronic check, the computer readable program means including: first computer readable program code means for causing the computer to receive an electronic check having a check identifier and an issue time, the check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; second computer readable program code means for causing the computer to record a check identifier of each electronic check accepted during a prescribed period of time past of a current time; and third computer readable program code means for causing the computer to refuse an acceptance of a received electronic check when the issue time of the received electronic check is older than the prescribed period of time past of the current time or the check identifier of the received electronic check is identical to the check identifier of any already accepted electronic check recorded by the second computer readable program code means, and accepting a received electronic check when the acceptance is not refused. According to another aspect of the present invention there is provided a computer-based electronic payment system, comprising: a payer's check issuing computer for issuing an electronic check having a check identifier and an issue time, the check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; a payee's check processing computer for receiving the electronic check from the payer's check issuing computer, recording a check identifier of each electronic check accepted by the payee's check processing computer during a first prescribed period of time past of a current time, refusing an acceptance of a received electronic check when the issue time of the received electronic check is older than the first prescribed period of time past of the current time or the check identifier of the received electronic check is identical to any recorded check identifier of an already accepted electronic check, accepting a received electronic check when the acceptance is not refused, and transmitting each accepted electronic check; and a transaction executing computer for receiving the electronic check transmitted from the payee's check processing computer, recording a check identifier of each electronic check accepted by the transaction executing computer during a second prescribed period of time past of the current time, refusing an acceptance of a transmitted electronic check when the issue time of the transmitted electronic check is older than the second prescribed period of time past of the current time or the check identifier of the transmitted electronic check is identical to any recorded check identifier of an already accepted electronic check, accepting a received electronic check when the acceptance is not refused, and transferring a specified amount from a specified payer's account to a specified payee's account according to each accepted electronic check. According to another aspect of the present invention there is provided a method of computer-based electronic payment, comprising the steps of: (a) at a payer's check issuing computer, issuing an electronic check having a . check identifier and an issue time, the check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; (b) at a payee's check processing computer, receiving the electronic check from the payer's check issuing computer, recording a check identifier of each electronic check accepted by the payee's check processing computer during a first prescribed period of time past of a current time, refusing an acceptance of a received electronic check when the issue time of the received electronic check is older than the first prescribed period of time past of the current time or the check identifier of the received electronic check is identical to any recorded check identifier of an already accepted electronic check, accepting a received electronic check when the acceptance is not refused, and transmitting each accepted electronic check; and (c) at a transaction executing computer, receiving the electronic check transmitted from the payee's check processing computer, recording a check identifier of each electronic check accepted by the transaction executing computer during a second prescribed period of time past of the current time, refusing an acceptance of a transmitted electronic check when the issue time of the transmitted electronic check is older than the second prescribed period of time past of the current time or the check identifier of the transmitted electronic check is identical to any recorded check identifier of an already accepted electronic check, accepting a received electronic check when the acceptance is not refused, and transferring a specified amount from a specified payer's account to a specified payee's account according to each accepted electronic check. Now, the preferred embodiments of an electronic payment system according to the present invention will be described in detail. First, the main features of the present invention will be briefly summarized. In the present invention, the records of information for identifying checks issued during a prescribed period of time up to a current time are recorded at the store and the bank. When a check is received from a consumer or a store, whether this check has already been accepted before or not is judged according to these records. Consequently, it is impossible to realize the "double issue" or the "double charge" by giving the same check more than once. Also, at a time of receiving a check, issue date and time of the check is examined, and if the issue date and time of the check are older than a prescribed period of time past of current date and time, the acceptance of this check will be refused by judging it as an expired one. For this reason, the "double issue" or the "double charge" using the old check which is already deleted from the records can also be detected. In this manner, the "double issue" and the "double charge" can be prevented according to the present invention. Moreover, it is only necessary to keep each record during the above described prescribed period of time, and the records of the checks issued earlier than that can be discarded. For this reason, a capacity of the memory device required for keeping records of the already used checks can be reduced, and therefore a search time required in examining whether each check has already been accepted before or not can be shortened. Here, the fact that the information concerning the issue date and time of the check is integrally incorporated within the check itself implies that a correspondence between the information concerning the issue date and time and the check itself will be maintained throughout the entire distribution process of the check (from the issuance until the transfer), and that the information concerning the issue date and time cannot be tampered. More specifically, the issue date and time are included within a main text of the check which also contains an identifier of a consumer, an identification number unique to each payment, and an amount of each payment, and then the issuer of the check (payer) digitally signs the check, so that it is impossible to separate the issue date and time from the check itself to tamper it and pass the tampered check again at any stage in the distribution route of the check. For example, it is possible to examine the issue date and time by decrypting the check even by the store's system, but at a time of passing the check to the bank, the digitally signed check itself is to be passed. Consequently, even if the store tampers the issue date and time of the check and pass the tampered check again, it is impossible for the store to digitally sign the check correctly, so that the illegal act by the store can be detected by the bank. Now, with references to Fig. 1 to Fig. 4, the first embodiment of an electronic payment system according to the present invention will be described in detail. The electronic payment system of this embodiment has an overall configuration as shown in Fig. 1, which comprises a consumer's check issuing system 100, a store's check processing system 200, and a bank's check processing system 300, where the check issued by the consumer's check issuing system 100 will be examined by the store's check processing system 200 and the bank's check processing system 300 with regards to its issue date and time, etc. In addition, the store's check processing system 200 has a temporary memory unit 22 for temporarily storing checks before passing them to the bank's check processing system 300. In the following, each of these sub-systems constituting the electronic payment system of Fig. 1 will be described one by one. Fig. 2 shows a detailed configuration of the consumer's check issuing system 100 in the electronic payment system of Fig. 1. In this consumer's check issuing system 100 of Fig. 2, an identifier formed by combining a consumer's identifier and a check serial number is used as a check identifier. The consumer identifier of a consumer who owns this consumer's check issuing system 100 is stored in a consumer identifier memory unit 1 in advance. A check serial number memory unit 2 stores a previously issued check serial number, and outputs a new check serial number by adding one to the stored serial number every time a new check is to be issued. By generating the check identifier in this manner, an identifier already used before will not be used again, and it will be impossible for any other consumer to issue a check with the same identifier as that of a check issued by this consumer. These statements may not necessarily be true, however, when this consumer himself commits an illegal act of "double issue" on this consumer's check issuing system 100, In this consumer's check issuing system 100, a check main text production unit 3 produces a check main text containing the consumer identifier, the check serial number, an amount of payment, a store identifier for specifying a receiver of the check, and issue date and time. Then, a digital signature production unit 4 produces a digital signature by using a consumer's private encryption key which is assigned to each consumer in advance and stored in a consumer's private encryption key memory unit 5, and attaches the produced digital signature to the check main text, to form a digitally signed check 101. Here, the check main text containing the issue date and time is produced by entering current date and time generated by a current date and time generation unit 7. Also, the check main text containing the store identifier is produced by entering an identifier of a store specified by the consumer through a user input/output unit 9 among store identifiers stored in a store identifier memory unit 8. The amount of payment is entered into the check main text according to an amount specified by the consumer through the user input/output unit 9 or an amount specified in advance. The digitally signed check 101 so produced is then transmitted to the store's check processing system 200 via a communication line or a memory medium. Also, a consumer's private decryption key 102, which is issued by a key distribution center and digitally signed by a certification authority, and which is necessary in authenticating the check, is stored in a consumer's private decryption key memory unit 6 and transmitted along the digitally signed check 101 to the store's check processing system 200. Fig. 3 shows a detailed configuration of the store's check processing system 200 in the electronic payment system of Fig. 1. In this store's check processing system 200 of Fig. 3, when the digitally signed check 101 is received from the consumer's check issuing system 100, the consumer's private decryption key 102 received along the digitally signed check 101 is authenticated at a consumer's private decryption key authentication unit 11 using a key distribution center's private decryption key stored in a key distribution center's private decryption key memory unit 10. Then, when the received consumer's private decryption key 102 is verified as a proper consumer's private decryption key distributed by the key distribution center, the digital signature of the digitally signed check 101 is authenticated at a digital signature authentication unit 12 using the received consumer's private decryption key 102. After these authentications are successfully completed, the issue date and time written in the check main text is taken out, and compared with current date and time obtained from a current date and time generation unit 13 to see if the issue date and time are older than a prescribed period of time past of the current date and time or not at a date and time comparison unit 14. If the issue date and time are older, the acceptance of this check is refused by judging it as an expired one at an acceptance judgement unit 15. A notice 103 (including a notice 104 from the bank's check processing system 300 to be described below) regarding the refusal of the acceptance is then notified to the consumer's check issuing system 100 via a communication line or a memory medium. This notice 103 will be given to the consumer via the user input/output unit 9. When this notice 103 is given, the consumer can issue a new electronic check again according to the procedure described above. In addition, the store identifier specifying a receiver of the check is taken out from the check main text, and compared with this store's own identifier stored in a store identifier memory unit 16 to see if they coincide at a store identifier comparison unit 17. If they do not coincide, the acceptance of this check is refused at the acceptance judgement unit 15. In addition, the check identifier is taken out from the check main text, and a check identifier search unit 21 searches for this check identifier in a check identifier memory unit 20 storing the check identifiers of the checks already accepted by the store during the above described prescribed period of time used by the date and time comparison unit 14. If the same check identifier is found in the check identifier memory unit 20, it implies that the check has already been accepted by the store before, so that the acceptance of this check is refused by judging it as the "double issue" at the acceptance judgement unit 15. In addition, the amount of payment is taken out from the check main text, and compared with an amount of payment to be received by this transaction stored in an amount of payment memory unit 18 to see if they coincide at an amount of payment comparison unit 19. If they do not coincide, the acceptance of this check is refused at the acceptance judgement unit 15. The check identifier of the accepted check is stored in the check identifier memory unit 20. In this check identifier memory unit 20, the check identifier of the check whose issue date and time are older than the above described prescribed period of time past of the current date and time will be discarded. When the check is accepted by the acceptance judgement unit 15, the accepted check 101 and the corresponding consumer's private decryption key 102 are temporarily stored in a check and consumer's private decryption key temporary memory unit 22. Then, whenever the store wishes, the check 101 and the consumer's private decryption key 102 in the check and consumer's private decryption key temporary memory unit 22 are transmitted to the bank's check processing system 300. Here, the check 101 and the consumer's private decryption key 102 to be transmitted to the bank's check processing system 300 are those received from the consumer's check issuing system 100 at the store's check processing system 200 as they are. With this configuration, the store's check processing system 200 can detect an occurrence of the "double issue" by the consumer with respect to the same store. Fig. 4 shows a detailed configuration of the bank's check processing system 300 in the electronic payment system of Fig. 1. In this bank's check processing system 300 of Fig. 4, when the digitally signed check 101 is received from the store's check processing system 200, the consumer's private decryption key 102 received along the digitally signed check 101 is authenticated at a consumer's private decryption key authentication unit 34 using a key distribution center's private decryption key stored in a key distribution center's private decryption key memory unit 33. Then, when the received consumer's private decryption key 102 is verified as a proper consumer's private decryption key distributed by the key distribution center, the digital signature of the digitally signed check 101 is authenticated at a digital signature authentication unit 35 using the received consumer's private decryption key 102. After these authentications are successfully completed, the issue date and time written in the check main text is taken out, and compared with current date and time obtained from a current date and time generation unit 36 to see if the issue date and time are older than a prescribed period of time past of the current date and time or not at a date and time comparison unit 37. Here, the prescribed period of time used in this date and time comparison unit 37 may not be the same as that used in the store's check processing system 200 as will be mentioned below. If the issue date and time are older, the acceptance of this check is refused by judging it as an expired one at an acceptance judgement unit 38. A notice 104 regarding the refusal of the acceptance is then notified to the store's check processing system 200 via a communication line or a memory medium. This notice 104 may be notified to the consumer's check issuing system 100 as the notice 103 from the store's check processing system 200 described above, or given directly to the the consumer's check issuing system 100 in parallel to a notification to the store's check processing system 200 from the bank's check processing system 300. In addition, the check identifier is taken out from the check main text, and a check identifier search unit 31 searches for this check identifier in a check identifier memory unit 30 storing the check identifiers of the checks already accepted by the bank during the above described prescribed period of time used by the date and time comparison unit 37. If the same check identifier is found in the check identifier memory unit 30, it implies that the check has already been accepted by the bank before, so that the acceptance of this check is refused by judging it as the "double issue" or the "double charge" at the acceptance judgement unit 38. The check identifier of the accepted check is stored in the check identifier memory unit 30. In this check identifier memory unit 30, the check identifier of the check whose issue date and time are older than the above described prescribed period of time past of the current date and time will be discarded. Note that the check issued by the consumer arrives at the bank by being temporarily stored in the check and consumer's private decryption key temporary memory unit 22 at the store, and transmitted to the bank only at a timing desired by the store, so that it is rather usual to receive the check at the bank after some time has elapsed since the issue date and time of the check. Consequently, it is preferable to set the prescribed period of time used by the date and time comparison unit 37 and the check identifier memory unit 30 in the bank's check processing system 300 longer than the prescribed period of time used by the date and time comparison unit 14 and the check identifier memory unit 20 in the store's check processing system 200, according to how long it usually takes for the store to transmit the checks to the bank. When the check is accepted by the acceptance judgement unit 38, a transfer control unit 24 carries out a transfer of the amount of payment specified in the check main text, from an account 23 of the consumer specified by the check identifier contained in the check main text to an account 25 of the store specified by the store identifier contained in the check main text. With this configuration, it is possible for the bank's check processing system 300 to detect an occurrence of either the "double issue" by the consumer with respect to different stores or the "double charge" by the store. Consequently, in this electronic payment system, the "double issue" by the consumer with respect to the same store can be detected at the store's check processing system 200, and the "double issue" by the consumer with respect to different stores and the "double charge" by the store can be detected at the bank's check processing system 300, so that the illegal acts of "double issue" and "double charge" can be prevented. Moreover, it is only necessary to keep each check identifier during a prescribed period of time, and the check identifiers of the checks issued earlier than that can be discarded, so that a capacity of the memory device required for keeping records of the already used checks can be reduced, and therefore a search time required in examining whether each check has already been accepted before or not can be shortened. Next, with reference to Fig. 5, the second embodiment of an electronic payment system according to the present invention will be described in detail. In the first embodiment described above, among the "double issue" that can be made by the consumer, the "double issue" with respect to different stores by the consumer cannot be detected at the store's check processing system. Moreover, at the bank's check processing system, an occurrence of either one of the "double issue" by the consumer with respect to different stores and the "double charge" by the store can be detected, but which one of these has occurred cannot be judged. This second embodiment is directed to a modification of the first embodiment described above, in which it is made possible for the bank's check processing system to judge which one of the "double issue" by the consumer with respect to different stores and the "double charge" by the store has occurred, by recording the entire check main text rather than just the check identifier at the bank's check processing system. Here, the overall configuration of the electronic payment system is substantially similar to that of Fig. 1 except that the bank's check processing system 300 is to be replaced by the bank's check processing system 300A shown in Fig. 5, as follows. Fig. 5 shows a detailed configuration of the bank's check processing system 300A in this second embodiment. Instead of the check identifier memory unit 30 and the check identifier search unit 31 in the configuration of Fig. 4, this configuration of Fig. 5 has a check memory unit 40 and a check search unit 41, by means of which the entire check main text including the check identifier is stored and searched, respectively. The other elements of this bank's check processing system 300A of Fig. 5 are similar to those of the bank's check processing system 300 of Fig. 4. The check search unit 41 searches for the check main text of the check which has the same check identifier as that taken out from the check 101 received from the store's check processing system 200, in the check memory unit 40 storing the check main texts of the checks already accepted by the bank during the above described prescribed period of time used by the date and time comparison unit 37. When the check main text with the identical check identifier is found in the check memory unit 40, the found check main text is compared with the check main text received from the store's check processing system 200, and if they coincide, it can be judged that it is the "double charge" by the store, whereas if they do not coincide, it can be judged that it is the "double issue" with respect to different stores by the consumer. Thus, with this configuration, it is possible for the bank's check processing system 300A to distinguishably detect the "double issue" by the consumer with respect to different stores and the "double charge" by the store. Alternatively, the check may comprise a modified check identifier which also includes a payee identifier for uniquely identifying a payee. In this alternative embodiment a double charge by the store is identified when the check identifier and the payee identifier of an issued check are identical. Next, with references to Fig. 6 and Fig. 7, the third embodiment of an electronic payment system according to the present invention will be described in detail. In the second embodiment described above, it is made possible for the bank's check processing system to detect the "double issue" by the consumer with respect to different stores. Instead, this third embodiment is directed to a modification of the first embodiment described above, in which it is made possible for the store's check processing system to detect the "double issue" by the consumer with respect to different stores, by modifying a manner of generating the check identifier. Here, the overall configuration of the electronic payment system is substantially similar to that of Fig. 1 except that the consumer's check issuing system 100 is to be replaced by the consumer's check issuing system 100 shown in Fig. 6, and the store's check processing system 200 is to be replaced by the store's check processing system 200A shown in Fig. 7, as follows. Fig. 6 shows a detailed configuration of the consumer's check issuing system 100A in this third embodiment. In this consumer's check issuing system 100A of Fig. 6, the check identifier is generated by further combining the store identifier stored in the store identifier memory unit 8 to a combination of the consumer identifier and the check serial number. In this case, the store identifier (later referred to as the payee identifier) is contained in the check identifier (later referred to as the modified check identifier), so that there is no need to enter the store identifier itself as an independent item in the check main text. The other elements of this consumer's check issuing system 100A of Fig. 6 are similar to those of the consumer's check issuing system 100 of Fig. 2. Fig. 7 shows a detailed configuration of the store's check processing system 200A in this third embodiment. In this store's check processing system 200A of Fig. 7, there is no independent item for the store identifier in the check main text, so that the store identifier comparison 50 compares the store identifier extracted from the check identifier in the check main text with this store's own identifier stored in the store identifier memory unit 16. The other elements of this store's check processing system 200A of Fig. 7 are similar to those of the store's check processing system 200 of Fig. 3. With these configurations, when the consumer attempts to issue the identical checks to different stores, at least one of these identical checks is going to have the store identifier different from that of the store which received it, so that the "double issue" by the user will be immediately detected at the store which received one of the identical checks, and the acceptance of the check will be refused. Note that this third embodiment is characterized by issuing the check by including the store identifier in addition to the consumer identifier and the check serial number. In this manner, it becomes practically impossible for the consumer to issue the identical checks to different stores, because the checks issued to different stores require different store identifiers, and the different store identifiers imply different check identifiers in this case. As described according to the present invention, the "double issue" by the consumer and the "double charge" by the store can be detected at the store or the bank without a failure, so that it is possible to prevent the illegal acts such as "double issue" and "double charge" in the electronic payment system. Moreover, it is only necessary to store and search the records of the checks issued during a prescribed period of time past of the current date and time, and there is no need to store and search an unlimited amount of records of the checks, so that there is no need to require an enormous cost for the storing and searching of the records of the checks, and it becomes possible to realize a safe electronic payment system at a lower cost. It is to be noted that the above described embodiments according to the present invention may be conveniently implemented using a conventional general purpose digital computer programmed according to the teachings of the present specification, as will be apparent to those skilled in the computer art. Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art. For example, the functions of each one of the consumer's check processing system of Fig. 2 or Fig. 6, the store's check processing system of Fig. 3 or Fig. 7, and the bank's check processing system of Fig. 4 or Fig. 5 can be implemented as a separate computer program for controlling the general purpose digital computer to realize the respective functions as described above. Such a computer program can be implemented as a software package to be installed on a general purpose digital computer in practice. Such a software package can be a computer program product which employs a storage medium including stored computer code which is used to program a computer to perform the disclosed function and process of the present invention. The storage medium may include, but is not limited to, any type of conventional floppy disks, optical disks, CD-ROMs, magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, or any other suitable media for storing electronic instructions.

Claims: A computer-based electronic check processing system for a transaction executing party that receives and processes electronic checks transmitted from payees of the electronic checks, the system comprising: receiving and processing means (300A) for receiving and processing an electronic check having a check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; memory means (40) for recording a check identifier of each electronic check accepted during a prescribed period of time past of a current system time; and acceptance judgement means (38), including comparison means for comparing a check identifier of a received electronic check and check identifiers recorded in the memory means (40), for refusing an acceptance of the received electronic check when the check identifier of the received electronic check is identical to the check identifier of any already accepted electronic check recorded in the memory means (40), and accepting the received electronic check when the acceptance is not refused; characterized in that the electronic check received by the receiving and processing means (300A) also has an issue time data indicating a time of issue of the electronic check; the acceptance judgement means (38) also refuses the acceptance of the received electronic check when the time of issue of the received electronic check is older than the prescribed period of time past of the current system time; the memory means (40) records a check main text representing an information content of each electronic check and including the check identifier of each electronic check accepted during the prescribed period of time past of the current system time; and the acceptance judgement means (38) also judges the received electronic check as a double issue check by a payer with respect to different payees when the check identifier of the received electronic check is identical to the check identifier of an already accepted electronic check recorded in the memory means (40) but the check main text of the received electronic check is not identical to the check main text of the already accepted electronic check recorded in the memory means (40). The system of claim 1, further comprising transfer means (24) for transferring a specified amount from a specified payer's account to a specified payee's account according to each electronic check accepted by the acceptance judgement means (38). The system of claim 1, wherein the acceptance judgement means (38) also judges the received electronic check as a double issue check by a payer with respect to different payees or a double charge check by a payee when the check identifier of the received electronic check is identical to the check identifier of the already accepted electronic check recorded in the memory means (40). The system of claim 1, wherein the acceptance judgement means (38) also judges the received electronic check as a double charge check by a payee when the check identifier of the received electronic check is identical to the check identifier of an already accepted electronic check recorded in the memory means (40) and the check main text of the received electronic check is also identical to the check main text of the already accepted electronic check recorded in the memory means (40). The system of claim 1, wherein the issue time data indicates at least a date on which the electronic check is issued. A method of computer-based electronic check processing for a transaction executing party that receives and processes electronic checks transmitted from payees of the electronic checks, the method comprising the steps of: (a) receiving and processing an electronic check having a check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; (b) recording a check identifier of each electronic check accepted during a prescribed period of time past of a current system time; and (c) refusing an acceptance of a received electronic check when the check identifier of the received electronic check is identical to the check identifier of any already accepted electronic check recorded by the step (b), and accepting the received electronic check when the acceptance is not refused; characterized in that the electronic check received by the step (a) also has an issue time data indicating a time of issue of the electronic check; the step (c) also refuses the acceptance of the received electronic check when the time of issue of the received electronic check is older than the prescribed period of time past of the current system time; the step (b) records a check main text representing an information content of each electronic check and including the check identifier of each electronic check accepted during the prescribed period of time past of the current system time; and the step (c) also judges the received electronic check as a double issue check by a payer with respect to different payees when the check identifier of the received electronic check is identical to the check identifier of an already accepted electronic check recorded by the step (b) but the check main text of the received electronic check is not identical to the check main text of the already accepted electronic check recorded by the step (b). The method of claim 6, further comprising the step of transferring a specified amount from a specified payer's account to a specified payee's account according to each electronic check accepted by the step (c). The method of claim 6, wherein the step (c) also judges the received electronic check as a double issue check by a payer with respect to different payees or a double charge check by a payee when the check identifier of the received electronic check is identical to the check identifier of the already accepted electronic check recorded by the step (b). The method of claim 6, wherein the step (c) also judges the received electronic check as a double charge check by a payee when the check identifier of the received electronic check is identical to the check identifier of an already accepted electronic check recorded by the step (b) and the check main text of the received electronic check is also identical to the check main text of the already accepted electronic check recorded by the step (b). The method of claim 6, wherein the issue time data indicates at least a date on which the electronic check is issued. A computer-based electronic check processing system for a payee who receives and processes electronic checks from payers of the electronic checks, the system comprising: receiving and processing means (200A) for receiving and processing an electronic check having a modified check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; memory means (20) for recording a modified check identifier of each electronic check accepted during a prescribed period of time past of a current system time; and acceptance judgement means (15), including comparison means for comparing a modified check identifier of a received electronic check and modified check identifiers record in the memory means (20), for refusing an acceptance of the received electronic check when the modified check identifier of the received electronic check is identical to the modified check identifier of any already accepted electronic check recorded in the memory means (20), and accepting the received electronic check when the acceptance is not refused; characterized in that the electronic check received by the receiving and processing means (200A) also has an issue time data indicating a time of issue of the electronic check; the acceptance judgement means (15) also refuses the acceptance of the received electronic check when the time of issue of the received electronic check is older than the prescribed period of time past of the current system time; the modified check identifier of the electronic check received by the receiving and processing means (200A) also includes a payee identifier for uniquely identifying a payee; and the acceptance judgement means (15) also judges the received electronic check as a double issue check by a payer with respect to different payees when the payee identifier specified by the modified check identifier of the received electronic check does not coincide with a required payee identifier given to the system in advance. The system of claim 11, further comprising transmission means (22) for transmitting each electronic check accepted by the acceptance judgement means (15) to another electronic check processing system for further processing the electronic check. The system of claim 11, wherein the acceptance judgement means (15) also refuses the acceptance of the received electronic check when an amount of payment specified by the received electronic check does not coincide with a required amount of payment given to the system in advance. The system of claim 1, wherein the issue time data indicates at least a date on which the electronic check is issued. A method of computer-based electronic check processing for a payee who receives and processes electronic checks from payers of the electronic checks, the method comprising the steps of: (a) receiving and processing an electronic check having a modified check identifier including a payer identifier for uniquely identifying a payer and a payment identifier for uniquely identifying a payment; (b) recording a modified check identifier of each electronic check accepted during a prescribed period of time past of a current system time; and (c) refusing an acceptance of a received electronic check when the modified check identifier of the received electronic check is identical to the modified check identifier of any already accepted electronic check recorded by the step (b), and accepting the received electronic check when the acceptance is not refused; characterized in that the electronic check received by the step (a) also has an issue time data indicating a time of issue of the electronic check; the step (c) also refuses the acceptance of the received electronic check when the time of issue of the received electronic check is older than the prescribed period of time past of the current system time; the modified check identifier of the electronic check received by the step (a) also includes a payee identifier for uniquely identifying a payee; and the step (c) also judges the received electronic check as a double issue check by a payer with respect to different payees when the payee identifier specified by the modified check identifier of the received electronic check does not coincide with a required payee identifier given to the system in advance. The method of claim 15, further comprising the step of transmitting each electronic check accepted by the step (c) to an electronic check processing system for further processing the electronic check. The method of claim 15, wherein the step (c) also refuses the acceptance of the received electronic check when an amount of payment specified by the received electronic check does not coincide with a required amount of payment given in advance. The method of claim 15, wherein the issue time data indicates at least a date on which the electronic check is issued.

Inventors: IMAI TORU, YOSHIDA HIDEKI, IMAI, TORU, YOSHIDA, HIDEKI
Applicants: TOSHIBA KK, KABUSHIKI KAISHA TOSHIBA
Application year: 1996
Main classification: G07F19
IPC codes: G06Q20