Systems and method for secure delivery of files to authorized recipients

By asking the recipient of an encrypted received file to read aloud a check text, retrieved from a network server, that address, or URL, is encoded within the file name of the encrypted received file, the system of the invention automatically verifies the identity of the recipient, confirms that the file has been received by the intended recipient, and then decrypts the file. The utterances of text spoken by the recipient are processed by means of an automatic speech recognition component. The system determines whether the spoken text corresponds to the check text presented to the reader, in which case the system applies an automatic speaker recognition algorithm to determine whether the person reciting the check text has voice characteristics matching those of the intended recipient based on a previous enrollment of the intended recipient's voice to the system. When the system confirms the identity of the recipient, the decryption key is transmitted and the encrypted received file is automatically decrypted and displayed to the recipient. In a preferred embodiment, the system records and marks with a time-stamp the recipient's reciting of the voice check text, so that it can later be compared to the intended recipient's voice if the recipient repudiates reception.

FIELD OF THE INVENTION

The present invention relates generally to secure delivery of electronic documents and more specifically to a method and systems for verifying and confirming the reception of files by the intended recipient, employing automatic speech recognition and biometric voice speaker identification.

BACKGROUND OF THE INVENTION

E-mail allows persons (or even automatic robotics machines) to quickly and easily electronically send textual messages and other information such as, for example, a collection of pictures, sound recordings, and formatted documents to other e-mail users anywhere in the world. Anything that can be accessed as a file e.g., in hard disk folders or in network shared folders, can be included in an e-mail attachment. E-mail attachments can be images, documents, spread sheets, mp3 files, programs, and the likes. Once files are attached to an e-mail, the e-mail as well as the attached files can be transmitted over a communications network (e.g., the Internet) to other computer systems. A recipient user or other users accessing an attached file can detach the file to a local system storage for further processing.

A serious risk associated with the exchange of electronic information on open and unsecured networks, particularly on the Internet, is that an impostor could intercept an electronic communication, or access some of the information, such as an e-mail, and masquerade himself as the authorized recipient of said electronic communication.

It is often needed to deliver an electronic document to the intended recipient and then to make sure that the intended recipient, and not a different person, has indeed received the document. Likewise, it is often desirable to deliver an electronic document to the intended recipient and then to receive a confirmation that the intended recipient, after having received the document, has indeed opened and reviewed the content of the document.

Securing the delivery of documents to the intended recipients by verifying and confirming receipt of such delivered documents by the intended recipients may be needed, for example, in various legal or safety related applications. Furthermore, in such kind of applications, it is generally desirable that the recipient cannot easily repudiate receiving or viewing the document.

Previous approaches for securing the delivery to the intended and authorized recipients of electronic documents and files e.g., attached to e-mails, and obtaining receipt confirmations by the intended recipients, present some drawbacks. A first limitation is that generally the delivery confirmation can not positively demonstrate that the recipient actually has viewed, read or was otherwise made aware of the content of the received document. For example, according to the prior art methods based on providing a recipient private information, or digitally signing a confirmation message, the intended recipient may later repudiate the confirmation and assert that he or she did not send the confirmation. For example, the intended recipient may claim that the private information, such as a password, must have been compromised and was provided by another recipient. Also, an e-mail sender can receive an automatic confirmation that the e-mail has been successfully delivered to the recipient's e-mail server and that the e-mail has been opened, but there is not a verification and confirmation that the person who accesses and opens files attached to the e-mail is in fact the intended authorized recipient; moreover, there is not any confirmation about document opening i.e., if the recipient, being either the intended authorized recipient or another person, has in fact opened or read the files or documents attached by the sender to the delivered e-mail. In such a situation, the intended recipient may confirm that the e-mail has been received, but later deny that they actually were aware of the entire content of the e-mail and/or the content of the e-mail attached files.

While most of the modern e-mail systems enable to configure an e-mail to transmit a message to the sender confirming the reception and opening of the e-mail by the recipient (supposedly, by the intended recipient), there is no equivalent mechanism informing the sender that a file attached to an e-mail has been opened by the recipient. Moreover, there is no mechanism provided to assure and confirm to the sender of an e-mail that all files attached to the e-mail, even after being detached and saved for future processing, have been opened and accessed by the authorized intended recipient of said files.

As a consequence, there is a need for a method and systems enabling senders of electronic documents and files attached to e-mail to assure, verify and confirm in a non-repudiable manner the delivery of those documents and files to the intended recipients.

SUMMARY OF THE INVENTION

Thus, it is a broad object of the invention to remedy the shortcomings of the prior art as described here above.

It is another object of the invention to provide an improved method and systems for securing the delivery of electronic documents and files to the intended recipients.

It is also another object of the invention to provide an improved method and systems for securing the delivery of electronic documents and files to the intended recipients, adapted to verify the identity of the user requesting access to a file before enabling the user to access the content of the file.

It is a further object of the invention to provide an improved method and systems for securing the delivery of electronic documents and files to the intended recipients, adapted to provide the sender of a file a non-repudiable confirmation of the access to the content of the file by the intended recipient.

It is still a further object of the invention to provide an improved method and systems for securing the delivery of electronic documents and files to the intended recipients by using voiceprints.

The accomplishment of these and other related objects is achieved by a method for encoding a file to be transmitted in a computer network to an intended recipient, for authenticating the recipient and confirming the reception of said file by said intended recipient, using biometric voice identification, the method comprising the steps of,selecting an encryption key;associating a voice check ticket to said encryption key;determining the address of said voice check ticket comprising at least said encryption key;encrypting said file to be transmitted using said encryption key; and,associating said voice check ticket address with said file,

by a method for decoding a file encoded according to the previous method, said method comprising the steps of,extracting the address of a voice check ticket from said file and decoding said voice check ticket address;accessing a voice check text associated to said voice check ticket at said voice check ticket address;transmitting a reading of said voice check text;receiving a decryption key if the voiceprint of said reading matches the voiceprint associated to said voice check ticket; and,decrypting said file using said decryption key,

and by a method for authenticating the recipient of a file encoded according to the previous method, comprising the steps of,upon request from said recipient, transmitting the voice check text associated to the voice check ticket that address is received with said request;upon reception from said recipient of a text reading,extracting a voiceprint from said text reading;comparing said extracted voiceprint with the voiceprint associated to said recipient; and,if said extracted voiceprint corresponds to the voiceprint associated to said recipient, transmitting, to said recipient, the encryption key associated to said voice check ticket

Further advantages of the present invention will become apparent to the ones skilled in the art upon examination of the drawings and detailed description. It is intended that any additional advantages be incorporated herein.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

According to the invention, a method and systems for securing the access to an electronically transmitted file and for verifying and confirming that the intended recipient has received and opened the file, and not anybody else, is disclosed. The main principle consists in combining an encryption key with the recipient voiceprint so that the encrypted file received by a recipient can only be decrypted with the encryption key, the encryption key being transmitted to the recipient after he/she read a predetermined text if the voiceprint of this reading corresponds to the recipient voiceprint.

As it is generally known, most voice biometric solutions create a voice print of the user, a template of the person's unique voice characteristics created when the user enrolls with the system. All subsequent attempts to access the system require the user to speak, so that their live voice sample may be compared against the pre-recorded template. For example, a reference on this subject is U.S. Pat. No. 6,529,871, by Kanevsky, entitled “Apparatus and method for speaker verification/identification/classification employing non-acoustic and/or acoustic models and databases”.

FIG. 1depicts an example showing how a user can record the voice of another person to whom he/she wants to send a document according to the method of the invention. In this example, a portion of the phone conversation is recorded in a database of voice records. As shown, the user100having a phone105can call a user110having a phone115through standard Public Switched Telephone Network (PSTN)120. In such case, the user100is referred to as the sender and the user110is the recipient. During the call, the sender100can record a part of the conversation so as to determine later the voiceprint of the recipient110. In a preferred embodiment, the sender100stores a recipient voice record in a database of voice records. Still in a preferred embodiment, each recipient voice record comprises the name of the recipient, the identifier of the recipient voiceprint and a recording of recipient voice, as illustrated with reference125. The database of voice records can be stored locally in the sender's computer or handheld device130or in a remote server (not shown) accessible through a public network e.g., Internet, or a private network.

After having recorded a sample of the recipient's voice, the sender must determine the recipient's voiceprint. This can be done locally, on a generic server, or on a specific voice check server. For sake of illustration, determination of voiceprint and voiceprint storage is done on a specific voice check server, as depicted onFIG. 2. After the sender100has stored a sample of the recipient's voice as recipient voice record, the sample is transmitted, totally or partially, through a private or public network200e.g., Internet, to a specific voice check server205. Still in a preferred embodiment, the voice's sample is transmitted as an anonymous audio file. Voice check server205processes the voice sample, computes and stores the recipient's voiceprint, and assigns an identifier (ID) to the voiceprint. The voiceprint and the associated ID are locally stored in a voiceprint database210. The voiceprint ID is then transmitted to the sender's computer130where it is locally stored. For example, the voiceprint ID can be stored within the recipient voice record125as discussed above.

For encrypting a file to be sent, the sender100must first obtain a sample of recipient's voice and a voiceprint ID as disclosed above. Then, the sender preferably creates a voice check ticket. The sender can also ask to the voice check server or to a third party server for a voice check ticket. A voice check ticket mainly consists in a voiceprint ID, an encryption key and a voice check text. The encryption key associated to the voice check ticket is used by the sender to encrypt the file to be transmitted. The voice check ticket is then transmitted to the voice check server that transmits back the address or Universal Resource Locator (URL) of the vice check ticket i.e., the address from which the voice check ticket can be downloaded. The address or URL of the voice check ticket is encoded within the name of the encoded file to be transmitted.

FIG. 3illustrates how, according to the invention, the voice check ticket associated to an encrypted file to be sent is uploaded from the sender's computer130to the voice check server205. After the sender's computer has transmitted the voice check ticket to the voice check server, the voice check ticket is preferably stored in a voice check ticket database300of the voice check server205. As depicted, the voice check server205responds to the sender's computer130by transmitting the address or URL of the voice check ticket i.e., the address or URL from which the voice check ticket can be downloaded. The address or URL is preferably stored in a reserved field of the local copy of the voice check ticket in the sender's computer130.

FIG. 4shows an example of the application of the present invention in which a sender, Lewis Carroll, attaches, to an e-mail, an encrypted file linked to a voice check ticket stored in a voice check server. When the e-mail is received, the voice check ticket must be accessed by the recipient (Jane R. Friday) for verifying her identity, for confirming the reception of the file, and for decrypting the file. This figure also illustrates how the address or URL of Voice Check Ticket (e.g., hyperlink “http://www.voicecheck.com/tickets/R7KWW56T.vct”) can be encoded within the filename of the attached file using a specific lexicography. For example, a particular lexicography consists in replacing characters or group of characters valid in the lexicography of URLs, like “://”, and “/”, by characters valid in the lexicography of file names, like “;” and “,”, respectively. According to the invention, when the e-mail recipient clicks the icon of a file attachment linked to a voice check ticket, the filename of attached file is parsed and the URL of the voice check ticket is extracted and decoded from the same file name. Using the extracted URL, the hyperlink is triggered for accessing and performing on voice check server the voice identification and voice check ticket validation operations required for verifying the file reception by the intended recipient and for retrieving from voice check server the encryption key needed for decrypting the received file.

FIG. 5depicts an example of the voice check ticket processing when a recipient receives an encrypted file embedding an address or URL of a voice check ticket. When the voice check ticket is accessed by the recipient110in the voice check ticket database300of the voice check server205, the voice check text of the voice check ticket is extracted and transmitted from voice check server to the recipient's computer or handheld device400. Received voice check text is displayed, and the recipient110is prompted to read aloud this text for performing file reception confirmation and recipient identity verification. As discussed above, the recipient is prompted to read aloud a voice check text for verifying, by speech recognition and voice identification, that the recipient is the person allowed to open the file. When the recipient reads aloud the received voice check text, the utterances of the recipient110are preferably recorded on the recipient's computer400, and are transmitted to the voice check server205. Utterances received on voice check server205are decoded by speech recognition and compared with the voice check text component of the voice check ticket. Additionally, the voiceprint of the received utterances is computed and compared with the recorded voiceprint file corresponding to the same voiceprint ID. If the result of both checks is positive, the identity of the intended recipient is verified, and the encryption key is transmitted to the recipient's computer400for decrypting the file. By accessing and retrieving the voice check ticket stored on voice check server205, the sender100gets a non-repudiable confirmation of the reception of the file by the intended recipient110, or may be aware of unsuccessful attempts to open the file by non authorized recipients or impostors.

FIG. 6illustrates an example of the general algorithm for encrypting a document to be transmitted. Depending upon its implementation, the algorithm can be divided into several modules running on one or different computers or servers. According to the example ofFIG. 6, the algorithm is split up amongst three different parts, the sender's computer module600(or a network server accessible to the sender), a security server module605, and a voice check server module610. After having selected the name of the recipient to whom the document or file should be transmitted by typing the recipient name, selecting the name in a list or according to a similar known interface method (step615), the sender's computer module600determines whether or not a voiceprint of the selected recipient already exists (step620). For example, the sender's computer module600can host a table wherein recipient names are associated to recipient IDentifier (ID) so that such ID may be used to select a specific voiceprint in a voiceprint database stored in a voice check server. According to such example, checking if a recipient voiceprint exists consists in checking the presence of the recipient name in the table. If none voiceprint exists for the selected recipient, the sender's computer module600, receives a recipient recording via a network interface, a phone system, or any equivalent system (step625). The recipient recording is transmitted to the voice check server module610from which it receives the corresponding ID (step630). Voice check server module610extracts the voiceprint from the received recipient recording, determines an ID, and stores this voiceprint with the corresponding ID in a voiceprint database (step635). It should be noticed that alternatively, the recipient may transmit an audio recording of his/her voice directly to the voice check server module610.

If a voiceprint has been associated to the selected recipient, the sender's computer module600sends a request for an encryption key and a Voice Check Ticket (VCT) to the security server module605(step640). As mentioned above, the security server module605can be merged with the sender's computer module600so that the encryption key is generated in the sender's computer and the voice check ticket is also created by the sender's computer. The security server module605generates an encryption key (step645) to be used by a standard predetermined encryption algorithm, for example a public key algorithm such as RSA. The encryption key is received by the sender's computer module600(step650) that uses it to encrypt the file to be sent (step655). Additionally, the security server module605generates a voice check ticket (step660). As discussed above, each voice check ticket preferably comprises a voiceprint ID, an encryption key and a voice check text. Voiceprint ID is determined by the sender's computer module600according to the selected recipient while the encryption key and the voice check text are determined by the security server module605. The encryption keys are randomly generated according to standard key generation algorithm. Voice check texts can be generated in different ways. For example, a voice check text can be written by the sender such as a declarative confirmation of the reception of the encrypted file by the recipient. Voice check text can also be selected by the sender e.g., by copying a portion of the e-mail text to which the encrypted file is attached. Alternatively, the voice check text can be automatically generated by the voice check server module610e.g., by randomly selecting a text from a library of documents stored or accessed from said server.

The voice check ticket is then transmitted to the voice check server module610(step665) to be stored in a voice check ticket database (step670). The voice check server module610returns the address or URL of the stored voice check ticket to the security server module605(step675) that in turn, transmits the address or URL of the stored voice check ticket to the sender's computer module600(step665). The address or URL of the stored voice check ticket is then encoded within the name of the file to be transmitted (step680), in the sender's computer module600. The file is then ready to be transmitted since it is encoded and contains information allowing the intended recipient to decrypt it.

FIG. 7illustrates the main steps of the method, according to the invention, for confirming the reception of a file by the intended recipient, for verifying the identity of the recipient, and for delivering the encryption key to the authorized recipient. In the preferred embodiment, such algorithm comprises two different parts, a first one referred to as700being implemented within the recipient's computer or handheld device and a second one referred to as705being implemented within the voice check server. After having received a file encrypted according to the method of the invention such as the one described by reference toFIG. 6, for example as an attachment of an e-mail, the filename is parsed (step710) and the address or URL of the voice check ticket is extracted and decoded from the parsed filename (step715). The extraction and decoding of the address or URL from the parsed filename depends upon the lexicography used for the encoding step. An example of lexicography, coding and decoding is described herein below. Once the address or URL has been recovered, the voice check ticket is accessed (step720) so as to receive the voice check text contained in this voice check ticket (step725). The voice check text is displayed on the recipient computer display so that the recipient can read aloud the text. Recipient's reading is transmitted to the voice check server as an audio signal (step730), either analog or digital signal. The received audio signal is converted to text by the voice check server (step735) according to a standard speech recognition engine and a test is done to compare the converted text and the voice check text (step740). If the converted text is different than the voice check text, the recipient's request is rejected else, if the converted text is identical to the voice check text, the voiceprint of the received audio signal is computed (step745). This voiceprint is then compared with the one associated to the recipient identifier stored in the voiceprint database of the voice check server (step750). For example, the recipient identifier can be transmitted by the recipient itself with audio recording. If voiceprints are different, the recipient's request is rejected else, the voice check server transmits the encryption key to the recipient's computer or handheld device (step755) so that the received filed is decrypted by the recipient's computer (step760). In a particular embodiment of the invention, the voice check text of the voice check tickets is automatically modified to a different text by the voice check server so that, for each attempt to access the file, different voice check texts are transmitted to the recipient for identification. According to this embodiment, the voice check text is modified when the recipient has been identified and the decryption key has been sent to the recipient. Alternatively, in another embodiment of the invention, once the recipient has been identified and the decryption key has been sent by the first time to the recipient, the voice check ticket is automatically erased and discarded from the voice check server so that, once the file has been decrypted by the first time, further attempts to decrypt the same file would fail.

For encoding the address or URL within the name of the file to transmit, a specific lexicography is determined so as to avoid particular characters that may be forbidden by the file system, e.g., “\” with Microsoft Windows system (Windows is a Trademark of Microsoft Corporation), and/or to encode the addresses so as to reduce their sizes. Addresses to be encoded may be of any forms e.g., local addresses, addresses in private networks or Internet addresses, however, for sake of illustration, the examples given in the following description are based on URL type of addresses.

FIG. 8illustrates an example of the algorithm used to encode an address in a filename. As shown onFIG. 8a, a first step consists in getting the primary filename of the file (step800), i.e. the filename of the file, and the address or URL of the voice check ticket (step805). Then, the address is encoded (step810) and merged with the primary filename of the file, using particular separators (step815) before the file is renamed with the filename comprising the primary filename and the encoded address (step820).

FIG. 8bdepicts an example of the encoding algorithm referred to as step810onFIG. 8a. A variable i is set to zero (step825) and the ithcharacter is extracted from the address string (step830). A test is performed to determine whether the extracted character is valid or otherwise forbidden by filename syntax rules imposed by the file system of the user's device (step835). If the extracted character is a filename valid character, variable i is incremented by one (step850) and a test is performed to determine if variable i has reached its maximum value that is, if all characters of the address string have been processed (step855). If variable i has not reached its maximum value, the last four steps of the algorithm are repeated (steps830to850). Else, if variable i has reached its maximum value, the process is stopped. If the character extracted from the address string is forbidden by the filename syntax rules, a corresponding valid character, or group of characters, is selected in lexicography table845and this selected character, or group of characters, replaces the forbidden one (step840). Then variable i is incremented by one and the same test described before is performed to determine if variable i has reached its maximum value.

As an illustration of the algorithm described above, let us consider the case of a text file named “Biometric.txt”, that a user would like to send to someone else as an encrypted e-mail attachment, using to this purpose a lexicography table to encode the voice check ticket address string into the filename, wherein“://” is associated to “;”“/” is associated to “,”

To get the voice check ticket allowing the opening of the file, it is required to access the voice check ticket corresponding to this file. For sake of illustration one can consider that this voice check ticket can be downloaded from the following URL:

Before the sender of the document “Biometric.txt” sends or attaches the document, an option such as “encrypt file” can be selected to encrypt the file to generate a voice check ticket, and to obtain the address or URL of this voice check ticket.

The filename is modified according to the algorithm illustrated onFIG. 8. Firstly, by using the previous lexicography table, the address is encoded as follows:

Then, the encoded address is merged with the filename. In this example, the encoded address is enclosed in parenthesis that are used as separators. The encoded address is inserted in front of the extension dot of the primary filename as follows:

and the file is renamed using this modified filename.

It must be noticed that, for sake of illustration, this encoding algorithm is purposely very simple. A preferred one would consist in replacing a sequence of forbidden characters by a single one and in replacing sets of characters more compact codes e.g., replacing “http://” by “H!”.

Among the advantages of the invention, one should noticed that,a sender protects files sent to a recipient, assuring and getting confirmation that those files are opened only by the intended recipient;the sender of a file gets a non-repudiable confirmation of the reception of the file by the intended recipient, and gets informed of unsuccessful attempts to open the file by not authorized recipients or impostors; and,recording his or her own voice, any user can selectively protect any file for non-authorized access by other people.

Naturally, in order to satisfy local and specific requirements, a person skilled in the art may apply to the solution described above many modifications and alterations all of which, however, are included within the scope of protection of the invention as defined by the following claims.