Apparatus and method for authenticating the dispatch and contents of documents

Abstract: Apparatus and method for providing a sender with authentication of the fact that certain information has been transmitted via a dispatcher to an address of a recipient is disclosed. The method includes the steps of: a) providing a set A comprising a plurality of information elements a1,...,an, the information element a1 having information content the substance of which is equivalent to that of the transmitted information, and the one or more information elements a2,...,an having dispatch information, where at least one of the information elements is provided in a reliable manner and b) associating at least a subset of the dispatch information elements a2,...,an with the information element a1, such that the associated information is secured against fraudulent actions attempted at least by the interested party, in a manner that such actions are at least detectable. The apparatus implements the operations of the method.

Description: FIELD OF THE INVENTION The present invention relates to a method and apparatus for authenticating the dispatch and the contents of dispatched information in general. BACKGROUND OF THE INVENTION Post, courier, forwarding and other mail services, which enable people to exchange documents and data, have been widely used both in the past and at the present time. With the evolution of modern technology, electronic data interchange (EDI) has become a rapidly developing avenue of communication. The use of EDI devices, such as modems, facsimile machines, electronic mail (E-Mail), computers, communication networks, and so forth, is growing throughout the world. A substantial quantity of the information exchanged, such as contracts, purchase orders, invoices, monetary orders, notices, and even warning and notification messages, are of utmost importance. Sometimes, when a dispute arises between the sending and receiving party of the exchanged information, the receiving party may raise the claim that he never received the information, that the received information was different from what the sender claims to have sent, or the receiving party may have attempted to forge the received information. The need, therefore, arises for the sender to prove that specific information has been sent at a specific time to that specific receiving party. Various solutions to various related problems have been proposed in the literature. For example, the transmission operation itself may be authenticated, as shown in US Patent 5,339,361 (Schwalm et al.), which describes a communication system providing a verification system to identify both the sender and recipient of electronic information as well as an automatic time stamp for delivery of electronic information. This patent, however, does not verify the dispatched information. Document authentication methods, for example by notarization, have long been in use. A method for notarization of electronic data is provided by EP-A-0 516 898 and US Patent 5,022,080 (Durst et al.) which authenticates that source data has not been altered subsequent to a specific date and time. The method disclosed includes mathematically generating a second unit of data from the first unit of data, as by CRC generation, parity check or checksum. The second unit of data is then encrypted together with a time/date indication, and optionally with other information to form an authentication string. Validation that the first unit of data has not been changed is provided by comparing the original data's authentication string with the authentication string generated from the data and time in question. A method is even suggested for having the recipient verify the authenticity of the sender, the time of transmission and the data. Other patents which discuss document authentication are U.S. 5,136,646 and 5,136,647 both to Haber et al. According to these patents, a unique digital representation of the document (which is obtained by means of a one-way hash function) is transmitted to an outside agency, where the current time is added to form a receipt. According to patent 5,136,647, the receipt is certified using a public-key signature procedure (i.e. encrypted), and optionally linked to other contemporary such receipts thereby fixing the document's position in the continuum of time. According to patent 5,136,646, the receipt is certified by concatenating and hashing the receipt with the current record catenate certificate which itself is a number obtained by sequential hashing of each prior receipt with the extent catenate certificate. Proof of delivery of non-electronic documents is provided, for example, by Registered Mail and courier services. It is commonly used to authenticate the delivery of materials at a certain time to a certain party, and serves as admissible proof of delivery in a court of law. However, no proof is provided as to the information contents of the specific dispatch. E-mail and message forwarding services are commonly used today. The sender sends a message to a central databank which, in turn, forwards the message to the destination and provides the sender with a written report authenticating the delivery itself, which includes the date and time of the dispatch, the recipient's address, the transmission completion status, and sometimes even the number of pages delivered, the recipient's identification information, and so on. Again, the provided delivery authentication report is not associated with the specific contents of the materials included in that specific dispatch, is usually maintained apart from the specific data itself, and mainly serves for accounting purposes. Moreover, no record of the specific data sent is maintained in the databank after the delivery is completed or provided to the sender. Electronic information, such as a disk document file, transmitted for example via facsimile or modem, is very difficult to authenticate unless reduced to paper document form, which defeats the purpose of EDI. Moreover, some electronic information such as database or graphic files, are not in readable form (e.g., not in ASCII), and cannot be reduced to paper unless custom printing software is used to print the contents of the file. Furthermore, documents and other information which have been transmitted via facsimile or modem are not admissible evidence in a court of law. Worse yet, if the original is destroyed or lost, the sender has no way to prove what was actually sent. SUMMARY OF THE PRESENT INVENTION The literature does not provide a comprehensive solution that directly addresses the problem in question: what information has been sent to whom and when. Accordingly, there is a need for a method and system to provide the sender with a convenient means for authenticating both the dispatch and the contents of documents, electronic information and other information during the normal flow of daily activities. It is therefore an object of the present invention to improve the capacity of conventional systems and methods for dispatching documents and transmitting information to provide the sender with admissible evidence of the dispatch and its contents. This object is solved by the apparatus according to claim 1 and the method according to claim 27. The present invention discloses a method and apparatus for providing a sender with proof of both the dispatch and the contents of the dispatched materials. The dispatched materials can be paper documents, electronic information or other information which can be dispatched electronically by transmission or non-electronically, such as by courier or registered mail service, to an address of a recipient. According to the present invention, dispatch related information is associated with the contents of the dispatch, in a relatively secure, or reliable manner. This associated information can be provided for example to the sender, and may serve as an admissible authentication of the dispatch and its contents, for example, in a court of law, and therefore it is collectively referred to herein as the "authentication information". The present invention encompasses all types of information being dispatched, such as that found on paper documents or within electronic documents and other electronic data, and all types of dispatch methods, such as transmission via facsimile machines, modems, computer networks, electronic mail and so forth, or manually via registered mail or courier services. The term "the contents of the dispatch" herein refers to any information element having information content the substance of which is equivalent to that of the information being dispatched. This includes for example the information source, either in paper document or electronic form, the actual dispatched information, any copies thereof, and so forth regardless of the representation or form. The present invention also encompasses all types of methods and apparatuses which provide and/or associate the dispatch information with the contents in a relatively secure or reliable manner. The terms "relatively secure" and "reliable" herein mean "reasonably tamper-proof" or "tamper-detectable", i.e., that it is assured that the authentic information elements are provided and associated in a reliable manner, for example by a non-interested third party or by a device or by a combination of both, and furthermore, that the associated authentication information is secured against fraudulent actions such as disassociation, modification, replacement etc., attempted by an interested party such as the sending or receiving party, at least such that such actions are detectable. The dispatch information can be any information describing at least the time and destination of the dispatch and preferably the dispatch completion status. Other information relating to the dispatch, such as the identity of the sender and/or the recipient, handshake information, the actual elapsed dispatch time, the number of pages dispatched and so forth. The identification of the authenticator, for example its name, logo, stamp, etc. can also be provided. Finally, the authentication information can be secured or stored in a secure location or device, in its entirety or in part, together or separately, as desired. BRIEF DESCRIPTION OF THE DRAWINGS The present invention will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which: Fig. 1 is a schematic pictorial illustration of the authentication method of the present invention implemented in a manual manner; Fig. 2 is a schematic illustration of an authenticator, constructed and operative in accordance with a preferred embodiment of the present invention; Fig. 3 is a schematic illustration of an alternative authenticator, constructed and operative in accordance with another preferred embodiment of the present invention; Fig. 4 is a schematic illustration of an alternative authenticator, constructed and operative in accordance with yet another preferred embodiment of the present invention; and Figs. 5 and 6 are schematic illustrations of verification mechanisms constructed and operative in accordance with the authenticator of Fig. 4. DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Reference is now made to Fig. 1 which illustrates the method of the present invention as it can be implemented for paper documents being sent non-electronically. The method of Fig. 1 can be implemented for documents sent via any document dispatching service, such as a courier service or the registered mail service of the post office. The sender 10 provides the documents 12 to be sent and a destination address 14 to a clerk 20 of the document dispatching service. The clerk 20 prepares a dispatch sheet 26, which typically has a unique dispatch identifier (not shown) and has room for dispatch information such as the time of dispatch or delivery 16, the destination address 14, an indication 18 of proof of delivery such as the recipient's identity and/or signature, and optionally, additional dispatch information such as the dispatcher's signature and the identity of the sender 10, etc. The clerk 20 fills in the dispatch sheet 26 with the date/time 16 and the address 14, and then prepares a copy 24 of the documents 12 and a copy 34 of the dispatch sheet 26, typically by utilizing a copy machine 22 or an electronic scanner. The clerk 20 then places the original documents 12 into an envelope 28 carrying the address 14, and sends the envelope 28 to its destination 30. In one embodiment of the present invention the dispatching service utilizes a cash-register like device to fill in the dispatch sheet 26. This provides for reliable time stamping and automated dispatch record keeping. Furthermore, the electronic dispatch information produced by such device can be associated using a special mathematical method as discussed in greater detail hereinbelow. The clerk 20 associates the copy 24 of the documents 12 with the copy 34 of the dispatch sheet 26 by any method, a few examples of which follow: a) by inserting the documents copy 24 and the dispatch sheet copy 34 into an envelope 32; b) by inserting the copy 24 of the documents into an envelope 32 and marking the dispatch identifier on the outside of the envelope 32; c) by printing the dispatch identifier on the documents copy 24; or d) attaching the copies 24 and 34 and applying the stamp of the dispatch service in such a manner that part of the stamp is on the copy 24 of the documents and part of the stamp is on the copy 34 of the dispatch sheet 26. Preferably, the clerk 20 secures the copies 24 and 34 in a manner that makes it difficult to modify or replace the information contained therein, for example by marking the pages of the copy 24 with the dispatching service's signature, stamp or seal, by spreading each page with invisible or other ink, by sealing the envelope 32 or by retaining them in the service's secure file 36 and so forth. In one embodiment of the present invention, the associated copies 24 and 34 are provided to the sender at this stage (where the dispatch sheet 26 is retained with the service to ascertain delivery and to fill in the proof of delivery indication 18) or after the delivery is completed. In another embodiment, the dispatch service retains, in a secure location 36, one or both of the copies 24 and 34. The clerk 20 can also identify the authenticating party, for example via his signature, or by having the dispatch sheet copy 34 printed on the stationary of the dispatching service, by stamping the documents and/or dispatch sheet copies with the service's stamp, logo or seal, etc. When it is desired to authenticate the dispatch of the original documents (and possibly also their receipt at the destination 30), either the sender or the document dispatching service provides the associated authentication information, for example the envelope 32, unopened, to the party which required the authentication. When the envelope 32 is opened, it has associated therewith copies of both the dispatched documents and the dispatch information. The envelope 32 therefore, provides a reliable proof that the original documents 12 were dispatched on the date and to the destination listed on or in envelope 32. It will be appreciated that, since a non-interested third party who is neither the sender nor the receiver copied the original documents 12 being sent, it is unlikely that the copies stored in the envelope 32 are other than copies of the original documents 12. Various modifications can be made to the embodiment provided hereinabove. For example, the document copy could be sent to the destination while the original could be authenticated. The authentication information could be provided by the service, directly to the court of law. The document copy could be produced by a scanner or a camera and stored in an electronic or other storage device such as a disk or on microfilm, while a copy thereof is provided to the sender. The original dispatch sheet could be first filled out and then provided to the sender instead of using a copy. Moreover, the original documents could be scanned by the sender in the service's premises into a secure disk and one printed copy thereof could be sent by the service to the destination while another copy could be authenticated and provided to the sender. In the case of a courier, the courier could produce the copy himself using a photocopier at the sender's premises, and so forth. Reference is now made to Fig. 2 which illustrates an authenticator 70, constructed and operative in accordance with a preferred embodiment of the present invention, which can be part of a system for transmitting information, whether by facsimile machine, modem, computer, network or E-Mail stations, and any combinations thereof, or by other electronic means. Fig. 2 illustrates a data communication system comprising a sending transceiver 42, a communication line 45, coupled to the sending transceiver 42, a communication network 44 and a receiving transceiver 46. Authenticator 70 of the present invention communicates at least with the sending transceiver 42, and can form part of the sending transceiver 42 or can be separated therefrom. The sender provides original materials 40 for transmission, which can be paper documents or electronic information such as computer disk, memory and other electronic information including audio/video, text and graphics files or pictures. The sender also provides the destination address 52 which represents the address of the receiving transceiver 46 on communication network 44. The address 52 may for example be a dial number, a network user code and so forth. The sending transceiver 42 needs to transmit the information contents of the materials 40 to the receiving transceiver 46. To provide authentication, the transmission in Fig. 2 is performed through the authenticator 70 in a "store & forward" manner. The authenticator 70 comprises input means 72 for receiving the transmitted information 60 and the destination address 62 from the communication line 45. The input means 72 may for example comprise a line interface, a Dual-Tone Multi Frequency (DTMF) decoder for receiving a destination address 62 such as a dial number, and a transceiver similar to that of the sending transceiver 42 which can receive the information 60. The authenticator 70 also comprises an optional storage unit 54 such as a tape, disk or memory device and so forth for storing the information 60 and related dispatch information, an internal clock 50 for generating a time indication 66 of the transmission, a transceiver 76 for transmitting the information 60 to address 62 (the transceiver 76 can be used by the input unit 72 as well, for example by using a relay mechanism), a controller 56, a user interface 48, and an output unit 58 for providing the authentication information, for example to the sender. The information 60 is then transmitted over the communication network 44 to the receiving transceiver 46 by the transceiver 76 using the address 62. The internal clock 50 provides an indication 66 of the current time, and is utilized to provide a time indication for the transmission. Internal clock 50 is securable (to ensure the veracity of the produced time indication 66), and preferably provides time indications according to a non-changing time standard, such as Greenwich-Mean-Time (G.M.T.). Alternatively, the time indication 66 can be externally obtained, for example from a communication network server, as long as the source is secured from being set or modified by an interested party such as the sender. The security of the time indication can be provided in a number of ways, such as by factory pre-setting the clock 50 and disabling or password securing the Set Date/Time function of the internal clock 50. Alternatively, the clock 50 can maintain a "true offset" with the true preset date/time, that reflects the offset of the user set date/time from the genuine preset one. The transmission completion indication 64 provides information regarding the success of the transmission. It is typically obtained from the communication protocol used by the transceiver 76. It may be for example in the form of an electronic signal provided by the transceiver 76 which is used to determine the validity of the rest of authentication information, or in a form similar to that provided in transmission reports such as "TRANSMISSION OK" or "ERROR". In one embodiment of the present invention, the fact that the rest of authentication information elements are provided, indicates that an affirmative completion indication has been provided. The storage unit 54 is used for storing the information 60 and/or the dispatch information, including the address 62, the time indication 66, and optionally the transmission completion indication 64. Typically, the storage unit 54 is relatively secure, such that the authentication information contained therein is assumed unchangeable. For example it may be a Write-Once-Read-Many (WORM) device such as an optical disk or a Programmable Read-Only Memory (PROM) device, it may be enclosed within a securable device, or it may be provided with read-only access privilege. Alternatively, the authentication information is stored in a secure manner, for example using a compression, private or public key encryption or scrambling technique, a password, or a combination thereof, such as those employed by the widely used RSA encryption method, and by the PKZIP(tm) program from PKWARE Inc., Glendale Wisconsin, U.S.A., and preferably where the "unsecuring" procedure, key or password are unknown to any interested party. The controller 56 associates the information 60 and the dispatch information, by storing them in storage unit 54 and by associating link information with the stored authentication information, for example in the form of a unique dispatch identifier such as a sequential dispatch number. To provide the authentication information for the transmission, the dispatch identifier is provided to the controller 56 through the user interface 48. The controller 56, in turn, retrieves the various stored authentication information elements from storage unit 54. If the stored information is also secured (i.e. by compression, password, etc.), the controller 56 "unsecures" them, and then provides them to the output unit 58. The output unit 58 provides the authentication information to an output device (not shown). The authenticator 70 may include an output device or may communicate with some external unit. The output device can be, for example, a printing unit, a display unit, a storage unit such as a computer disk, the printing apparatus of the sending transceiver 42 and so forth. The information 60 and the dispatch information, can be associated with each other in any suitable manner. For example, they can be stored in storage unit 54 together (e.g. sequentially or combined into a single file), or separately using a link information element (e.g. using a dispatch identifier). If the output is a printout, output unit 58 typically formats the printout to indicate the dispatch information on at least one, and preferably on all, of the pages containing the printout. Alternatively, a link information element, such as a dispatch identifier, can be printed on each printed page of the information 60, and separately on a dispatch page containing the dispatch information. Another method includes printing both the information 60 and the dispatch information together on contiguous paper, optionally between starting and ending messages, and so forth. An alternative special mathematical association method is discussed hereinbelow. Typically, the authenticator 70 is relatively secure, such that the various devices and the authentication information elements enclosed therein can be assumed to be unchangeable. For example, the authenticator 70 can be enclosed within a password protected sealed electronic box which, if opened without authorization, may disable the normal operation of the authenticator 70, or may clearly indicate that it has been tampered with. As mentioned hereinabove, the authenticator 70 can form part of the sending transceiver 42. Fig. 3 illustrates such an embodiment, which is similar to that of Fig. 2 and similar functional elements have similar reference numerals. In Fig. 3, the input unit 72 of the sending transceiver 42 comprises means, for example a serial, parallel or disk interface, for inputting the information 60 and the destination address 62 from any component of the sending transceiver 42, for example from its input devices. The sending transceiver 42 replaces the transceiver 76 of Fig. 2. The storage unit 54 however is optional, as the information 60 and the related dispatch information could be provided to the output unit 58 "on-the-fly" in a manner similar to that used by the "copy" function of document facsimile machines. Generally, in various embodiments of the authenticator 70, the information 60 can be obtained from any source and by any means, including a computer, a disk drive, a scanner or any other component of the sending transceiver 42, a communication line, a communication network and any combinations thereof, and so forth. Furthermore, any information element having information content the substance of which is equivalent to that of the transmitted information can serve for authentication purposes, regardless of its form, representation, format or resolution, whether it is a paper document or electronic information, whether digital or analog, whether in form of dots and lines or alphanumeric, binary, hexadecimal and other characters, and so forth. The element may contain additional information which does not change the substance and its content, such as a logo, a header message, etc. Furthermore, it may contain control, handshake and even noise data. For example, if the materials 40 provided for transmission are paper documents, one embodiment of the authenticator 70 authenticates the original documents by printing the dispatch information on them. Optionally, additional dispatch information may be provided to, or generated by authenticator 70, such as the number of pages transmitted, page numbers, the sender's identification, the sending transceiver's 42 identification, the receiving transceiver's 46 identification, the transmission elapsed time, a transmission identifier, integrity information such as a cyclic redundancy code (CRC), a checksum or the length of the transmitted information, an authenticator identification indication such as a serial number, a verification from the communication network 44 that the transmission has actually taken place at the specified time from the sender to the recipient's address, a heading message, a trailing message and so forth. Typically, when the authenticator 70 comprises a reasonably secure storage unit 54, the stored information is retained therein and copies thereof are provided to the output unit 58. Preferably, the provided output or any part thereof is reasonably secured, so as to prevent any fraudulent action. For example, if the output is a printout, it can be secured by spreading invisible or other ink on it, or by using special ink, special print fonts or special paper to print the authentication information, or in any other suitable manner. Another method includes securing the dispatch information using, for example, an encryption technique, and printing the encrypted information on the printout. At a later stage the encrypted information can be decrypted to provide the true dispatch information, and so forth. Likewise, mathematical association method as discussed hereinbelow can also be used. It will be appreciated that the following embodiments fall within the scope of the present invention: The authenticator of the present invention can operate for information, such as a document produced by a word processor, transmitted through a computer. In this embodiment, the computer may include the secure time generator (which may for example be externally plugged into the parallel port). The authenticator obtains the dispatch information from the transceiver, and the document is provided from the hard disk or word processing program. The authenticator encrypts the document and the dispatch information together and stores them in a file. When authentication is required, the authenticator retrieves the stored file, decrypts it and provides the document and the dispatch information associated therewith to a printer. Similarly, information transmitted in a computer network or electronic mail system can be authenticated, for example, by having a file server or mail manager (equipped with a secure time generator) store the transmitted information together with its associated dispatch information in a secure manner. One embodiment of secure storage is that which has read-only privileges. The present invention can be operated in conjunction with a message transmission forwarding service such as that provided by Graphnet Inc. of Teaneck, New Jersey, USA. The service obtains the information and address from the sender, typically by an electronic transmission, occasionally converts it (for example from ASCII text or word processor format into a transmissible document format) and forwards it to the requested address. The forwarding service serves as the authenticator and may for example provide the dispatch information associated with the transmitted information to the sender in a secure manner, such as in a sealed envelope. An efficient method for associating a plurality of electronic (digital) information elements is mathematical association. A digital information element can be represented as a number, for example as the element's standard binary, hexadecimal or other base representation. Using mathematical association, rather than maintaining the information elements (numbers) themselves, it is sufficient to maintain the results (also numbers) of one or more functions which are applied to one or more of these information elements. (These results are sometimes referred to as "message-digests", "hash-values" or "digital-signatures"). More formally, if A is a set of information elements, and F is the mathematical association function, then the set B of information elements is obtained as the result of applying the function F to the set A of information elements, i.e. B=F(A). Preferably, the function F is selected such that a fraudulent attempt to change the elements of the set A, or an attempt to claim that a set A' which comprises different elements is the original set, can be readily detected by comparing the result B' obtained by applying the function F to the set A', to the original result B, i.e. by checking if F(A')=F(A). Various function classes of various degrees of complexity can be used for mathematical association purposes in accordance with various embodiments of the present invention. Furthermore, the function F and/or the result B can be kept secret and unknown in general, and to interested parties such as the sender or the recipient in particular. However, even if the function F and/or the result B are known, the task of finding a meaningful different set A' such that B=F(A') is mostly very difficult even for relatively simple functions, not to mention for more complex ones. A special class of functions most suitable for the purposes of the present invention is the class of functions having the property that given the result B = F(A), , it is exceptionally difficult to find a second set A' such that applying the function F to the second set A' will yield the same result B. The term "exceptionally difficult" refers herein to the fact that although many different such sets A' may exist, it is so difficult to find even one of them (sometimes even to find the set A itself) that it is practically infeasible. In fact, the functions of this class "hide" the elements they are applied to, (and sometimes the elements even cannot be reconstructed) and therefore this class is referred to herein as "the Hiding Class". There are many advantages to using mathematical association in general, and functions of the Hiding Class in particular: (a) It is efficient, for example for saving storage space and transmission bandwidth, to maintain a function result, the size of which is normally very small compared to the information elements themselves which can be arbitrarily large. (b) It provides security, since the result is cryptic and there is no need to secure the information elements themselves. Furthermore, it is difficult, and sometimes infeasible to reconstruct the original elements. (c) It provides a clear indication as to the authenticity of the elements of the set A used by the function to generate the result B. At any later time, the result B' of applying the function F to a purported set A' can be compared to the original result B, and a match indicates beyond any reasonable doubt that set A' is same as the original set A. Moreover, integrity information such as the length of the information elements of the set A can be added and used as part of the set A, or the results of a plurality of functions can be maintained such that to make the task of finding such a different set A' infeasible. (d) The result B' provided for comparison must be equal to the original result B, since any change to A will yield a different result B' with very high probability, and even if by chance a different set A' is found for which F(A')=B , the chance that it will be meaningful or will have the same length is practically zero. (e) The function can be selected such that it is relatively easy and fast to compute the function result. Two well known and widely used functions of the Hiding class are encryption functions (e.g. the RSA algorithm) and Cyclic-Redundancy-Check (C.R.C.) functions (e.g. the C.R.C-32 function). While C.R.C functions are generally used in applications requiring verification as to the integrity of an arbitrarily long block of data, encryption is used to maintain the original data elements, though in different, cryptic representation. Encryption functions convert the information elements into one or more cryptic data blocks using one key, while enabling their reconstruction by providing another key. Other well known members of this class of functions in the prior art are compression functions (e.g. the Lempel-Ziv 1977 and 1978 algorithms) and one-way hash functions (e.g. the MD2, MD4, and MD5 algorithms). Description of the MD5 algorithm can be found in "One-Way Hash Functions," (B. Schneier, Dr. Dobb's Journal M&T Publishing Inc., September 1991 Vol 16 No.9 p148(4)) and in the Internet Request For Comments (RFC) document 1321. The MD4 algorithm is described in "The MD4 Message Digest Algorithm" (R. L. Rivest, Crypto '90 Abstracts , Aug. 1990, pp. 301-311, Springer-Verlag). Other publications relating to encryption, public-key cryptography and to cryptography and data security in general include: "Untangling Public-Key Cryptography" (B.Schneier, Dr. Dobb's Journal , M&T Publishing Inc., May 1992 Vol 17 No. 5 p16 (8)), " The Digital Signature Standard proposed by the National Institute of Standards and Technology" ( Communications of the ACM , ACM Inc., July 1992 Vol 35 No. 7 p36(5)), "SHA: the Secure Hash Algorithm", (Stallings, William, Dr. Dobb's Journal , M&T Publishing Inc., April 1994 v19 n4 p32 (2)), and "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems" (Rivest, R.L., A. Shamir, and L. Adelman, Communications of the ACM , ACM Inc., February 1978 Vol 21 No. 2 pp. 120-126). Description of the Lempel-Ziv 1977 compression algorithm can be found in "A Universal Algorithm for Sequential Data Compression" (Ziv. J., Lempel A., IEEE Transactions On Information Theory , Vol 23, No. 3, pp. 337-343). Description of C.R.C. algorithms can be found in "Cyclic Redundancy Checksums (Tutorial)" (Louis, B. Gregory, C Users Journal , R & D Publications Inc., Oct 1992 v10 n10 p55 (6)), and in "File verification using C.R.C." (Nelson, Mark R., Dr. Dobb's Journal , M&T Publishing Inc., May 1992 Vol 17 No. 5 p64(6)). The references and publications described by the above-mentioned articles are incorporated herein by reference. Occasionally, there is no need to maintain the original information elements, and therefore the use of encryption functions (which normally maintain the information - though in a cryptic representation) may be disadvantageous. C.R.C functions (and other functions of the Hiding Class), on the other hand, maintain a small sized result value, but the information elements from which the result has been produced cannot be reconstructed therefrom. It would be more advantageous, for example, to apply a C.R.C. function to the union of all the information elements, i.e. to a bit-string, where the leftmost bit is the leftmost bit of the first element, and the rightmost bit is the rightmost bit of the last element. This produces a cryptic and secure result, as described hereinabove. Furthermore, the C.R.C. function can be computed relatively quickly and easily. Generally and more formally, the result B is a set of one or more information elements b1,...,bm, where each element bi (which itself can comprise one or more information elements) is the result of applying a (possibly different) function Fi to a subset Si of a set A which comprises one or more information elements a1,...,an, where the various subsets Si are not necessarily disjoint or different, each subset Si includes at least a portion of one or more (or even all) of the electronic information elements of the set A, and where each function Fi can comprise one or more functions (i.e. Fi can be the composition of functions). Preferably, the functions Fi are members of the Hiding Class. The elements of such a subset Si are considered to be mathematically associated. Assuming that the set A comprises five information elements a1,a2,a3,a4,a5, a few examples of mathematical association function Fi and their result set B follow: (the UNION function is denoted as U(x1,...,xk), which is an information element comprising a bit-string, where the leftmost bit is the leftmost bit of the element x1, and the rightmost bit is the rightmost bit of the element xk.) (a) single element result set B b1=F1(S1)=F1(a1,a4,a5) = a1/(a4+a5+1) b1=F1(S1)=F1(a1,a3,a4) = ENCRYPT(U(a1,a3,a4)) b1=F1(S1)=F1(a1,a2,a3,a4,a5) = MD5(U(a1,a2,a3,a4,a5)) * C.R.C(a3) mod 5933333 b1=F1(S1)=F1(a1,a2,a3,a4,a5) = C.R.C(ENCRYPT(U(a1,a2)), COMPRESS(U(a2,a3,a4)), a1, a5) b1=F1(S1)=F1(a1,a2,a3,a4,a5) = U(a1,a2,a3,a4,a5) mod p (where p is a large Prime number) (b) multi-element result set B B = [C.R.C(U(a1,a3)), a2/(a1+1), ENCRYPT(a5)] b1=F1(S1)=F1(a1,a3) = C.R.C(a1,a3) b2=F2(S2)=F2(a1,a2) = a2/(a1+1) b3=F3(S3)=F3(a5) = ENCRYPT(a5) The elements of two or more (not necessarily disjoint) subsets of set A can be associated with each other by associating the elements of the result set B which correspond to these subsets, either mathematically, or by non-mathematical methods, as described hereinabove. Furthermore, if there is a subset of elements of set A to which no function has been applied, these elements may be associated with the elements of the result set B, again either mathematically or by non-mathematical methods. Moreover, the elements of two or more subsets of the set A can be associated with each other by associating the elements of each of these subsets with a common subset comprising one or more elements of the set A, where this common subset uniquely relates to the specific dispatch. This type of association is referred to herein as "indirect association", and the elements of this common subset are referred to herein as "link elements". A link element can be for example a unique dispatch number, or the subset comprising the time indication and a machine serial number, etc. For example, assuming that the element a2 of the above set A uniquely relates to the dispatch, the following function generates a multi-element result set B: B = [b1,b2,b3] = [ENCRYPT(a1, a2), COMPRESS(a2,a3,a4), a2+a5] where the subsets Si include the following elements: S1=[a1,a2] , S2=[a2,a3,a4] and S3=[a2,a5]. The elements of each subset are mathematically associated. Since all of these subsets include the common link-element a2, all their elements (in this case all the elements of the set A) are associated with each other. Reference is now made to Fig. 4 which is a block diagram that illustrates an authenticator 100, constructed and operative in accordance with a preferred embodiment of the present invention. The authenticator 100 comprises a secure time generator 104, a storage device 106 and a function executor 102 which has means for inputting the following information elements: the transmitted information, the destination address, a time indication generated by the secure time generator 104, and a dispatch completion indication. Optionally, additional information elements can be provided as well. The function executor 102 can be for example a Microchip Technology Inc.'s PIC16C5x series EPROM-based microcontroller, and the input means can be for example an I/O port, a serial, parallel or disk interface. The function executor 102 is capable of executing a function F on at least one, and preferably on the union of all of the input elements, and of generating a result information element which is provided to a storage device 106, and optionally to an output device 108, such as a printing device. Preferably, the function F is a member of the Hiding Class, and is kept unknown at least to any interested part, by the function executor 102. This can be achieved for example by enabling the code protection feature of the PIC16C5x series microcontroller. Also, preferably the storage device 106 is a WORM device, such as a PROM. Preferably, a different function is used for each device employing the function F. In accordance with one embodiment of the present invention, the authenticator further comprises a verification mechanism for verifying the authenticity of a set of information elements purported to be identical to the original set of information elements. It is however appreciated that the verification mechanism can be separated therefrom. Reference is now made to Fig. 5 which is a block diagram that illustrates a verification mechanism 120, constructed and operative in accordance with a preferred embodiment of the present invention, where at least part of the information elements were mathematically associated by the authenticator 100 of Fig. 4. The verification mechanism 120 includes a function executor 122 for generating a new result information element according to the same function employed by the function executor 102 of Fig. 4. The function executor 122 has means for inputting information elements corresponding to the original information elements input to the function executor 102 of Fig. 4., and which are purported to be identical to those original elements. The verification mechanism 120 also comprises a comparator 124, which has input means for inputting the newly generated result information element and the original result information element which may be obtained from the storage device 106 of Fig. 4, or manually, for example through a keyboard. The comparator 124 then compares the two provided result information elements to determine if they are the same, and the comparison result can be output for example to a display or printing unit. A match indicates that the purported information elements are authentic. Reference is now made to Fig. 6 which is a block diagram that illustrates a verification mechanism 140, constructed and operative in accordance with a preferred embodiment of the present invention, where the information elements were associated non-mathematically, and are for example stored in storage unit 54 by the authenticator 70 of Fig. 2. The verification mechanism 140 comprises a comparator 144, which has input means for inputting at least one of the stored associated information elements from the storage unit 54 of Fig. 2. The comparator 124 also has input means for inputting the corresponding information elements purported to be identical to the stored elements. The comparator 124 then compares the corresponding information elements to determine if they are the same, and the comparison result can be output for example to a display or printing unit. A match of all the compared elements indicates that the purported information elements are authentic. It is appreciated that various embodiments of the present invention can include a combination of the verification mechanisms described hereinabove. Also, part of the securing methods which were described for Fig. 2 include for example encryption and compression - methods which formally relate to mathematical association functions such as ENCRYPT(a1,...,aj) and COMPRESS(a1,...,aj). Occasionally, there is a need for reconstructing some or all of the secured mathematically associated information elements, for example for providing them to an output unit or to the comparator of the verification mechanism. Since some compression and encryption functions (as some other functions) are reversible, they are typically used when reconstruction of the elements is needed. (A function G is considered reversible if there exists a function H such that H(G(x))=x, and the function H is called the inverse function of G). As discussed hereinabove, a mathematical association function can generally comprise a single function, or the composition of two or more functions. For example, the function ENCRYPT(a1,...,aj) comprises a single function - ENCRYPT, which is reversible, and its inverse function is DECRYPT. Another function COMPRESS(ENCRYPT(a1),C.R.C(a2,...,aj)) is the composition of three functions - COMPRESS, ENCRYPT and C.R.C, where the first two are reversible and their inverse function are DECOMPRESS (which yields the set comprising ENCRYPT(a1) and C.R.C(a2,...,aj)), and DECRYPT (which yields the element a1) respectively. The C.R.C function however, is not reversible. Formally, if a function Fi comprises one or more functions, some of which are reversible, a set C comprising one or more information elements c1,...,ck can be generated, where this set C is expressive as a function I applied to the result information element bi of the function Fi, where this function I comprises the inverse function of one or more of these reversible functions. While the present invention has been described with reference to a few specific embodiments, the description is illustrative of the invention and is not to be construed as limiting the invention.

Claims: Apparatus for authenticating that certain information has been sent by a sender via a dispatcher to a recipient, the apparatus comprising: means for providing a set A comprising a plurality of information elements a1,...,an, said information element al comprising the contents of said dispatched information, and said information elements a2,...,an comprising dispatch-related information and including at least the following elements: a2 - a time indication associated with said dispatch; and a3 - information describing the destination of said dispatch, and wherein at least one of said information elements is provided in a manner that is resistant or indicative of tamper attempts by said sender; means for associating said dispatch-related information with said element al by generating authentication-information comprising a representation of at least said elements a1, a2 and a3, said representation comprising a set of one or more elements, each comprising a representation of one or more elements of said set A; means for securing at least part of said authentication-information against undetected tamper attempts of at least said sender. Apparatus according to claim 1, wherein said element a2 comprises at least one element of the group comprising the date associated with said dispatch, and the time associated with said dispatch. Apparatus according to any of claims 1 or 2, wherein said dispatch-related information comprises at least one element of the group comprising the following elements: a completion indication associated with said dispatch, the number of pages dispatched, page number, an indication of identification associated with said sender, said dispatch duration, integrity information, an indication of dispatch identification associated with said dispatch, an indication of identification associated with said apparatus, a heading message, and a trailing message. Apparatus according to any of claims 1 to 3, wherein said dispatched information has a form selected from the group comprising the following forms: a paper document and electronic information. Apparatus according to any of claims 1 to 4, wherein the elements of said authentication-information and of said set A have a form selected from the group comprising the following forms: a paper document and electronic information, and where each of said elements can have different form. Apparatus according to any of claims 1 to 5, wherein the information originally provided by said sender for dispatch has a form selected from a group comprising the following forms: a paper document and electronic information. Apparatus according to any of claims 1 to 6, wherein said element al is provided by means comprising at least one of the following means: a communication network, a scanning device, a copier, a dispatcher, and a computer. Apparatus according to any of claims 1 to 7, wherein said dispatcher comprises at least one element of the following group: a facsimile machine, a modem, a network interface card (NIC), a computer, a communication line, a communication network, an E-Mail system, an EDI system, and a dispatching service. Apparatus according to claim 8, wherein said dispatching service comprises at least one element of the following group: a courier service, the registered mail service of the post office, and a message transmission forwarding service. Apparatus according to any of claims 1 to 9, comprising means for providing said dispatched information to said dispatcher. Apparatus according to any of claims 1 to 10, and comprising at least part of said dispatcher. Apparatus according to any of claims 1 to 11, comprising means for preparing at least one element of the group comprising the elements of said set A, and said dispatched information. Apparatus according to any of claims 1 to 12, wherein said element a3 comprises at least one element of the group comprising an address associated with said dispatch, an address associated with said recipient, and an indication of identification associated with said recipient. Apparatus according to any of claims 1 to 13, wherein at least part of said apparatus is resistant or indicative of tamper attempts by at least said sender. Apparatus according to any of claims 1 to 14, comprising means for providing at least part of said authentication-information to an interested party. Apparatus according to claim 15, wherein said interested party comprises at least one element of the following group: said sender, said recipient, an arbitrator, and a legal authority. Apparatus according to any of claims 1 to 16, comprising means for storing at least part of said authentication-information. Apparatus according to any of claims 1 to 17, comprising means for generating a new set B, said set B comprising one or more information elements b1,...,bm, each element bi comprising a representation of a subset Si, said representation being expressive as a function Fi of the elements of said subset Si, where said subset Si comprises a digital representation of at least one element of said set A, and where said functions Fi can be different. Apparatus according to claim 18, wherein at least one element of said authentication-information comprise a representation of at least part of said new set B. Apparatus according to any of claims 1 to 19, wherein said set A comprises a link information element, and wherein said authentication-information comprise at least one element which comprise a representation of at least said link element. Apparatus according to any of claims 18 to 20, wherein said function Fi has the property that it is substantially difficult to find a set S' comprising at least one information element, said set S' being different from said subset Si and yet can be used instead, such that applying said function Fi to said set S' will yield said element bi, i.e., such that Fi(S')=bi. Apparatus according to any of claims 18 to 21, wherein said function Fi comprises at least one reversible function, comprising means for generating a set C which comprise one or more information elements c1,...,ck, where said set C is expressive as a function I of at least part of said information element bi, and said function I comprising the inverse function of at least one of said reversible functions. Apparatus according to any of claims 18 to 22, wherein said function Fi comprises one or more functions. Apparatus according to any of claims 18 to 23, wherein at least one member of the group comprises the following members: said function Fi, and at least one information element of said new set B, is unknown at least to said sender. Apparatus according to any of claims 1 to 24, comprising means for verifying the authenticity of an information element purported to match a corresponding element of said set A, said verification means comprising: means for comparing a representation of said purported information element with a representation of at least part of said authentication-information which comprise a representation of at least said corresponding element of said set A to determine if they match. Apparatus according to any of claims 18 to 25, comprising means for verifying the authenticity of a set Si' comprising one or more information elements which are purported to match the corresponding elements of said subset Si, said verification means comprising: means for generating a new information element bi' comprising a representation of said set Si' which is expressive as said function Fi of the elements of said set Si'; and means for comparing a representation of said element bi' with a representation of said element bi to determine if they match. A method for authenticating that certain information has been sent by a sender via a dispatcher to a recipient, comprising the steps of: providing a set A comprising a plurality of information elements a1,...,an, said information element a1 comprising the contents of said dispatched information, and said information elements a2,...,an comprising dispatch-related information and including at least the following elements: a2 - a time indication associated with said dispatch; and a3 - information describing the destination of said dispatch, and wherein at least one of said information elements is provided in a manner that is resistant or indicative of tamper attempts by said sender; associating said dispatch-related information with said element a1 by generating authentication-information comprising a representation of at least said elements a1, a2 and a3, said representation comprising a set of one or more elements, each comprising a representation of one or more elements of said set A; securing at least part of said authentication-information against undetected tamper attempts of at least said sender. A method according to claim 27, wherein at least part of the activities described by said steps is performed by an authenticator, said authenticator comprising at least one element of the following group: a party other than said sender, said dispatcher, a device, and any combination thereof. A method according to any of claims 27 or 28, wherein said dispatch-related information comprises at least one element of the group comprising the following elements: a completion indication associated with said dispatch, the number of pages dispatched, page number, an indication of identification associated with said sender, said dispatch duration, integrity information, an indication of dispatch identification associated with said dispatch, an indication of identification associated with said authenticator, a heading message, and a trailing message. A method according to any of claims 27 to 29, wherein said dispatched information has a form selected from the group comprising the following forms: a paper document and electronic information. A method according to any of claims 27 to 30, wherein the elements of said authentication-information and of said set A have a form selected from the group comprising the following forms: a paper document and electronic information, and where each of said elements can have different form. A method according to any of claims 27 to 31, wherein the information originally provided by said sender for dispatch has a form selected from a group comprising the following forms: a paper document and electronic information. A method according to any of claims 27 to 32, wherein said element al is provided by means comprising at least one of the following means: a communication network, a scanning device, a copier, a dispatcher, and a computer. A method according to any of claims 27 to 33, wherein said dispatcher comprises at least one element of the following group: a facsimile machine, a modem, a network interface card (NIC), a computer, a communication line, a communication network, an E-Mail system, an EDI system, and a dispatching service. A method according to claim 34, wherein said dispatching service comprises at least one element of the following group: a courier service, the registered mail service of the post office, and a message transmission forwarding service. A method according to any of claims 27 to 35, comprising the step of providing said dispatched information to said dispatcher. A method according to any of claims 27 to 36, wherein said element a2 comprises at least one element of the group comprising the date associated with said dispatch, and the time associated with said dispatch. A method according to any of claims 27 to 37, comprising the step of preparing at least one element of the group comprising the elements of said set A, and said dispatched information. A method according to any of claims 27 to 38, wherein said element a3 comprises at least one element of the group comprising an address associated with said dispatch, an address associated with said recipient, and an indication of identification associated with said recipient. A method according to claim 27 to 39, comprising the step of dispatching said information to said recipient. A method according to any of claims 27 to 40, comprising the step of providing a representation of at least part of said authentication-information to an interested party. A method according to claim 41, wherein said interested party comprises at least one element of the following group: said sender, said recipient, an arbitrator, and a legal authority. A method according to any of claims 27 to 42, comprising the step of storing at least part of said authentication-information in a storage device. A method according to any of claims 28 to 43, wherein at least part of said device is resistant or indicative of tamper attempts by at least said sender. A method according to any of claims 27 to 44, comprising the step of generating a new set B, said set B comprising one or more information elements b1,...,bm, each element bi comprising a representation of a subset Si, said representation being expressive as a function Fi of the elements of said subset Si, where said subset Si comprises a digital representation of at least one element of said set A, and where said functions Fi can be different. A method according to claim 45, wherein at least one element of said authentication-information comprise a representation of at least part of said new set B. A method according to any of claims 27 to 46, wherein said set A comprise a link information element, and wherein said authentication-information comprises at least one element which comprise a representation of at least said link element. A method according to any of claims 45 to 47, wherein said function Fi has the property that it is substantially difficult to find a set S' comprising at least one information element, said set S' being different from said subset Si and yet can be used instead, such that applying said function Fi to said set S' will yield said element bi, i.e., such that Fi(S')=bi. A method according to any of claims 45 to 48, wherein said function Fi comprises at least one reversible function, comprising the step of generating a set C which comprise one or more information elements c1,...,ck, where said set C is expressive as a function I of at least part of said information element bi, and said function I comprising the inverse function of at least one of said reversible functions. A method according to any of claims 45 to 49, wherein said function Fi comprises one or more functions. A method according to any of claims 45 to 50, wherein at least one member of the group comprising the following members: said function Fi, and at least one information element of said new set B, is unknown at least to said sender. A method according to any of claims 27 to 51, comprising the step of verifying the authenticity of an information element purported to match a corresponding element of said set A, said verification step comprising the step of: comparing a representation of said purported information element with a representation of at least part of said authentication-information which comprises a representation of at least said corresponding element of said set A to determine if they match. A method according to any of claims 45 to 52, comprising the step of verifying the authenticity of a set Si' comprising one or more information elements which are purported to match the corresponding elements of said subset Si, said verification step comprising the steps of: generating a new information element bi' comprising a representation of said set Si' which is expressive as said function Fi of the elements of said set Si'; and comparing a representation of said element bi' with a representation of said element bi to determine if they match.

Inventors: FELDBAU MICHAEL, FELDBAU OFRA, FELDBAU, MICHAEL, FELDBAU, OFRA
Applicants: FELDBAU MICHAEL, FELDBAU OFRA, FELDBAU, MICHAEL, FELDBAU, OFRA
Application year: 1995
Main classification: H04L9
IPC codes: H04L9